github.com/resonatecoop/user-api@v1.0.0-13.0.20220915120639-05dc9c04014a/mock/rbac.go (about)

     1  package mock
     2  
     3  import (
     4  	"context"
     5  
     6  	"github.com/resonatecoop/user-api/model"
     7  )
     8  
     9  // RBAC Mock
    10  type RBAC struct {
    11  	EnforceRoleFn          func(context.Context, model.AccessRole) bool
    12  	EnforceUserFn          func(context.Context, int64) bool
    13  	EnforceTenantFn        func(context.Context, int32) bool
    14  	EnforceTenantAdminFn   func(context.Context, int32) bool
    15  	IsLowerRoleFn          func(context.Context, model.AccessRole) bool
    16  	EnforceTenantAndRoleFn func(context.Context, model.AccessRole, int32) bool
    17  }
    18  
    19  // EnforceRole mock
    20  func (a *RBAC) EnforceRole(c context.Context, role model.AccessRole) bool {
    21  	return a.EnforceRoleFn(c, role)
    22  }
    23  
    24  // EnforceUser mock
    25  func (a *RBAC) EnforceUser(c context.Context, id int64) bool {
    26  	return a.EnforceUserFn(c, id)
    27  }
    28  
    29  // EnforceTenant mock
    30  func (a *RBAC) EnforceTenant(c context.Context, id int32) bool {
    31  	return a.EnforceTenantFn(c, id)
    32  }
    33  
    34  // EnforceTenantAdmin mock
    35  func (a *RBAC) EnforceTenantAdmin(c context.Context, id int32) bool {
    36  	return a.EnforceTenantAdminFn(c, id)
    37  }
    38  
    39  // EnforceTenantAndRole mock
    40  func (a *RBAC) EnforceTenantAndRole(c context.Context, role model.AccessRole, id int32) bool {
    41  	return a.EnforceTenantAndRoleFn(c, role, id)
    42  }
    43  
    44  // IsLowerRole mock
    45  func (a *RBAC) IsLowerRole(c context.Context, role model.AccessRole) bool {
    46  	return a.IsLowerRoleFn(c, role)
    47  }