baldertest 0.1.0b9__py3-none-any.whl → 0.1.0b10__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (36) hide show
  1. _balder/_version.py +1 -1
  2. _balder/balder_session.py +4 -2
  3. _balder/collector.py +115 -7
  4. _balder/console/balder.py +1 -1
  5. _balder/controllers/device_controller.py +1 -1
  6. _balder/controllers/normal_scenario_setup_controller.py +2 -2
  7. _balder/controllers/scenario_controller.py +91 -1
  8. _balder/decorator_fixture.py +4 -7
  9. _balder/decorator_for_vdevice.py +4 -6
  10. _balder/decorator_parametrize.py +31 -0
  11. _balder/decorator_parametrize_by_feature.py +36 -0
  12. _balder/exceptions.py +6 -0
  13. _balder/executor/basic_executable_executor.py +126 -0
  14. _balder/executor/basic_executor.py +1 -78
  15. _balder/executor/executor_tree.py +7 -5
  16. _balder/executor/parametrized_testcase_executor.py +52 -0
  17. _balder/executor/scenario_executor.py +5 -2
  18. _balder/executor/setup_executor.py +5 -2
  19. _balder/executor/testcase_executor.py +42 -9
  20. _balder/executor/unresolved_parametrized_testcase_executor.py +209 -0
  21. _balder/executor/variation_executor.py +26 -8
  22. _balder/fixture_definition_scope.py +19 -0
  23. _balder/fixture_execution_level.py +22 -0
  24. _balder/fixture_manager.py +169 -182
  25. _balder/fixture_metadata.py +26 -0
  26. _balder/parametrization.py +75 -0
  27. _balder/solver.py +51 -31
  28. balder/__init__.py +6 -0
  29. balder/exceptions.py +4 -3
  30. balder/parametrization.py +8 -0
  31. {baldertest-0.1.0b9.dist-info → baldertest-0.1.0b10.dist-info}/METADATA +1 -1
  32. {baldertest-0.1.0b9.dist-info → baldertest-0.1.0b10.dist-info}/RECORD +36 -26
  33. {baldertest-0.1.0b9.dist-info → baldertest-0.1.0b10.dist-info}/WHEEL +1 -1
  34. {baldertest-0.1.0b9.dist-info → baldertest-0.1.0b10.dist-info}/LICENSE +0 -0
  35. {baldertest-0.1.0b9.dist-info → baldertest-0.1.0b10.dist-info}/entry_points.txt +0 -0
  36. {baldertest-0.1.0b9.dist-info → baldertest-0.1.0b10.dist-info}/top_level.txt +0 -0
_balder/solver.py CHANGED
@@ -2,13 +2,14 @@ from __future__ import annotations
2
2
  from typing import List, Dict, Tuple, Type, Union, Callable, TYPE_CHECKING
3
3
 
4
4
  import itertools
5
- from _balder.utils import inspect_method
6
5
  from _balder.fixture_manager import FixtureManager
7
6
  from _balder.executor.executor_tree import ExecutorTree
8
7
  from _balder.executor.setup_executor import SetupExecutor
9
8
  from _balder.executor.scenario_executor import ScenarioExecutor
10
9
  from _balder.executor.testcase_executor import TestcaseExecutor
11
10
  from _balder.executor.variation_executor import VariationExecutor
11
+ from _balder.executor.parametrized_testcase_executor import ParametrizedTestcaseExecutor
12
+ from _balder.executor.unresolved_parametrized_testcase_executor import UnresolvedParametrizedTestcaseExecutor
12
13
  from _balder.previous_executor_mark import PreviousExecutorMark
13
14
  from _balder.controllers import ScenarioController, SetupController
14
15
 
