/
rbac.go
53 lines (43 loc) · 1.38 KB
/
rbac.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
package mock
import (
"github.com/labstack/echo"
gorsk "github.com/soldevx/androbk"
)
// RBAC Mock
type RBAC struct {
UserFn func(echo.Context) gorsk.AuthUser
EnforceRoleFn func(echo.Context, gorsk.AccessRole) error
EnforceUserFn func(echo.Context, int) error
EnforceCompanyFn func(echo.Context, int) error
EnforceLocationFn func(echo.Context, int) error
AccountCreateFn func(echo.Context, gorsk.AccessRole, int, int) error
IsLowerRoleFn func(echo.Context, gorsk.AccessRole) error
}
// User mock
func (a RBAC) User(c echo.Context) gorsk.AuthUser {
return a.UserFn(c)
}
// EnforceRole mock
func (a RBAC) EnforceRole(c echo.Context, role gorsk.AccessRole) error {
return a.EnforceRoleFn(c, role)
}
// EnforceUser mock
func (a RBAC) EnforceUser(c echo.Context, id int) error {
return a.EnforceUserFn(c, id)
}
// EnforceCompany mock
func (a RBAC) EnforceCompany(c echo.Context, id int) error {
return a.EnforceCompanyFn(c, id)
}
// EnforceLocation mock
func (a RBAC) EnforceLocation(c echo.Context, id int) error {
return a.EnforceLocationFn(c, id)
}
// AccountCreate mock
func (a RBAC) AccountCreate(c echo.Context, roleID gorsk.AccessRole, companyID, locationID int) error {
return a.AccountCreateFn(c, roleID, companyID, locationID)
}
// IsLowerRole mock
func (a RBAC) IsLowerRole(c echo.Context, role gorsk.AccessRole) error {
return a.IsLowerRoleFn(c, role)
}