Class: Soar::Authorization::AccessManager::Test::OrchestrationProvider::Stub

Inherits:
Object
  • Object
show all
Defined in:
lib/soar/authorization/access_manager/test/orchestration_provider/stub.rb

Instance Method Summary collapse

Constructor Details

#initializeStub

Returns a new instance of Stub.



11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# File 'lib/soar/authorization/access_manager/test/orchestration_provider/stub.rb', line 11

def initialize
  @meta = {
    'service_identifier1' => {
      'policy' => 'policy1'
    }
  }
  @policies = {
    'policy1' => {
      'resource_identifier1' => ['authentication_identifier1'],
      'resource_identifier2' => []
    }
  }
  @request = {
    params: {},
    authentication_identifier: 'authentication_identifier1'
  }
end

Instance Method Details

#authorizedObject



54
55
56
# File 'lib/soar/authorization/access_manager/test/orchestration_provider/stub.rb', line 54

def authorized
  @response['data']['approved']
end

#authorized?Boolean

Returns:

  • (Boolean)


48
49
50
51
52
# File 'lib/soar/authorization/access_manager/test/orchestration_provider/stub.rb', line 48

def authorized?
  model_provider = Soar::Authorization::AccessManager::Provider::Stub.new(meta: @meta, policies: @policies)
  model = Soar::Authorization::AccessManager.new(model_provider)
  @response = model.authorized?(service_identifier: @service_identifier, resource_identifier: @resource_identifier, request: @request)
end

#deny_accessObject



34
35
36
37
# File 'lib/soar/authorization/access_manager/test/orchestration_provider/stub.rb', line 34

def deny_access
  @service_identifier = 'service_identifier1'
  @resource_identifier = 'resource_identifier2'
end

#grant_accessObject



29
30
31
32
# File 'lib/soar/authorization/access_manager/test/orchestration_provider/stub.rb', line 29

def grant_access
  @service_identifier = 'service_identifier1'
  @resource_identifier = 'resource_identifier1'
end

#no_policyObject



39
40
41
42
# File 'lib/soar/authorization/access_manager/test/orchestration_provider/stub.rb', line 39

def no_policy
  @service_identifier = 'service_identifier2'
  @resource_identifier = nil
end

#notificationObject



44
45
46
# File 'lib/soar/authorization/access_manager/test/orchestration_provider/stub.rb', line 44

def notification
  @response['data']['notifications']
end