Class: DaVinciPASTestKit::Generator::GroupGenerator

Inherits:
Object
  • Object
show all
Defined in:
lib/davinci_pas_test_kit/generator/group_generator.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(ig_metadata, use_case, groups, base_output_dir, system = 'server', first_generate = false) ⇒ GroupGenerator

Returns a new instance of GroupGenerator.



25
26
27
28
29
30
31
32
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 25

def initialize(, use_case, groups, base_output_dir, system = 'server', first_generate = false)
  self. = 
  self.use_case = use_case
  self.groups = groups
  self.base_output_dir = base_output_dir
  self.system = system
  self.first_generate = first_generate
end

Instance Attribute Details

#base_output_dirObject

Returns the value of attribute base_output_dir.



23
24
25
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 23

def base_output_dir
  @base_output_dir
end

#first_generateObject

Returns the value of attribute first_generate.



23
24
25
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 23

def first_generate
  @first_generate
end

#groupsObject

Returns the value of attribute groups.



23
24
25
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 23

def groups
  @groups
end

#ig_metadataObject

Returns the value of attribute ig_metadata.



23
24
25
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 23

def 
  @ig_metadata
end

#systemObject

Returns the value of attribute system.



23
24
25
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 23

def system
  @system
end

#use_caseObject

Returns the value of attribute use_case.



23
24
25
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 23

def use_case
  @use_case
end

Class Method Details

.generate(ig_metadata, base_output_dir) ⇒ Object



7
8
9
10
11
12
13
14
15
16
17
18
19
20
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 7

def generate(, base_output_dir)
  groups = .groups.select { |group| group.tests.present? }.reject do |group|
    group.profile_name.include?('Base')
  end
  # Server Test Groups
  ['approval', 'denial', 'pended', 'must_support'].each_with_index do |use_case, index|
    new(, use_case, groups, base_output_dir, 'server', index.zero?).generate
  end

  # Client Test Groups
  ['submit_must_support', 'inquiry_must_support'].each do |use_case|
    new(, use_case, groups, base_output_dir, 'client', false).generate
  end
end

Instance Method Details

#all_test_idsObject



105
106
107
108
109
110
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 105

def all_test_ids
  @all_test_ids = all_tests.map { |test| test[:id] }.reject do |id|
    id.include?('medication_request_must_support') || id.include?('service_request_must_support') ||
      id.include?('device_request_must_support') || id.include?('nutrition_order_must_support')
  end
end

#all_testsObject



101
102
103
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 101

def all_tests
  @all_tests ||= groups.flat_map(&:tests).compact
end

#alt_request_input_name(use_case, request_type) ⇒ Object



321
322
323
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 321

def alt_request_input_name(use_case, request_type)
  "#{use_case}_pa_#{request_type}_request_payload"
end

#alt_request_input_title(use_case, request_type) ⇒ Object



325
326
327
328
329
330
331
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 325

def alt_request_input_title(use_case, request_type)
  if use_case == 'must_support'
    "Additional PAS #{request_type.capitalize} Request Payloads"
  else
    "PAS #{request_type.capitalize} Request Payload for #{use_case.capitalize} Response"
  end
end

#alt_test_id(id, use_case) ⇒ Object



317
318
319
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 317

def alt_test_id(id, use_case)
  "#{id}_#{use_case}"
end

#approval_denial_test_file_listObject



245
246
247
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 245

def approval_denial_test_file_list
  common_test_file_list(approval_denial_test_ids) << claim_status_file_name
end

#approval_denial_test_idsObject



176
177
178
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 176

def approval_denial_test_ids
  submit_request_validation_test_ids + submit_operation_test_ids + submit_response_validation_test_ids
end

#base_metadata_file_nameObject



46
47
48
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 46

def 
  'metadata.yml'
end

#base_output_file_nameObject



42
43
44
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 42

def base_output_file_name
  "#{class_name.underscore}.rb"
end

#claim_status_file_nameObject



303
304
305
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 303

def claim_status_file_name
  "../../custom_groups/#{.ig_version}/claim_status/pas_claim_status_test"
end

#claim_status_test_idObject



299
300
301
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 299

def claim_status_test_id
  'prior_auth_claim_status'
end

#class_nameObject



50
51
52
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 50

