Browse Source

Bugfix + some unit tests bc why not?

webui
Stian Aune 5 years ago
parent
commit
3089c6f8be
  1. 53
      models/group_test.go
  2. 25
      models/light_test.go
  3. 13
      models/user_test.go
  4. 7
      webui/src/Components/Misc/BrightnessSlider.jsx
  5. 7
      webui/src/Components/Misc/ColorPicker.jsx

53
models/group_test.go

@ -0,0 +1,53 @@
package models_test
import (
"git.aiterp.net/lucifer/lucifer/models"
"github.com/stretchr/testify/assert"
"testing"
)
func TestGroup_Permission_NotExisting(t *testing.T) {
group := models.Group{
ID: 1001,
Name: "Illuminati",
Permissions: []models.GroupPermission{},
}
perm := group.Permission(2001)
assert.Equal(t, 1001, perm.GroupID)
assert.Equal(t, 2001, perm.UserID)
assert.False(t, perm.Read)
assert.False(t, perm.Write)
assert.False(t, perm.Create)
assert.False(t, perm.Delete)
assert.False(t, perm.Manage)
}
func TestGroup_Permission_Existing(t *testing.T) {
group := models.Group{
ID: 1002,
Name: "The Not-So-Dark Side",
Permissions: []models.GroupPermission{
{
GroupID: 1002,
UserID: 2002,
Read: true,
Write: true,
Create: false,
Delete: false,
Manage: false,
},
},
}
perm := group.Permission(2002)
assert.Equal(t, 1002, perm.GroupID)
assert.Equal(t, 2002, perm.UserID)
assert.True(t, perm.Read)
assert.True(t, perm.Write)
assert.False(t, perm.Create)
assert.False(t, perm.Delete)
assert.False(t, perm.Manage)
}

25
models/light_test.go

@ -6,6 +6,31 @@ import (
"testing"
)
func TestLight_SetColor_LoppingOffHash(t *testing.T) {
light := models.Light{}
err := light.SetColor("#FFB34F")
assert.Nil(t, err)
assert.Equal(t, "FFB34F", light.Color)
}
func TestLight_SetColor_InvalidLength(t *testing.T) {
light := models.Light{}
err := light.SetColor("FFB34F32")
assert.NotNil(t, err)
}
func TestLight_SetColor_InvalidHex(t *testing.T) {
light := models.Light{}
err := light.SetColor("FFB34G")
assert.NotNil(t, err)
}
func TestLight_SetColorRGB(t *testing.T) {
light := models.Light{}

13
models/user_test.go

@ -1,6 +1,7 @@
package models_test
import (
"context"
"git.aiterp.net/lucifer/lucifer/models"
"github.com/stretchr/testify/assert"
"testing"
@ -40,3 +41,15 @@ func TestUser_CheckPassword_Correct(t *testing.T) {
assert.Nil(t, err)
}
func TestUserFromContext(t *testing.T) {
nilUser := models.UserFromContext(context.Background())
assert.Nil(t, nilUser)
user := &models.User{ID: 1001, Name: "Freddie"}
ctx := user.InContext(context.Background())
assert.Equal(t, user, models.UserFromContext(ctx))
}

7
webui/src/Components/Misc/BrightnessSlider.jsx

@ -23,7 +23,12 @@ function BrightnessSlider({brightness, onChange}) {
});
return () => {
document.getElementById(`brightness-picker-${random}`).innerHTML = "";
const elem = document.getElementById(`brightness-picker-${random}`);
if (elem === null) {
return;
}
elem.innerHTML = "";
};
}, [brightness]);

7
webui/src/Components/Misc/ColorPicker.jsx

@ -21,7 +21,12 @@ function ColorPicker({color, onChange}) {
});
return () => {
document.getElementById(`color-picker-${random}`).innerHTML = "";
const elem = document.getElementById(`color-picker-${random}`);
if (elem === null) {
return;
}
elem.innerHTML = "";
};
}, [color]);

Loading…
Cancel
Save