|
@ -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) |
|
|
|
|
|
} |