def class_name
  "PAS#{system.capitalize}#{use_case.camelize}UseCaseGroup"
end

#client_inquiry_request_must_support_test_file_listObject



262
263
264
265
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 262

def client_inquiry_request_must_support_test_file_list
  common_test_file_list(client_inquiry_request_must_support_test_ids)
    .push(pas_client_must_support_test_file)
end

#client_inquiry_request_must_support_test_idsObject



153
154
155
156
157
158
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 153

def client_inquiry_request_must_support_test_ids
  @client_inquiry_request_must_support_test_ids ||= select_test_ids(
    ['inquiry_request', 'must_support_test'],
    ['server']
  ).unshift(pas_client_must_support_test_id)
end

#client_submit_request_must_support_test_file_listObject



257
258
259
260
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 257

def client_submit_request_must_support_test_file_list
  common_test_file_list(client_submit_request_must_support_test_ids)
    .push(pas_submit_must_support_requirement_test_file, pas_client_must_support_test_file)
end

#client_submit_request_must_support_test_idsObject



142
143
144
145
146
147
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 142

def client_submit_request_must_support_test_ids
  @client_submit_request_must_support_test_ids ||= select_test_ids(
    ['submit_request', 'must_support_test'],
    ['server']
  ).unshift(pas_client_must_support_test_id, pas_submit_must_support_requirement_test_id)
end

#common_test_file_list(test_ids) ⇒ Object



229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 229

def common_test_file_list(test_ids)
  test_ids.map do |id|
    test = all_tests.find { |t| t[:id] == id }
    next unless test

    group = groups.find { |grp| grp.tests.include?(test) }
    name_without_suffix = test[:file_name].delete_suffix('.rb')
    test_file = if name_without_suffix.start_with?('..')
                  name_without_suffix
                else
                  "#{profile_identifier(group)}/#{name_without_suffix}"
                end
    test_file
  end.compact
end

#descriptionObject



353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 353