@@ -27,7 +28,7 @@ class Solver:
27
28
  """
28
29
 
29
30
  def __init__(self, setups: List[Type[Setup]], scenarios: List[Type[Scenario]], connections: List[Type[Connection]],
30
- raw_fixtures: Dict[str, List[Callable]]):
31
+ fixture_manager: Union[FixtureManager, None]):
31
32
  #: contains all available setup classes
32
33
  self._all_existing_setups = setups
33
34
  #: contains all available scenario classes
@@ -40,8 +41,7 @@ class Solver:
40
41
  self._mapping: List[Tuple[Type[Setup], Type[Scenario], Dict[Type[Device], Type[Device]]]] = []
41
42
  self._resolving_was_executed = False
42
43
 
43
- self._raw_fixtures = raw_fixtures
44
- self._fixture_manager: Union[FixtureManager, None] = None
44
+ self._fixture_manager = fixture_manager
45
45
 
46
46
  # ---------------------------------- STATIC METHODS ----------------------------------------------------------------
47
47
 
@@ -117,22 +117,6 @@ class Solver:
117
117
 
118
118
  # ---------------------------------- METHODS -----------------------------------------------------------------------
119
119
 
120
- def get_fixture_manager(self) -> FixtureManager:
121
- """
122
- Resolves all fixtures and returns the fixture manager for this session
123
- :return: the fixture manager that is valid for this session
124
- """
125
- resolved_dict = {}
126
- for cur_level, cur_module_fixture_dict in self._raw_fixtures.items():
127
- resolved_dict[cur_level] = {}
128
- for cur_fn in cur_module_fixture_dict:
129
- cls, func_type = inspect_method(cur_fn)
130
- # mechanism also works for balderglob fixtures (`func_type` is 'function' and `cls` is None)
131
- if cls not in resolved_dict[cur_level].keys():
132
- resolved_dict[cur_level][cls] = []
133
- resolved_dict[cur_level][cls].append((func_type, cur_fn))
134
- return FixtureManager(resolved_dict)
135
-
136
120
  def get_initial_mapping(self) -> List[Tuple[Type[Setup], Type[Scenario], Dict[Device, Device]]]:
137
121
  """
138
122
  This method creates the initial amount of data for `self._mapping`. Only those elements are returned where the
@@ -163,13 +147,44 @@ class Solver:
163
147
  This method carries out the entire resolve process and saves the end result in the object property
164
148
  `self._mapping`.
165
149
  """
166
- self._fixture_manager = self.get_fixture_manager()
167
150
  # reset mapping list
168
151
  self._mapping = []
169
152
  initial_mapping = self.get_initial_mapping()
170
153
  self._mapping = initial_mapping
171
154
  self._resolving_was_executed = True
172
155
 
156
+ def get_static_parametrized_testcase_executor_for(
157
+ self,
158
+ variation_executor: VariationExecutor,
159
+ testcase: Callable
160
+ ) -> List[UnresolvedParametrizedTestcaseExecutor | ParametrizedTestcaseExecutor]:
161
+ """
162
+ returns a list of all testcase executors, with already resolved static parametrization -
163
+ :class:`UnresolvedParametrizedTest` will be returned for unresolved dynamic parametrization
164
+
165
+ :param variation_executor: the current variation executor
166
+ :param testcase: the current testcase
167
+ """
168
+
169
+ scenario_controller = variation_executor.parent_executor.base_scenario_controller
170
+ if scenario_controller.get_parametrization_for(testcase) is None:
171
+ raise ValueError(f'can not determine parametrization for test `{testcase.__qualname__}` because no '
172
+ f'parametrization exist')
173
+ static_parametrization = scenario_controller.get_parametrization_for(testcase, static=True, dynamic=False)
174
+ executor_typ = UnresolvedParametrizedTestcaseExecutor \
175
+ if scenario_controller.get_parametrization_for(testcase, static=False, dynamic=True) \
176
+ else ParametrizedTestcaseExecutor
177
+
178
+ if not static_parametrization:
179
+ return [executor_typ(testcase, parent=variation_executor)]
180
+
181
+ # generate product
182
+ result = []
183
+ for cur_product in itertools.product(*static_parametrization.values()):
184
+ cur_product_parametrization = dict(zip(static_parametrization.keys(), cur_product))
185
+ result.append(executor_typ(testcase, variation_executor, cur_product_parametrization))
186
+ return result
187
+
173
188
  # pylint: disable-next=unused-argument
174
189
  def get_executor_tree(self, plugin_manager: PluginManager, add_discarded=False) -> ExecutorTree:
175
190
  """
@@ -204,17 +219,22 @@ class Solver:
204
219
  variation_executor = VariationExecutor(device_mapping=cur_device_mapping, parent=scenario_executor)
205
220
  variation_executor.verify_applicability()
206
221
 
