Class: USCoreTestKit::Client::Generator::AuthSMARTGroupGenerator

Inherits:
Object
  • Object
show all
Defined in:
lib/us_core_test_kit/client/generator/auth_smart_group_generator.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(ig_metadata, base_output_dir, client_type_abbreviation) ⇒ AuthSMARTGroupGenerator

Returns a new instance of AuthSMARTGroupGenerator.



15
16
17
18
19
# File 'lib/us_core_test_kit/client/generator/auth_smart_group_generator.rb', line 15

def initialize(, base_output_dir, client_type_abbreviation)
  self. = 
  self.base_output_dir = base_output_dir
  self.client_type_abbreviation = client_type_abbreviation
end

Instance Attribute Details

#base_output_dirObject

Returns the value of attribute base_output_dir.



13
14
15
# File 'lib/us_core_test_kit/client/generator/auth_smart_group_generator.rb', line 13

def base_output_dir
  @base_output_dir
end

#client_type_abbreviationObject

Returns the value of attribute client_type_abbreviation.



13
14
15
# File 'lib/us_core_test_kit/client/generator/auth_smart_group_generator.rb', line 13

def client_type_abbreviation
  @client_type_abbreviation
end

#ig_metadataObject

Returns the value of attribute ig_metadata.



13
14
15
# File 'lib/us_core_test_kit/client/generator/auth_smart_group_generator.rb', line 13

def 
  @ig_metadata
end

Class Method Details

.generate(ig_metadata, base_output_dir, client_type_abbreviation) ⇒ Object



8
9
10
# File 'lib/us_core_test_kit/client/generator/auth_smart_group_generator.rb', line 8

def generate(, base_output_dir, client_type_abbreviation)
  new(, base_output_dir, client_type_abbreviation).generate
end

Instance Method Details

#authentication_approachObject



29
30
31
32
33
34
35
36
37
38
# File 'lib/us_core_test_kit/client/generator/auth_smart_group_generator.rb', line 29

def authentication_approach
  case client_type_abbreviation
  when 'alca'
    'ConfidentialAsymmetric'
  when 'alcs'
    'ConfidentialSymmetric'
  when 'alp'
    'Public'
  end
end

#base_output_file_nameObject



44
45
46
# File 'lib/us_core_test_kit/client/generator/auth_smart_group_generator.rb', line 44

def base_output_file_name
  "auth_smart_#{client_type_abbreviation}_group.rb"
end

#generateObject



56
57
58
# File 'lib/us_core_test_kit/client/generator/auth_smart_group_generator.rb', line 56

def generate
  File.write(output_file_name, output)
end

#module_nameObject



48
49
50
# File 'lib/us_core_test_kit/client/generator/auth_smart_group_generator.rb', line 48

def module_name
  "USCoreClient#{.reformatted_version.upcase}"
end

#outputObject



25
26
27
# File 'lib/us_core_test_kit/client/generator/auth_smart_group_generator.rb', line 25

def output
  @output ||= ERB.new(template, trim_mode: '-').result(binding)
end

#output_file_nameObject



52
53
54
# File 'lib/us_core_test_kit/client/generator/auth_smart_group_generator.rb', line 52

def output_file_name
  File.join(base_output_dir, base_output_file_name)
end

#templateObject



21
22
23
# File 'lib/us_core_test_kit/client/generator/auth_smart_group_generator.rb', line 21

def template
  @template ||= File.read(File.join(__dir__, 'templates', 'auth_smart_group.rb.erb'))
end

#versionObject



40
41
42
# File 'lib/us_core_test_kit/client/generator/auth_smart_group_generator.rb', line 40

def version
  .reformatted_version.downcase
end