def description
  case system
  when 'server'
    case use_case
    when 'approval'
      <<~DESCRIPTION
        Demonstrate the ability of the server to respond to a prior
        authorization request with an `approved` decision.
      DESCRIPTION
    when 'denial'
      <<~DESCRIPTION
        Demonstrate the ability of the server to respond to a prior
        authorization request with an `denied` decision.
      DESCRIPTION
    when 'pended'
      <<~DESCRIPTION
        Demonstrate a complete prior authorization workflow including a period
        during which the final decision is pending. This includes

        - Demonstrating the ability of the server to respond to a prior
          authorization request with an `pended` status.
        - Demonstrating the ability of the server to respond to a subsequent
          inquiry request with a final decision for the request
      DESCRIPTION
    else # must_support
      <<~DESCRIPTION
        Demonstrate the ability of the server to support all PAS-defined profiles
        and the must support elements defined in them. This includes

        - the ability to respond to prior authorization submission and inquiry
          requests that contain all PAS-defined profiles and their must support
          elements.
        - the ability to include in those responses all PAS-defined profiles
          and their must support elements.

        In order to allow Inferno to observe and validate these criteria, testers
        are required to provide a set of `$submit` and `$inquire` requests that
        collectively both themselves contain and elicit server responses that contain
        all PAS-defined profiles and their must support elements.
      DESCRIPTION
    end
  when 'client'
    if use_case.include?('submit')
      <<~DESCRIPTION
        Check that the client can demonstrate `$submit` requests that contain
        all PAS-defined profiles and their must support elements.

        For `$submit` requests, this includes the following profiles:

        - [PAS Request Bundle](https://hl7.org/fhir/us/davinci-pas/STU2/StructureDefinition-profile-pas-request-bundle.html)
        - [PAS Claim Update](https://hl7.org/fhir/us/davinci-pas/STU2/StructureDefinition-profile-claim-update.html)
        - [PAS Coverage](https://hl7.org/fhir/us/davinci-pas/STU2/StructureDefinition-profile-coverage.html)
        - [PAS Beneficiary Patient](https://hl7.org/fhir/us/davinci-pas/STU2/StructureDefinition-profile-beneficiary.html)
        - [PAS Subscriber Patient](https://hl7.org/fhir/us/davinci-pas/STU2/StructureDefinition-profile-subscriber.html)
        - [PAS Insurer Organization](https://hl7.org/fhir/us/davinci-pas/STU2/StructureDefinition-profile-insurer.html)
        - [PAS Requestor Organization](https://hl7.org/fhir/us/davinci-pas/STU2/StructureDefinition-profile-requestor.html)
        - [PAS Practitioner](https://hl7.org/fhir/us/davinci-pas/STU2/StructureDefinition-profile-practitioner.html)
        - [PAS PractitionerRole](https://hl7.org/fhir/us/davinci-pas/STU2/StructureDefinition-profile-practitionerrole.html)
        - [PAS Encounter](https://hl7.org/fhir/us/davinci-pas/STU2/StructureDefinition-profile-encounter.html)
        - At least one of the following request profiles
          - [PAS Device Request](https://hl7.org/fhir/us/davinci-pas/STU2/StructureDefinition-profile-devicerequest.html)
          - [PAS Medication Request](https://hl7.org/fhir/us/davinci-pas/STU2/StructureDefinition-profile-medicationrequest.html)
          - [PAS Nutrition Order](https://hl7.org/fhir/us/davinci-pas/STU2/StructureDefinition-profile-nutritionorder.html)
          - [PAS Service Request](https://hl7.org/fhir/us/davinci-pas/STU2/StructureDefinition-profile-servicerequest.html)
      DESCRIPTION
    else # inquire
      <<~DESCRIPTION
        Check that the client can demonstrate `$inquire` requests that contain
        all PAS-defined profiles and their must support elements.

        For `$inquire` requests, this includes the following profiles:

        - [PAS Inquiry Request Bundle](https://hl7.org/fhir/us/davinci-pas/STU2/StructureDefinition-profile-pas-inquiry-request-bundle.html)
        - [PAS Claim Inquiry](https://hl7.org/fhir/us/davinci-pas/STU2/StructureDefinition-profile-claim-inquiry.html)
        - [PAS Coverage](https://hl7.org/fhir/us/davinci-pas/STU2/StructureDefinition-profile-coverage.html)
        - [PAS Beneficiary Patient](https://hl7.org/fhir/us/davinci-pas/STU2/StructureDefinition-profile-beneficiary.html)
        - [PAS Subscriber Patient](https://hl7.org/fhir/us/davinci-pas/STU2/StructureDefinition-profile-subscriber.html)
        - [PAS Insurer Organization](https://hl7.org/fhir/us/davinci-pas/STU2/StructureDefinition-profile-insurer.html)
        - [PAS Requestor Organization](https://hl7.org/fhir/us/davinci-pas/STU2/StructureDefinition-profile-requestor.html)
        - [PAS Practitioner](https://hl7.org/fhir/us/davinci-pas/STU2/StructureDefinition-profile-practitioner.html)
        - [PAS PractitionerRole](https://hl7.org/fhir/us/davinci-pas/STU2/StructureDefinition-profile-practitionerrole.html)
      DESCRIPTION
    end
  end
end

#generateObject



91
92
93
94
95
96
97
98
99
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 91

def generate
  File.write(output_file_name, output)
  .add_use_case_groups(group_id, base_output_file_name)
  return unless first_generate

  groups.each do ||
    File.write((), YAML.dump(.to_hash))
  end
end

#group_idObject



87
88
89
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 87

def group_id
  "pas_#{system}_#{groups.first.reformatted_version}_#{use_case}_use_case"
end

#grouped_approval_denial_test_idsObject



180
181
182
183
184
185
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 180

def grouped_approval_denial_test_ids
  {
    'PAS Submit Operation' => approval_denial_test_ids,
    'PAS Status Check' => [claim_status_test_id]
  }
end

#grouped_must_support_test_idsObject



208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 208

def grouped_must_support_test_ids
  submit_tests = submit_request_validation_test_ids +
                 submit_operation_test_ids +
                 submit_response_validation_test_ids
  inquiry_operation = inquiry_request_validation_test_ids +
                      inquiry_operation_test_ids +
                      inquiry_response_validation_test_ids
  {
    '$submit Element Support' => {
      'PAS Submit Operation' => submit_tests,
      '[USER INPUT VALIDATION] Submit Request Must Support' => submit_request_must_support_test_ids,
      'Submit Response Must Support' => submit_response_must_support_test_ids
    },
    '$inquire Element Support' => {
      'PAS Inquiry Operation' => inquiry_operation,
      '[USER INPUT VALIDATION] Inquiry Request Must Support' => inquiry_request_must_support_test_ids,
      'Inquiry Response Must Support' => inquiry_response_must_support_test_ids
    }
  }
end

#grouped_pended_test_idsObject



192
193
194
195
196
197
198
199
200
201
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 192

def grouped_pended_test_ids
  inquiry_operation = inquiry_request_validation_test_ids +
                      inquiry_operation_test_ids +
                      inquiry_response_validation_test_ids
  inquiry_tests = {
    'PAS Inquiry Operation' => inquiry_operation
  }

  grouped_approval_denial_test_ids.merge(inquiry_tests)
end

#inquiry_operation_test_idsObject



172
173
174
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 172

def inquiry_operation_test_ids
  @inquiry_operation_test_ids ||= select_test_ids(['operation_test', 'inquiry'])
end

#inquiry_request_must_support_test_idsObject



149
150
151
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 149

def inquiry_request_must_support_test_ids
  @inquiry_request_must_support_test_ids ||= select_test_ids(['inquiry_request', 'must_support_test'], ['client'])
end

#inquiry_request_validation_test_idsObject



124
125
126
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 124

def inquiry_request_validation_test_ids
  @inquiry_request_validation_test_ids ||= select_test_ids(['request', 'validation_test', 'inquiry'], ['client'])
end

#inquiry_response_must_support_test_idsObject



164
165
166
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 164

def inquiry_response_must_support_test_ids
  @inquiry_response_must_support_test_ids ||= select_test_ids(['inquiry_response', 'must_support_test'])
end

#inquiry_response_validation_test_idsObject



132
133
134
135
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 132

def inquiry_response_validation_test_ids
  @inquiry_response_validation_test_ids ||= select_test_ids(['response', 'validation_test', 'inquiry'],
                                                            ['client'])
end

#metadata_file_name(group) ⇒ Object



79
80
81
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 79

def (group)
  File.join(base_output_dir, profile_identifier(group), )
end

#module_nameObject



54
55
56
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 54

def module_name
  "DaVinciPAS#{groups.first.reformatted_version.upcase}"
end

#must_support_rename_input?(test_id) ⇒ Boolean

Returns:

  • (Boolean)


312
313
314
315
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 312

def must_support_rename_input?(test_id)
  (test_id.include?('request') && test_id.include?('validation')) ||
    test_id.include?('operation_test')
end

#must_support_test_file_listObject



253
254
255
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 253

def must_support_test_file_list
  common_test_file_list(must_support_test_ids).push(pas_submit_must_support_requirement_test_file)
end

#must_support_test_idsObject



203
204
205
206
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 203

def must_support_test_ids
  pended_test_ids + submit_request_must_support_test_ids + submit_response_must_support_test_ids +
    inquiry_request_must_support_test_ids + inquiry_response_must_support_test_ids
end

#outputObject



38
39
40
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 38

def output
  @output ||= ERB.new(template).result(binding)
end

#output_file_nameObject



75
76
77
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 75

def output_file_name
  File.join(base_output_dir, base_output_file_name)
end

#pas_client_must_support_test_fileObject



348
349
350
351
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 348

def pas_client_must_support_test_file
  request_type = use_case.include?('submit') ? 'submit' : 'inquire'
  "../../custom_groups/#{.ig_version}/client_tests/pas_client_#{request_type}_must_support_test"
end

#pas_client_must_support_test_idObject

Client tests initiation for must support: tests to allow the client to send $submit/$inquire requests in addition to any already sent in previous test groups for Inferno to evaluate coverage of must support elements.



343
344
345
346
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 343

def pas_client_must_support_test_id
  request_type = use_case.include?('submit') ? 'submit' : 'inquire'
  "pas_client_#{request_type}_#{.reformatted_version}_must_support_test"
end

#pas_submit_must_support_requirement_test_fileObject



337
338
339
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 337

def pas_submit_must_support_requirement_test_file
  "../../custom_groups/#{.ig_version}/must_support/pas_#{system}_must_support_requirement_test"
end

#pas_submit_must_support_requirement_test_idObject



333
334
335
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 333

def pas_submit_must_support_requirement_test_id
  "pas_#{system}_submit_#{.reformatted_version}_must_support_requirement"
end

#pended_test_file_listObject



249
250
251
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 249

def pended_test_file_list
  common_test_file_list(pended_test_ids) << claim_status_file_name
end

#pended_test_idsObject



187
188
189
190
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 187

def pended_test_ids
  approval_denial_test_ids + inquiry_request_validation_test_ids +
    inquiry_operation_test_ids + inquiry_response_validation_test_ids
end

#profile_identifier(group_metadata) ⇒ Object



83
84
85
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 83

def profile_identifier()
  Naming.snake_case_for_profile()
end

#rename_input?(test_id) ⇒ Boolean

Returns:

  • (Boolean)


307
308
309
310
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 307

def rename_input?(test_id)
  (test_id.include?('request') && test_id.include?('validation') && !test_id.include?('inquiry')) ||
    test_id.include?('operation_test')
end

#run_as_groupObject



69
70
71
72
73
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 69

def run_as_group
  return false if use_case.include?('must_support') && system == 'server'

  true
end

#select_test_ids(include_patterns, exclude_patterns = []) ⇒ Object



112
113
114
115
116
117
118
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 112

def select_test_ids(include_patterns, exclude_patterns = [])
  all_test_ids.select do |id|
    include_conditions = include_patterns.all? { |pattern| id.include?(pattern) }
    exclude_conditions = exclude_patterns.none? { |pattern| id.include?(pattern) }
    include_conditions && exclude_conditions
  end
end

#submit_operation_test_idsObject



168
169
170
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 168

def submit_operation_test_ids
  @submit_operation_test_ids ||= select_test_ids(['operation_test'], ['inquiry'])
end

#submit_request_must_support_test_idsObject



137
138
139
140
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 137

def submit_request_must_support_test_ids
  @submit_request_must_support_test_ids ||= select_test_ids(['submit_request', 'must_support_test'], ['client'])
    .unshift(pas_submit_must_support_requirement_test_id)
end

#submit_request_validation_test_idsObject



120
121
122
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 120

def submit_request_validation_test_ids
  @submit_request_validation_test_ids ||= select_test_ids(['request', 'validation_test'], ['inquiry', 'client'])
end

#submit_response_must_support_test_idsObject



160
161
162
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 160

def submit_response_must_support_test_ids
  @submit_response_must_support_test_ids ||= select_test_ids(['submit_response', 'must_support_test'])
end

#submit_response_validation_test_idsObject



128
129
130
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 128

def submit_response_validation_test_ids
  @submit_response_validation_test_ids ||= select_test_ids(['response', 'validation_test'], ['inquiry', 'client'])
end

#templateObject



34
35
36
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 34

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

#test_file_listObject



283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 283

def test_file_list
  @test_file_list ||= if system == 'client'
                        if use_case == 'submit_must_support'
                          client_submit_request_must_support_test_file_list
                        else
                          client_inquiry_request_must_support_test_file_list
                        end
                      elsif use_case == 'approval' || use_case == 'denial'
                        approval_denial_test_file_list
                      elsif use_case == 'pended'
                        pended_test_file_list
                      else
                        must_support_test_file_list
                      end
end

#test_id_listObject



267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 267

def test_id_list
  @test_id_list ||= if system == 'client'
                      if use_case == 'submit_must_support'
                        client_submit_request_must_support_test_ids
                      else
                        client_inquiry_request_must_support_test_ids
                      end
                    elsif use_case == 'approval' || use_case == 'denial'
                      grouped_approval_denial_test_ids
                    elsif use_case == 'pended'
                      grouped_pended_test_ids
                    else
                      grouped_must_support_test_ids
                    end
end

#titleObject



58
59
60
61
62
63
64
65
66
67
# File 'lib/davinci_pas_test_kit/generator/group_generator.rb', line 58

def title
  if use_case.include?('must_support')
    return 'Submit Request Must Support' if system == 'client' && use_case.include?('submit')
    return 'Inquiry Request Must Support' if system == 'client'

    'Demonstrate Element Support'
  else
    "Successful #{use_case.capitalize} Workflow"
  end
end