222
+ if not variation_executor.can_be_applied():
223
+ continue
224
+
207
225
  scenario_executor.add_variation_executor(variation_executor)
208
- for cur_testcase in ScenarioController.get_for(cur_scenario).get_all_test_methods():
209
- cur_testcase_executor = TestcaseExecutor(cur_testcase, parent=variation_executor)
210
- variation_executor.add_testcase_executor(cur_testcase_executor)
211
-
212
- # determine prev_mark IGNORE/SKIP for the testcase
213
- if cur_testcase_executor.should_be_skipped():
214
- cur_testcase_executor.prev_mark = PreviousExecutorMark.SKIP
215
- # always overwrite if it should be ignored
216
- if cur_testcase_executor.should_be_ignored():
217
- cur_testcase_executor.prev_mark = PreviousExecutorMark.IGNORE
226
+
227
+ for cur_testcase in scenario_executor.base_scenario_controller.get_all_test_methods():
228
+ # we have a parametrization for this test case
229
+ if scenario_executor.base_scenario_controller.get_parametrization_for(cur_testcase):
230
+ testcase_executors = self.get_static_parametrized_testcase_executor_for(
231
+ variation_executor, cur_testcase
232
+ )
233
+ for cur_testcase_executor in testcase_executors:
234
+ variation_executor.add_testcase_executor(cur_testcase_executor)
235
+ else:
236
+ testcase_executor = TestcaseExecutor(cur_testcase, parent=variation_executor)
237
+ variation_executor.add_testcase_executor(testcase_executor)
218
238
 
219
239
  # now filter all elements that have no child elements
220
240
  # -> these are items that have no valid matching, because no variation can be applied for it (there are no
balder/__init__.py CHANGED
@@ -13,6 +13,8 @@ from _balder.decorator_connect import connect
13
13
  from _balder.decorator_covered_by import covered_by
14
14
  from _balder.decorator_for_vdevice import for_vdevice
15
15
  from _balder.decorator_insert_into_tree import insert_into_tree
16
+ from _balder.decorator_parametrize import parametrize
17
+ from _balder.decorator_parametrize_by_feature import parametrize_by_feature
16
18
 
17
19
 
