ATLAS Offline Software
Loading...
Searching...
No Matches
python.ConfigPropertySubstitution_unitTest.TestSubstituteValue Class Reference
Inheritance diagram for python.ConfigPropertySubstitution_unitTest.TestSubstituteValue:
Collaboration diagram for python.ConfigPropertySubstitution_unitTest.TestSubstituteValue:

Public Member Functions

 test_plain_string_match (self)
 test_plain_string_no_match (self)
 test_string_with_suffix (self)
 test_string_with_trailing_dot (self)
 test_anchored_boundary_left (self)
 test_anchored_inside_expression (self)
 test_anchored_inside_expression_with_trap (self)
 test_multiple_substitutions_applied_in_order (self)
 test_list_recurses (self)
 test_dict_recurses_on_keys_and_values (self)
 test_set_recurses (self)
 test_tuple_recurses (self)
 test_nested_dict_with_list (self)
 test_non_string_scalars_unchanged (self)
 test_empty_substitutions_is_identity (self)

Static Public Attributes

list SUBS = [('Jets_STEP3', 'Jets')]

Detailed Description

Pure tests of `substituteValue` — no configurables involved.

Definition at line 29 of file ConfigPropertySubstitution_unitTest.py.

Member Function Documentation

◆ test_anchored_boundary_left()

python.ConfigPropertySubstitution_unitTest.TestSubstituteValue.test_anchored_boundary_left ( self)

Definition at line 51 of file ConfigPropertySubstitution_unitTest.py.

51 def test_anchored_boundary_left (self) :
52 # The `My` prefix means the char before the match is an
53 # identifier char, so `_anchoredReplace` must NOT match.
54 self.assertEqual (substituteValue ('MyJets_STEP3', self.SUBS),
55 'MyJets_STEP3')
56

◆ test_anchored_inside_expression()

python.ConfigPropertySubstitution_unitTest.TestSubstituteValue.test_anchored_inside_expression ( self)

Definition at line 57 of file ConfigPropertySubstitution_unitTest.py.

57 def test_anchored_inside_expression (self) :
58 # Embedded in a larger expression; the spaces / operator chars
59 # are non-identifier boundaries, so all matches rewrite.
60 self.assertEqual (substituteValue ('Jets_STEP3.a && Jets_STEP3.b',
61 self.SUBS),
62 'Jets.a && Jets.b')
63

◆ test_anchored_inside_expression_with_trap()

python.ConfigPropertySubstitution_unitTest.TestSubstituteValue.test_anchored_inside_expression_with_trap ( self)

Definition at line 64 of file ConfigPropertySubstitution_unitTest.py.

64 def test_anchored_inside_expression_with_trap (self) :
65 # The `My`-prefixed term in the middle must survive.
66 self.assertEqual (substituteValue ('Jets_STEP3 && MyJets_STEP3',
67 self.SUBS),
68 'Jets && MyJets_STEP3')
69

◆ test_dict_recurses_on_keys_and_values()

python.ConfigPropertySubstitution_unitTest.TestSubstituteValue.test_dict_recurses_on_keys_and_values ( self)

Definition at line 82 of file ConfigPropertySubstitution_unitTest.py.

82 def test_dict_recurses_on_keys_and_values (self) :
83 result = substituteValue ({'Jets_STEP3': 'Jets_STEP3.flag',
84 'MyJets_STEP3': 'unrelated'},
85 self.SUBS)
86 self.assertEqual (result, {'Jets': 'Jets.flag',
87 'MyJets_STEP3': 'unrelated'})
88 self.assertIsInstance (result, dict)
89

◆ test_empty_substitutions_is_identity()

python.ConfigPropertySubstitution_unitTest.TestSubstituteValue.test_empty_substitutions_is_identity ( self)

Definition at line 113 of file ConfigPropertySubstitution_unitTest.py.

113 def test_empty_substitutions_is_identity (self) :
114 self.assertEqual (substituteValue ('Jets_STEP3', []), 'Jets_STEP3')
115 self.assertEqual (substituteValue (['Jets_STEP3'], []), ['Jets_STEP3'])
116
117

◆ test_list_recurses()

python.ConfigPropertySubstitution_unitTest.TestSubstituteValue.test_list_recurses ( self)

Definition at line 76 of file ConfigPropertySubstitution_unitTest.py.

76 def test_list_recurses (self) :
77 result = substituteValue (['Jets_STEP3', 'MyJets_STEP3', 'other'],
78 self.SUBS)
79 self.assertEqual (result, ['Jets', 'MyJets_STEP3', 'other'])
80 self.assertIsInstance (result, list)
81

◆ test_multiple_substitutions_applied_in_order()

