Module: DaVinciDTRTestKit::ShortCircuitInteractionVerification

Constant Summary collapse

DEFAULT_SHORT_CIRCUIT_OK_MESSAGE =
'No Questionnaires need to be completed.'.freeze
DEFAULT_SHORT_CIRCUIT_BAD_MESSAGE =
'Failed to setup the Inferno DTR payer server simulation.'.freeze
SHORT_CIRCUIT_ADAPTIVE_MESSAGE =
'No adaptive Questionnaires returned for completion during this interaction.'.freeze

Instance Method Summary collapse

Instance Method Details

#check_for_adaptive_short_circuitObject



69
70
71
# File 'lib/davinci_dtr_test_kit/full_ehr/short_circuit_interaction_verification.rb', line 69

def check_for_adaptive_short_circuit
  pass SHORT_CIRCUIT_ADAPTIVE_MESSAGE if scratch[:short_circuit_adaptive].present?
end

#check_for_short_circuit(ok_message: '', bad_message: '') ⇒ Object



11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
# File 'lib/davinci_dtr_test_kit/full_ehr/short_circuit_interaction_verification.rb', line 11

def check_for_short_circuit(ok_message: '', bad_message: '')
  return unless scratch[:short_circuit].present?

  case scratch[:short_circuit]
  when :pass
    short_circuit_pass(message: ok_message)
  when :omit
    short_circuit_omit(message: ok_message)
  when :skip
    short_circuit_skip(message: bad_message)
  when :fail
    short_circuit_fail(message: bad_message)
  else
    raise Inferno::Exceptions::TestSuiteImplementationException.new(
      'ShortCircuitInteractionVerification',
      "invalid short circuit action: #{scratch[:short_circuit]}"
    )
  end
end

#clear_adaptive_short_circuit_flagObject

Short circuit specifically for adaptive forms



58
59
60
# File 'lib/davinci_dtr_test_kit/full_ehr/short_circuit_interaction_verification.rb', line 58

def clear_adaptive_short_circuit_flag
  scratch.delete(:short_circuit_adaptive)
end

#clear_short_circuit_flagObject



3
4
5
# File 'lib/davinci_dtr_test_kit/full_ehr/short_circuit_interaction_verification.rb', line 3

def clear_short_circuit_flag
  scratch.delete(:short_circuit)
end

#short_circuit_adaptive_validation_testsObject



62
63
64
# File 'lib/davinci_dtr_test_kit/full_ehr/short_circuit_interaction_verification.rb', line 62

def short_circuit_adaptive_validation_tests
  scratch[:short_circuit_adaptive] = :pass
end

#short_circuit_fail(message: '') ⇒ Object



50
51
52
53
# File 'lib/davinci_dtr_test_kit/full_ehr/short_circuit_interaction_verification.rb', line 50

def short_circuit_fail(message: '')
  message = DEFAULT_SHORT_CIRCUIT_BAD_MESSAGE unless message.present?
  assert false, message
end

#short_circuit_omit(message: '') ⇒ Object



38
39
40
41
# File 'lib/davinci_dtr_test_kit/full_ehr/short_circuit_interaction_verification.rb', line 38

def short_circuit_omit(message: '')
  message = DEFAULT_SHORT_CIRCUIT_OK_MESSAGE unless message.present?
  omit message
end

#short_circuit_pass(message: '') ⇒ Object



33
34
35
36
# File 'lib/davinci_dtr_test_kit/full_ehr/short_circuit_interaction_verification.rb', line 33

def short_circuit_pass(message: '')
  message = DEFAULT_SHORT_CIRCUIT_OK_MESSAGE unless message.present?
  pass message
end

#short_circuit_skip(message: '') ⇒ Object



45
46
47
48
# File 'lib/davinci_dtr_test_kit/full_ehr/short_circuit_interaction_verification.rb', line 45

def short_circuit_skip(message: '')
  message = DEFAULT_SHORT_CIRCUIT_BAD_MESSAGE unless message.present?
  skip message
end

#short_circuit_validation_tests(action) ⇒ Object



7
8
9
# File 'lib/davinci_dtr_test_kit/full_ehr/short_circuit_interaction_verification.rb', line 7

def short_circuit_validation_tests(action)
  scratch[:short_circuit] = action
end