18
20
  __all__ = [
@@ -30,6 +32,10 @@ __all__ = [
30
32
 
31
33
  'covered_by',
32
34
 
35
+ 'parametrize',
36
+
37
+ 'parametrize_by_feature',
38
+
33
39
  'Setup',
34
40
 
35
41
  'Device',
balder/exceptions.py CHANGED
@@ -1,12 +1,12 @@
1
1
  from _balder.exceptions import BalderException, BalderWarning
2
- from _balder.exceptions import FixtureScopeError, FixtureReferenceError, UnclearSetupScopedFixtureReference, \
2
+ from _balder.exceptions import (FixtureScopeError, FixtureReferenceError, UnclearSetupScopedFixtureReference, \
3
3
  UnclearUniqueClassReference, LostInExecutorTreeException, DeviceResolvingException, NodeNotExistsError, \
4
4
  DuplicateForVDeviceError, DuplicateBalderSettingError, DeviceOverwritingError, VDeviceOverwritingError, \
5
5
  AccessToUnmappedVDeviceException, FeatureOverwritingError, UnknownVDeviceException, RoutingBrokenChainError, \
6
6
  IllegalConnectionTypeError, ConnectionMetadataConflictError, DeviceScopeError, ConnectionIntersectionError, \
7
7
  UnclearAssignableFeatureConnectionError, InheritanceError, MultiInheritanceError, InnerFeatureResolvingError, \
8
- VDeviceResolvingError, IllegalVDeviceMappingError, NotApplicableVariationException, UnclearMethodVariationError, \
9
- UnexpectedPluginMethodReturnValue
8
+ VDeviceResolvingError, IllegalVDeviceMappingError, MissingFeaturesOfVDeviceError, NotApplicableVariationException, \
9
+ UnclearMethodVariationError, UnexpectedPluginMethodReturnValue)
10
10
 
11
11
  __all__ = [
12
12
 
@@ -37,6 +37,7 @@ __all__ = [
37
37
  "InnerFeatureResolvingError",
38
38
  "VDeviceResolvingError",
39
39
  "IllegalVDeviceMappingError",
40
+ "MissingFeaturesOfVDeviceError",
40
41
  "NotApplicableVariationException",
41
42
  "UnclearMethodVariationError",
42
43
  "UnexpectedPluginMethodReturnValue",
@@ -0,0 +1,8 @@
1
+ from _balder.parametrization import FeatureAccessSelector, Parameter, Value
2
+
3
+
4
+ __all__ = [
5
+ 'FeatureAccessSelector',
6
+ 'Parameter',
7
+ 'Value'
8
+ ]
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: baldertest
3
- Version: 0.1.0b9
3
+ Version: 0.1.0b10
4
4
  Summary: balder: reusable scenario based test framework
5
5
  Home-page: https://docs.balder.dev
6
6
  Author: Max Stahlschmidt and others
@@ -1,50 +1,59 @@
1
1
  _balder/__init__.py,sha256=Qk4wkVInPlXLFV36Yco5K7PDawJoeeWQVakzj6g5pmA,195
2
- _balder/_version.py,sha256=xdDxoDc8nbJHb9-aJOnXPcJO9u_wtajm1m932_7HjoI,413
2
+ _balder/_version.py,sha256=VMQ9RsEJj3xjqPNgKf0AjBlaGisX_Y8yqdE9FG2S_e4,414
3
3
  _balder/balder_plugin.py,sha256=EQzJP1dwwVDydhMLJtAmTCXOczlDuXBJur05lalmK_k,3136
4
- _balder/balder_session.py,sha256=WPOcarZQhTzMeAQt-hRqI8GtXN5TdMIqzyhgYD2h4rw,16079
4
+ _balder/balder_session.py,sha256=ezT86gC_VzPQZOQ4r5qQ75IEm6rXZHiIpEqZDczkRsE,16149
5
5
  _balder/balder_settings.py,sha256=U96PVep7dGSaTXrMfeZMYf6oCIcEDPEqrBlFcoX476s,582
6
- _balder/collector.py,sha256=T_7LO8ZNty8EyOmM-U-uhU9-umdAv1fbuMVNjQWUwj0,42156
6
+ _balder/collector.py,sha256=7aIxU2cUDKNHDUyU8yzoUrkC1CqVijTOJbOQqLe6T9w,48043
7
7
  _balder/connection.py,sha256=MNazK97CIEJCA4o1krjKjtilVhOYMWD8TZT0YT5nCJs,71778
8
8
  _balder/decorator_connect.py,sha256=TvyJNIslBAYVQWhsfSeFgXKp_DP7sZF1BmcP6RhIdKo,5988
9
9
  _balder/decorator_covered_by.py,sha256=Y6WMUuyn_uvFkjGfbts8OE5Bsir_7LTRB-jxYGaYk4Y,4069
10
- _balder/decorator_fixture.py,sha256=Nvr3H-r8LlPiGSGEst3D1M-KQaBqSA1u1u13qzZrSwk,1138
11
- _balder/decorator_for_vdevice.py,sha256=j92TNH6kAz6jtQhOPcNszzmEAWezEFbX8KAh3HaNvSU,6643
10
+ _balder/decorator_fixture.py,sha256=vVd3pXVWEaaVP2rxgW4nKoskmDByafHuSFHC0v_LMoI,1045
11
+ _balder/decorator_for_vdevice.py,sha256=HvK8-cVVUojlVYk0hh8F03cMGsiVfpP99IQbIgJOS5Q,6506
12
12
  _balder/decorator_gateway.py,sha256=w6-1UFh8ydt81U6ymGxeBUFAIh2aaZ3U9pHpEANMlj8,1284
13
13
  _balder/decorator_insert_into_tree.py,sha256=l3nkaTzKzt3TIFYLJoehYwT3xxRRNz83fq8JhvR6DfQ,2069
14
+ _balder/decorator_parametrize.py,sha256=lHxADbHZVnWOhvQTUQgaYU1hQ8NF3ghMU57Z3r_oWVE,912
15
+ _balder/decorator_parametrize_by_feature.py,sha256=r0iySfWcFxXIVu0BNWIRU_E6_o2-lSzpL5aUifoqiyU,1381
14
16
  _balder/device.py,sha256=5O3tqj_iLKfHb5Zi_viJ76VH82cMOzX58OzRrMRRv0k,833
15
- _balder/exceptions.py,sha256=d0YSw8zVax2bFakG_1hcLlAXlyQh5jXnOuIPL1HLfI4,4202
17
+ _balder/exceptions.py,sha256=_zQFUK4kYKaVGUtH9IcH0q-GOyBb9qzqSU6BOsUnG7Y,4375
16
18
  _balder/exit_code.py,sha256=P0oFWKfjMo36Frv13ADRcm8eSPN3kE-WmZBE9qZJHdA,513
17
19
  _balder/feature.py,sha256=B3yPc-WZwLt1Q4dO9s2j9g1MBTcMBjn6oWoLnRgrwSs,3845
18
- _balder/fixture_manager.py,sha256=_fJZAaBK8Pej96juvdkigi7rjKJ-RTbfxhkSs78OBvg,28656
20
+ _balder/fixture_definition_scope.py,sha256=0MP0U2fcM9iS28Ytkfuu3TzZ4cUNG5u81GBWGBm9ucw,709
21
+ _balder/fixture_execution_level.py,sha256=-y7-4bihTSMzhYvM2O1Qc40ovyvW7SP25rHvWHZpD6g,655
22
+ _balder/fixture_manager.py,sha256=p5FzklRTlgN0UHbFkLru2M664y17oAafvKQwNqaEzKk,29240
23
+ _balder/fixture_metadata.py,sha256=4vls8-I0bsRxLDNbD5Du4Cm2ZPYwxqfuSeEY6D654jE,872
19
24
  _balder/node_gateway.py,sha256=64mv7Nx82JVknnQ09UXC-AcdDl6i_OB6NOsq_uBxeYo,4710
25
+ _balder/parametrization.py,sha256=SnaGeGpf7-5H-y107CBDx5V-onX-oiLS1KU1IquZwcU,2678
20
26
  _balder/plugin_manager.py,sha256=Ev2jnx4NtFHDsZ3C6h0HrJtQisqLO-V34JRM3wzTnFM,6921
21
27
  _balder/previous_executor_mark.py,sha256=gwpGu7d-kwPzQT8CmaPfuEG6fess2Upf5Q-zX6Oi6NY,835
22
28
  _balder/routing_path.py,sha256=6MJkhzBTHow2ESXzKQ2otwRFbPcKhLTYVy-zh7c5HeE,17172
23
29
  _balder/scenario.py,sha256=ATowBUl2HYQBmJHZ-eBpliqjPsWPnZAme9kwIeX3Tak,840
24
30
  _balder/setup.py,sha256=zSgtzNIWTVBjiZ5mn-qfpqIAnP3Im73t3Lqoaw0gWEI,763
25
- _balder/solver.py,sha256=qgcCRyLg3nsO2d3H0pukxmm2oe_h6t0pBGyZ-FgQYKc,11998
31
+ _balder/solver.py,sha256=S4FDYY6q4s5wJeQlRVZpa_DXXVxAKsbQkspR5EX3OCA,13109
26
32
  _balder/testresult.py,sha256=byJD3F84TNH40k30pjnxeLHXAAE-lqbVlk1JOSBtdNo,6783
27
33
  _balder/unmapped_vdevice.py,sha256=oKr01YVTLViWtZkYz8kx8ccTx-KmwgNrHuQqqD4eLQw,513
28
34
  _balder/utils.py,sha256=2kcX6bZIJW9Z8g-Hv0ue2mdOLBQYq4T2XSZpH2in1MQ,3092
29
35
  _balder/vdevice.py,sha256=fc2xuMnTuN1RyfWh9mqFgLdSO9yGA75eERobTXUQ9JA,215
30
36
  _balder/console/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
31
- _balder/console/balder.py,sha256=0Ezl6KMXqmayLweyj6wLDctuq2JWs52UA6DxO_HmkDc,2539
37
+ _balder/console/balder.py,sha256=rF1qgW6h35hKqGijGbZgGD2_y0Sd9Mbs_EXF2v_EUCk,2581
32
38
  _balder/controllers/__init__.py,sha256=UNb6QzMj4TqPI15OSvXyUJlA-NSai0CKkQhV5JIsba0,570
33
39
  _balder/controllers/base_device_controller.py,sha256=g-vY2SqKFUC9yGOvHLfbdmILT3sK2YyaWKSfvTRcC0o,3174
34
40
  _balder/controllers/controller.py,sha256=XGRE5LKWxxftEf-bZODvKxXwULu09iG131wMwRoz4Fk,803
35
- _balder/controllers/device_controller.py,sha256=bT8c0_9UmrAmzuZ-dsleSnw2pIppfITDG4ttEZjWlC8,23477
41
+ _balder/controllers/device_controller.py,sha256=6ndZmFdC1XEQ540CQxHEDa4ibSZhe94iZPZ0ZtmnFos,23477
36
42
  _balder/controllers/feature_controller.py,sha256=jaIbKbiEOdYRpYWuGdaByQBtlThK-u7OAr_xYhAfnEg,43737
37
- _balder/controllers/normal_scenario_setup_controller.py,sha256=cF2U-tC3LEyWdZDqZP_mN3Q_7uIzg9jiY_J--Pi5kk8,21877
38
- _balder/controllers/scenario_controller.py,sha256=gpN_wxEYcHlh6DVk7pRbPj_x2cmM6iIAskcpLstQo2g,17973
43
+ _balder/controllers/normal_scenario_setup_controller.py,sha256=bWR8GOGoRQ0B_sbLSX-u9IjHzvC3xcYRRSJfvQPQ-aY,21928
44
+ _balder/controllers/scenario_controller.py,sha256=CNJikLNNYECs1vFyJDG_dwJwtaT_o2kziFeXQzVSQuE,22405
39
45
  _balder/controllers/setup_controller.py,sha256=iNIMFjawYJWaSToUUfpmRK6ssycPyZGNlcvms8c7GKM,7135
40
46
  _balder/controllers/vdevice_controller.py,sha256=6-PidCKgvUteZVJsbGkKX69f3cYYYnolONl5Gja16W8,5777
41
47
  _balder/executor/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
42
- _balder/executor/basic_executor.py,sha256=PYuQ1TKXKnbnQirCmayjDSyPyBmqJws1HWqkHmGKZtw,11137
43
- _balder/executor/executor_tree.py,sha256=nEZ2bwWuayPZQrGSucFiDzuFSrYDnUVzqnVCtDLq2Ys,10439
44
- _balder/executor/scenario_executor.py,sha256=3j5lAFCA4zCxhivjMPFGlWMi_ieZGkdwnZ_JQoAt4Rw,11094
45
- _balder/executor/setup_executor.py,sha256=FsPTPsXZMoVB7xibEpCcwjC-BpkfGVZmx5lVbuebduw,8326
46
- _balder/executor/testcase_executor.py,sha256=jNfACO-AuOktIgCVcsavh0rHbUr5MmI-jML-LPMvo0w,6639
47
- _balder/executor/variation_executor.py,sha256=Ms8dfZPIL5-sYzMg2c1-WANDz8ZBHqNHXgegDobm7Gg,53106
48
+ _balder/executor/basic_executable_executor.py,sha256=Mta7a9stCiKPMQ6Hafe4jhlhLSeP6Bk7EWIPXUzrwNE,5135
49
+ _balder/executor/basic_executor.py,sha256=zX9lMkWThFXcqPzYaVMiELdg5WhjvvfxL_37j9vB5EA,8130
50
+ _balder/executor/executor_tree.py,sha256=I3zy5qOrQWoT3_3YnGDvGvfJE829J0X9xT7WtSru-pI,10618
51
+ _balder/executor/parametrized_testcase_executor.py,sha256=uR_CwdIRxiL1vqJP2P2htc0JPPevMGarIQs7cqHNzmU,2106
52
+ _balder/executor/scenario_executor.py,sha256=3-CkamjyIatDxS3INcYGTXDOtGR-bokcMLaMxC10Ytg,11344
53
+ _balder/executor/setup_executor.py,sha256=Icn-b3MHLMCGGOIGAPB01KWC6LkkZ-ikD_0XqcQjK0Y,8570
54
+ _balder/executor/testcase_executor.py,sha256=EZAPus0hsWJwHlqc7rEyULV8Ue2pyCwoOR1jLsbIQGA,7816
55
+ _balder/executor/unresolved_parametrized_testcase_executor.py,sha256=nwScqqiJD7Clkk3YcrPqXJnGEWjvunAlUYAwYvpUI2s,9075
56
+ _balder/executor/variation_executor.py,sha256=6wApsXwzt7dxZkL6hTIMYVL5NQX7dW8IubgtU5AJPo4,54314
48
57
  _balder/objects/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
49
58
  _balder/objects/connections/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
50
59
  _balder/objects/connections/osi_1_physical.py,sha256=74lKWJd6ETEtvNXH0_dmTbkZlStJ_af218pQkUht0aA,2189
@@ -56,13 +65,14 @@ _balder/objects/connections/osi_6_presentation.py,sha256=zCQXocR14CC8rFONFHUethv
56
65
  _balder/objects/connections/osi_7_application.py,sha256=VPTlKKCEd9FFusce2wVbScIBPzpikPQtpSPE7PHxMUI,2304
57
66
  _balder/objects/devices/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
58
67
  _balder/objects/devices/this_device.py,sha256=Ah0UNIqgUbtZ_B85fROjKbQS-NTDH1F3gscshB8UBsc,442
59
- balder/__init__.py,sha256=BfbdkW_CZCXWGqtdg1gpAjO0AY8b4h-P-flWsIMG-X0,1003
68
+ balder/__init__.py,sha256=PvPDJT9-mnDt3PuidCkPM6mB6wvcETIoINld3Jt1TUU,1184
60
69
  balder/connections.py,sha256=H6rf7UsiVY_FeZLngZXCT9WDw9cQqpiDiPbz_0J4yjM,2331
61
70
  balder/devices.py,sha256=zupHtz8yaiEjzR8CrvgZU-RzsDQcZFeN5mObfhtjwSw,173
62
- balder/exceptions.py,sha256=z_vlipJIsFwwJy9Ae_oGDJGPTINiAInMNZuCvEy6SUE,1884
63
- baldertest-0.1.0b9.dist-info/LICENSE,sha256=Daz9qTpqbiq-klWb2Q9lYOmn3rJ5oIQnbs62sGcqOZ4,1084
64
- baldertest-0.1.0b9.dist-info/METADATA,sha256=HzdUqwAR2FIIYoAWg6RxXoFOJzUOqpkxcA7q-V3SHbM,15783
65
- baldertest-0.1.0b9.dist-info/WHEEL,sha256=mguMlWGMX-VHnMpKOjjQidIo1ssRlCFu4a4mBpz1s2M,91
66
- baldertest-0.1.0b9.dist-info/entry_points.txt,sha256=hzqu_nrMKTCi5IJqzS1fhIXWEiL7mTGZ-kgj2lUYlRU,65
67
- baldertest-0.1.0b9.dist-info/top_level.txt,sha256=RUkIBkNLqHMemx2C9aEpoS65dpqb6_jU-oagIPxGQEA,15
68
- baldertest-0.1.0b9.dist-info/RECORD,,
71
+ balder/exceptions.py,sha256=iaR4P2L7K3LggYSDnjCGLheZEaGgnMilxDQdoYD5KHQ,1954
72
+ balder/parametrization.py,sha256=R8U67f6DEnXdDc9cGOgS8yFTEAfhglv1v9mnAUAExUg,150
73
+ baldertest-0.1.0b10.dist-info/LICENSE,sha256=Daz9qTpqbiq-klWb2Q9lYOmn3rJ5oIQnbs62sGcqOZ4,1084
74
+ baldertest-0.1.0b10.dist-info/METADATA,sha256=CxZJgsDYz6akqzwst785srtsXfO8F0PylLbV1Ylujao,15784
75
+ baldertest-0.1.0b10.dist-info/WHEEL,sha256=R06PA3UVYHThwHvxuRWMqaGcr-PuniXahwjmQRFMEkY,91
76
+ baldertest-0.1.0b10.dist-info/entry_points.txt,sha256=hzqu_nrMKTCi5IJqzS1fhIXWEiL7mTGZ-kgj2lUYlRU,65
77
+ baldertest-0.1.0b10.dist-info/top_level.txt,sha256=RUkIBkNLqHMemx2C9aEpoS65dpqb6_jU-oagIPxGQEA,15
78
+ baldertest-0.1.0b10.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (70.1.1)
2
+ Generator: setuptools (75.5.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5