python.ConfigPropertySubstitution_unitTest.TestSubstituteValue.test_multiple_substitutions_applied_in_order ( self)

Definition at line 70 of file ConfigPropertySubstitution_unitTest.py.

70 def test_multiple_substitutions_applied_in_order (self) :
71 subs = [('Jets_STEP3', 'Jets'), ('Electrons_STEP2', 'Electrons')]
72 self.assertEqual (substituteValue ('Jets_STEP3 && Electrons_STEP2',
73 subs),
74 'Jets && Electrons')
75

◆ test_nested_dict_with_list()

python.ConfigPropertySubstitution_unitTest.TestSubstituteValue.test_nested_dict_with_list ( self)

Definition at line 100 of file ConfigPropertySubstitution_unitTest.py.

100 def test_nested_dict_with_list (self) :
101 value = {'a': ['Jets_STEP3', 'MyJets_STEP3'],
102 'Jets_STEP3.b': {'c': 'Jets_STEP3'}}
103 self.assertEqual (substituteValue (value, self.SUBS),
104 {'a': ['Jets', 'MyJets_STEP3'],
105 'Jets.b': {'c': 'Jets'}})
106

◆ test_non_string_scalars_unchanged()

python.ConfigPropertySubstitution_unitTest.TestSubstituteValue.test_non_string_scalars_unchanged ( self)

Definition at line 107 of file ConfigPropertySubstitution_unitTest.py.

107 def test_non_string_scalars_unchanged (self) :
108 self.assertEqual (substituteValue (42, self.SUBS), 42)
109 self.assertEqual (substituteValue (3.14, self.SUBS), 3.14)
110 self.assertEqual (substituteValue (True, self.SUBS), True)
111 self.assertIsNone (substituteValue (None, self.SUBS))
112

◆ test_plain_string_match()

python.ConfigPropertySubstitution_unitTest.TestSubstituteValue.test_plain_string_match ( self)

Definition at line 34 of file ConfigPropertySubstitution_unitTest.py.

34 def test_plain_string_match (self) :
35 self.assertEqual (substituteValue ('Jets_STEP3', self.SUBS), 'Jets')
36

◆ test_plain_string_no_match()

python.ConfigPropertySubstitution_unitTest.TestSubstituteValue.test_plain_string_no_match ( self)

Definition at line 37 of file ConfigPropertySubstitution_unitTest.py.

37 def test_plain_string_no_match (self) :
38 self.assertEqual (substituteValue ('Electrons_STEP1', self.SUBS),
39 'Electrons_STEP1')
40

◆ test_set_recurses()

python.ConfigPropertySubstitution_unitTest.TestSubstituteValue.test_set_recurses ( self)

Definition at line 90 of file ConfigPropertySubstitution_unitTest.py.

90 def test_set_recurses (self) :
91 result = substituteValue ({'Jets_STEP3', 'MyJets_STEP3'}, self.SUBS)
92 self.assertEqual (result, {'Jets', 'MyJets_STEP3'})
93 self.assertIsInstance (result, set)
94

◆ test_string_with_suffix()

python.ConfigPropertySubstitution_unitTest.TestSubstituteValue.test_string_with_suffix ( self)

Definition at line 41 of file ConfigPropertySubstitution_unitTest.py.

41 def test_string_with_suffix (self) :
42 # `_%SYS%` follows the match — the leading boundary is still
43 # the start of the string, so this is a valid rewrite.
44 self.assertEqual (substituteValue ('Jets_STEP3_%SYS%', self.SUBS),
45 'Jets_%SYS%')
46

◆ test_string_with_trailing_dot()

python.ConfigPropertySubstitution_unitTest.TestSubstituteValue.test_string_with_trailing_dot ( self)

Definition at line 47 of file ConfigPropertySubstitution_unitTest.py.

47 def test_string_with_trailing_dot (self) :
48 self.assertEqual (substituteValue ('Jets_STEP3.flag', self.SUBS),
49 'Jets.flag')
50

◆ test_tuple_recurses()

python.ConfigPropertySubstitution_unitTest.TestSubstituteValue.test_tuple_recurses ( self)

Definition at line 95 of file ConfigPropertySubstitution_unitTest.py.

95 def test_tuple_recurses (self) :
96 result = substituteValue (('Jets_STEP3', 'MyJets_STEP3'), self.SUBS)
97 self.assertEqual (result, ('Jets', 'MyJets_STEP3'))
98 self.assertIsInstance (result, tuple)
99

Member Data Documentation

◆ SUBS

python.ConfigPropertySubstitution_unitTest.TestSubstituteValue.SUBS = [('Jets_STEP3', 'Jets')]
static

Definition at line 32 of file ConfigPropertySubstitution_unitTest.py.


The documentation for this class was generated from the following file: