orionis 0.442.0__py3-none-any.whl → 0.444.0__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.
- orionis/console/args/__init__.py +0 -0
- orionis/console/args/argument.py +343 -0
- orionis/console/args/enums/__init__.py +0 -0
- orionis/console/args/enums/actions.py +43 -0
- orionis/console/args/parser.py +6 -0
- orionis/console/commands/version.py +19 -4
- orionis/foundation/providers/inspirational_provider.py +61 -0
- orionis/foundation/providers/testing_provider.py +39 -2
- orionis/metadata/framework.py +1 -1
- orionis/services/inspirational/__init__.py +0 -0
- orionis/services/inspirational/contracts/inspire.py +15 -0
- orionis/services/inspirational/inspire.py +104 -0
- orionis/services/inspirational/quotes.py +363 -0
- orionis/support/facades/inspire.py +20 -0
- orionis/test/core/unit_test.py +134 -5
- orionis/test/kernel.py +30 -83
- orionis/test/validators/workers.py +2 -2
- {orionis-0.442.0.dist-info → orionis-0.444.0.dist-info}/METADATA +1 -1
- {orionis-0.442.0.dist-info → orionis-0.444.0.dist-info}/RECORD +23 -12
- {orionis-0.442.0.dist-info → orionis-0.444.0.dist-info}/WHEEL +0 -0
- {orionis-0.442.0.dist-info → orionis-0.444.0.dist-info}/licenses/LICENCE +0 -0
- {orionis-0.442.0.dist-info → orionis-0.444.0.dist-info}/top_level.txt +0 -0
- {orionis-0.442.0.dist-info → orionis-0.444.0.dist-info}/zip-safe +0 -0
orionis/test/core/unit_test.py
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import io
|
|
2
2
|
import json
|
|
3
|
+
from os import walk
|
|
3
4
|
import re
|
|
4
5
|
import time
|
|
5
6
|
import traceback
|
|
@@ -9,6 +10,7 @@ from contextlib import redirect_stdout, redirect_stderr
|
|
|
9
10
|
from datetime import datetime
|
|
10
11
|
from pathlib import Path
|
|
11
12
|
from typing import Any, Dict, List, Optional, Tuple
|
|
13
|
+
from orionis.app import Orionis
|
|
12
14
|
from orionis.container.resolver.resolver import Resolver
|
|
13
15
|
from orionis.foundation.config.testing.enums.drivers import PersistentDrivers
|
|
14
16
|
from orionis.foundation.config.testing.enums.mode import ExecutionMode
|
|
@@ -102,7 +104,9 @@ class UnitTest(IUnitTest):
|
|
|
102
104
|
"""
|
|
103
105
|
|
|
104
106
|
def __init__(
|
|
105
|
-
self
|
|
107
|
+
self,
|
|
108
|
+
app: Optional[IApplication] = None,
|
|
109
|
+
storage: Optional[str] = None
|
|
106
110
|
) -> None:
|
|
107
111
|
"""
|
|
108
112
|
Initialize a UnitTest instance with default configuration and internal state.
|
|
@@ -113,11 +117,11 @@ class UnitTest(IUnitTest):
|
|
|
113
117
|
-------
|
|
114
118
|
None
|
|
115
119
|
"""
|
|
116
|
-
# Application instance for dependency injection
|
|
117
|
-
self.__app: Optional[IApplication] =
|
|
120
|
+
# Application instance for dependency injection
|
|
121
|
+
self.__app: Optional[IApplication] = app or Orionis()
|
|
118
122
|
|
|
119
|
-
# Storage path for test results
|
|
120
|
-
self.__storage: Optional[str] =
|
|
123
|
+
# Storage path for test results
|
|
124
|
+
self.__storage: Optional[str] = storage or self.__app.path('storage_testing')
|
|
121
125
|
|
|
122
126
|
# Configuration values (set via configure)
|
|
123
127
|
self.__verbosity: Optional[int] = None
|
|
@@ -220,6 +224,100 @@ class UnitTest(IUnitTest):
|
|
|
220
224
|
# Return the instance to allow method chaining
|
|
221
225
|
return self
|
|
222
226
|
|
|
227
|
+
def discoverTests(
|
|
228
|
+
self,
|
|
229
|
+
base_path: str | Path,
|
|
230
|
+
folder_path: str | List[str],
|
|
231
|
+
pattern: str,
|
|
232
|
+
test_name_pattern: Optional[str] = None,
|
|
233
|
+
tags: Optional[List[str]] = None
|
|
234
|
+
) -> 'UnitTest':
|
|
235
|
+
"""
|
|
236
|
+
Discover test cases from specified folders using flexible path discovery.
|
|
237
|
+
|
|
238
|
+
This method provides a convenient way to discover and load test cases from multiple folders
|
|
239
|
+
based on various path specifications. It supports wildcard discovery, single folder loading,
|
|
240
|
+
and multiple folder loading. The method automatically resolves paths relative to the base
|
|
241
|
+
directory and discovers all folders containing files matching the specified pattern.
|
|
242
|
+
|
|
243
|
+
Parameters
|
|
244
|
+
----------
|
|
245
|
+
base_path : str or Path
|
|
246
|
+
Base directory path for resolving relative folder paths. This serves as the root
|
|
247
|
+
directory from which all folder searches are conducted.
|
|
248
|
+
folder_path : str or list of str
|
|
249
|
+
Specification of folders to search for test cases. Can be:
|
|
250
|
+
- '*' : Discover all folders containing matching files within base_path
|
|
251
|
+
- str : Single folder path relative to base_path
|
|
252
|
+
- list of str : Multiple folder paths relative to base_path
|
|
253
|
+
pattern : str
|
|
254
|
+
File name pattern to match test files, supporting wildcards (* and ?).
|
|
255
|
+
Examples: 'test_*.py', '*_test.py', 'test*.py'
|
|
256
|
+
test_name_pattern : str, optional
|
|
257
|
+
Regular expression pattern to filter test method names. Only tests whose
|
|
258
|
+
names match this pattern will be included. Default is None (no filtering).
|
|
259
|
+
tags : list of str, optional
|
|
260
|
+
List of tags to filter tests. Only tests decorated with matching tags
|
|
261
|
+
will be included. Default is None (no tag filtering).
|
|
262
|
+
|
|
263
|
+
Returns
|
|
264
|
+
-------
|
|
265
|
+
UnitTest
|
|
266
|
+
The current UnitTest instance with discovered tests added to the suite,
|
|
267
|
+
enabling method chaining.
|
|
268
|
+
|
|
269
|
+
Notes
|
|
270
|
+
-----
|
|
271
|
+
- All paths are resolved as absolute paths relative to the base_path
|
|
272
|
+
- When folder_path is '*', the method searches recursively through all subdirectories
|
|
273
|
+
- The method uses the existing discoverTestsInFolder method for actual test discovery
|
|
274
|
+
- Duplicate folders are automatically eliminated using a set data structure
|
|
275
|
+
- The method does not validate the existence of specified folders; validation
|
|
276
|
+
occurs during the actual test discovery process
|
|
277
|
+
"""
|
|
278
|
+
# Resolve the base path as an absolute path from the current working directory
|
|
279
|
+
base_path = (Path.cwd() / base_path).resolve()
|
|
280
|
+
|
|
281
|
+
# Use a set to store discovered folders and automatically eliminate duplicates
|
|
282
|
+
discovered_folders = set()
|
|
283
|
+
|
|
284
|
+
# Handle wildcard discovery: search all folders containing matching files
|
|
285
|
+
if folder_path == '*':
|
|
286
|
+
|
|
287
|
+
# Search recursively through the entire base path for folders with matching files
|
|
288
|
+
discovered_folders.update(self.__listMatchingFolders(base_path, base_path, pattern))
|
|
289
|
+
|
|
290
|
+
# Handle multiple folder paths: process each folder in the provided list
|
|
291
|
+
elif isinstance(folder_path, list):
|
|
292
|
+
for custom in folder_path:
|
|
293
|
+
# Resolve each custom folder path relative to the base path
|
|
294
|
+
custom_path = (base_path / custom).resolve()
|
|
295
|
+
# Add all matching folders found within this custom path
|
|
296
|
+
discovered_folders.update(self.__listMatchingFolders(base_path, custom_path, pattern))
|
|
297
|
+
|
|
298
|
+
# Handle single folder path: process the single specified folder
|
|
299
|
+
else:
|
|
300
|
+
|
|
301
|
+
# Resolve the single folder path relative to the base path
|
|
302
|
+
custom_path = (base_path / folder_path).resolve()
|
|
303
|
+
# Add all matching folders found within this single path
|
|
304
|
+
discovered_folders.update(self.__listMatchingFolders(base_path, custom_path, pattern))
|
|
305
|
+
|
|
306
|
+
# Iterate through all discovered folders and perform test discovery
|
|
307
|
+
for folder in discovered_folders:
|
|
308
|
+
|
|
309
|
+
# Use the existing discoverTestsInFolder method to actually discover and load tests
|
|
310
|
+
self.discoverTestsInFolder(
|
|
311
|
+
base_path=base_path,
|
|
312
|
+
folder_path=folder,
|
|
313
|
+
pattern=pattern,
|
|
314
|
+
test_name_pattern=test_name_pattern or None,
|
|
315
|
+
tags=tags or None
|
|
316
|
+
)
|
|
317
|
+
|
|
318
|
+
# Return the current instance to enable method chaining
|
|
319
|
+
return self
|
|
320
|
+
|
|
223
321
|
def discoverTestsInFolder(
|
|
224
322
|
self,
|
|
225
323
|
*,
|
|
@@ -1342,6 +1440,37 @@ class UnitTest(IUnitTest):
|
|
|
1342
1440
|
# Return the suite containing only the filtered tests
|
|
1343
1441
|
return filtered_suite
|
|
1344
1442
|
|
|
1443
|
+
def __listMatchingFolders(
|
|
1444
|
+
self,
|
|
1445
|
+
base_path: Path,
|
|
1446
|
+
custom_path: Path,
|
|
1447
|
+
pattern: str
|
|
1448
|
+
) -> List[str]:
|
|
1449
|
+
"""
|
|
1450
|
+
List folders within a given path containing files matching a pattern.
|
|
1451
|
+
|
|
1452
|
+
Parameters
|
|
1453
|
+
----------
|
|
1454
|
+
base_path : Path
|
|
1455
|
+
The base directory path for calculating relative paths.
|
|
1456
|
+
custom_path : Path
|
|
1457
|
+
The directory path to search for matching files.
|
|
1458
|
+
pattern : str
|
|
1459
|
+
The filename pattern to match, supporting '*' and '?' wildcards.
|
|
1460
|
+
|
|
1461
|
+
Returns
|
|
1462
|
+
-------
|
|
1463
|
+
List[str]
|
|
1464
|
+
List of relative folder paths containing files matching the pattern.
|
|
1465
|
+
"""
|
|
1466
|
+
regex = re.compile('^' + pattern.replace('*', '.*').replace('?', '.') + '$')
|
|
1467
|
+
matched_folders = set()
|
|
1468
|
+
for root, _, files in walk(str(custom_path)):
|
|
1469
|
+
if any(regex.fullmatch(file) for file in files):
|
|
1470
|
+
rel_path = Path(root).relative_to(base_path).as_posix()
|
|
1471
|
+
matched_folders.add(rel_path)
|
|
1472
|
+
return list(matched_folders)
|
|
1473
|
+
|
|
1345
1474
|
def getTestNames(
|
|
1346
1475
|
self
|
|
1347
1476
|
) -> List[str]:
|
orionis/test/kernel.py
CHANGED
|
@@ -1,9 +1,4 @@
|
|
|
1
|
-
from pathlib import Path
|
|
2
|
-
import re
|
|
3
|
-
from typing import List
|
|
4
|
-
from os import walk
|
|
5
1
|
from orionis.console.output.contracts.console import IConsole
|
|
6
|
-
from orionis.foundation.config.testing.entities.testing import Testing
|
|
7
2
|
from orionis.foundation.contracts.application import IApplication
|
|
8
3
|
from orionis.test.contracts.kernel import ITestKernel
|
|
9
4
|
from orionis.test.contracts.unit_test import IUnitTest
|
|
@@ -18,115 +13,67 @@ class TestKernel(ITestKernel):
|
|
|
18
13
|
"""
|
|
19
14
|
Initialize the TestKernel with the provided application instance.
|
|
20
15
|
|
|
16
|
+
This constructor sets up the test kernel by validating the application
|
|
17
|
+
instance and resolving required dependencies for testing operations.
|
|
18
|
+
|
|
21
19
|
Parameters
|
|
22
20
|
----------
|
|
23
21
|
app : IApplication
|
|
24
|
-
|
|
22
|
+
The application instance that provides dependency injection
|
|
23
|
+
and service resolution capabilities.
|
|
25
24
|
|
|
26
25
|
Raises
|
|
27
26
|
------
|
|
28
27
|
OrionisTestConfigException
|
|
29
|
-
If the provided app is not an instance of IApplication.
|
|
28
|
+
If the provided app parameter is not an instance of IApplication.
|
|
29
|
+
|
|
30
|
+
Returns
|
|
31
|
+
-------
|
|
32
|
+
None
|
|
33
|
+
This is a constructor method and does not return a value.
|
|
30
34
|
"""
|
|
35
|
+
# Validate that the provided app parameter is an IApplication instance
|
|
31
36
|
if not isinstance(app, IApplication):
|
|
32
37
|
raise OrionisTestConfigException(
|
|
33
38
|
f"Failed to initialize TestKernel: expected IApplication, got {type(app).__module__}.{type(app).__name__}."
|
|
34
39
|
)
|
|
35
40
|
|
|
36
|
-
|
|
41
|
+
# Resolve the unit test service from the application container
|
|
37
42
|
self.__unit_test: IUnitTest = app.make('core.orionis.testing')
|
|
38
|
-
self.__unit_test._UnitTest__app = app
|
|
39
|
-
self.__unit_test._UnitTest__storage = app.path('storage_testing')
|
|
40
|
-
self.__console: IConsole = app.make('core.orionis.console')
|
|
41
|
-
|
|
42
|
-
def __listMatchingFolders(
|
|
43
|
-
self,
|
|
44
|
-
base_path: Path,
|
|
45
|
-
custom_path: Path,
|
|
46
|
-
pattern: str
|
|
47
|
-
) -> List[str]:
|
|
48
|
-
"""
|
|
49
|
-
List folders within a given path containing files matching a pattern.
|
|
50
|
-
|
|
51
|
-
Parameters
|
|
52
|
-
----------
|
|
53
|
-
base_path : Path
|
|
54
|
-
The base directory path for calculating relative paths.
|
|
55
|
-
custom_path : Path
|
|
56
|
-
The directory path to search for matching files.
|
|
57
|
-
pattern : str
|
|
58
|
-
The filename pattern to match, supporting '*' and '?' wildcards.
|
|
59
43
|
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
List[str]
|
|
63
|
-
List of relative folder paths containing files matching the pattern.
|
|
64
|
-
"""
|
|
65
|
-
regex = re.compile('^' + pattern.replace('*', '.*').replace('?', '.') + '$')
|
|
66
|
-
matched_folders = set()
|
|
67
|
-
for root, _, files in walk(str(custom_path)):
|
|
68
|
-
if any(regex.fullmatch(file) for file in files):
|
|
69
|
-
rel_path = Path(root).relative_to(base_path).as_posix()
|
|
70
|
-
matched_folders.add(rel_path)
|
|
71
|
-
return list(matched_folders)
|
|
44
|
+
# Resolve the console service from the application container
|
|
45
|
+
self.__console: IConsole = app.make('core.orionis.console')
|
|
72
46
|
|
|
73
47
|
def handle(self) -> IUnitTest:
|
|
74
48
|
"""
|
|
75
|
-
|
|
49
|
+
Execute the unit test suite and handle any exceptions that occur during testing.
|
|
50
|
+
|
|
51
|
+
This method serves as the main entry point for running tests through the test kernel.
|
|
52
|
+
It executes the unit test suite via the injected unit test service and provides
|
|
53
|
+
comprehensive error handling for both expected test failures and unexpected errors.
|
|
54
|
+
The method ensures graceful termination of the application in case of any failures.
|
|
76
55
|
|
|
77
56
|
Returns
|
|
78
57
|
-------
|
|
79
58
|
IUnitTest
|
|
80
|
-
The
|
|
59
|
+
The unit test service instance after successful test execution. This allows
|
|
60
|
+
for potential chaining of operations or access to test results.
|
|
81
61
|
|
|
82
62
|
Raises
|
|
83
63
|
------
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
If an unexpected error occurs during test execution.
|
|
64
|
+
SystemExit
|
|
65
|
+
Indirectly raised through console.exitError() when test failures or
|
|
66
|
+
unexpected errors occur during test execution.
|
|
88
67
|
"""
|
|
89
|
-
try:
|
|
90
|
-
self.__unit_test.configure(
|
|
91
|
-
verbosity=self.__config.verbosity,
|
|
92
|
-
execution_mode=self.__config.execution_mode,
|
|
93
|
-
max_workers=self.__config.max_workers,
|
|
94
|
-
fail_fast=self.__config.fail_fast,
|
|
95
|
-
print_result=self.__config.print_result,
|
|
96
|
-
throw_exception=self.__config.throw_exception,
|
|
97
|
-
persistent=self.__config.persistent,
|
|
98
|
-
persistent_driver=self.__config.persistent_driver,
|
|
99
|
-
web_report=self.__config.web_report
|
|
100
|
-
)
|
|
101
|
-
|
|
102
|
-
base_path = (Path.cwd() / self.__config.base_path).resolve()
|
|
103
|
-
folder_path = self.__config.folder_path
|
|
104
|
-
pattern = self.__config.pattern
|
|
105
|
-
discovered_folders = set()
|
|
106
|
-
|
|
107
|
-
if folder_path == '*':
|
|
108
|
-
discovered_folders.update(self.__listMatchingFolders(base_path, base_path, pattern))
|
|
109
|
-
elif isinstance(folder_path, list):
|
|
110
|
-
for custom in folder_path:
|
|
111
|
-
custom_path = (base_path / custom).resolve()
|
|
112
|
-
discovered_folders.update(self.__listMatchingFolders(base_path, custom_path, pattern))
|
|
113
|
-
else:
|
|
114
|
-
custom_path = (base_path / folder_path).resolve()
|
|
115
|
-
discovered_folders.update(self.__listMatchingFolders(base_path, custom_path, pattern))
|
|
116
|
-
|
|
117
|
-
for folder in discovered_folders:
|
|
118
|
-
self.__unit_test.discoverTestsInFolder(
|
|
119
|
-
folder_path=folder,
|
|
120
|
-
base_path=self.__config.base_path,
|
|
121
|
-
pattern=pattern,
|
|
122
|
-
test_name_pattern=self.__config.test_name_pattern or None,
|
|
123
|
-
tags=self.__config.tags or None
|
|
124
|
-
)
|
|
125
68
|
|
|
69
|
+
# Execute the unit test suite through the injected unit test service
|
|
70
|
+
try:
|
|
126
71
|
return self.__unit_test.run()
|
|
127
72
|
|
|
73
|
+
# Handle expected test failures with a descriptive error message
|
|
128
74
|
except OrionisTestFailureException as e:
|
|
129
75
|
self.__console.exitError(f"Test execution failed: {e}")
|
|
130
76
|
|
|
77
|
+
# Handle any unexpected errors that occur during test execution
|
|
131
78
|
except Exception as e:
|
|
132
79
|
self.__console.exitError(f"An unexpected error occurred: {e}")
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
from orionis.
|
|
1
|
+
from orionis.services.system.workers import Workers
|
|
2
2
|
from orionis.test.exceptions import OrionisTestValueError
|
|
3
3
|
|
|
4
4
|
class __ValidWorkers:
|
|
@@ -25,7 +25,7 @@ class __ValidWorkers:
|
|
|
25
25
|
OrionisTestValueError
|
|
26
26
|
If `max_workers` is not a positive integer within the allowed range.
|
|
27
27
|
"""
|
|
28
|
-
max_allowed = Workers.calculate()
|
|
28
|
+
max_allowed = Workers().calculate()
|
|
29
29
|
if not isinstance(max_workers, int) or max_workers < 1 or max_workers > max_allowed:
|
|
30
30
|
raise OrionisTestValueError(
|
|
31
31
|
f"Invalid max_workers: Expected a positive integer between 1 and {max_allowed}, got '{max_workers}' ({type(max_workers).__name__})."
|
|
@@ -2,11 +2,16 @@ orionis/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
|
2
2
|
orionis/app.py,sha256=b69fOzj2J8Aw5g0IldWZXixUDeeTO9vcHc_Njses9HU,603
|
|
3
3
|
orionis/console/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
4
4
|
orionis/console/kernel.py,sha256=1CuBCLR6KItRt0_m50YQXirJUMX6lJf4Z4vvOjBqaUU,856
|
|
5
|
+
orionis/console/args/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
6
|
+
orionis/console/args/argument.py,sha256=ZbY8Gbxbk6pvORRL1evzXB9qGesepD0zdbMsbqfcFjw,14688
|
|
7
|
+
orionis/console/args/parser.py,sha256=WRaeyRjqnwXKBLn56sK2jubS_DAPbfVQ2rtfUGluA8A,101
|
|
8
|
+
orionis/console/args/enums/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
9
|
+
orionis/console/args/enums/actions.py,sha256=S3T-vWS6DJSGtANrq3od3-90iYAjPvJwaOZ2V02y34c,1222
|
|
5
10
|
orionis/console/base/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
6
11
|
orionis/console/base/command.py,sha256=2kKyTaEzI16Up-XCUeNeJmDWPLN-CweQm3EgrN9U8NQ,3027
|
|
7
12
|
orionis/console/base/contracts/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
8
13
|
orionis/console/base/contracts/command.py,sha256=s9yjma-s1URkVm0EbVvSkETAm-N8xX7OnZS43P8pvk8,1957
|
|
9
|
-
orionis/console/commands/version.py,sha256=
|
|
14
|
+
orionis/console/commands/version.py,sha256=kR8xzyc-Wisk7AXqg3Do7M9xTg_CxJgAtESPGrbRtpI,1673
|
|
10
15
|
orionis/console/contracts/kernel.py,sha256=mh4LlhEYHh3FuGZZQ0GBhD6ZLa5YQvaNj2r01IIHI5Y,826
|
|
11
16
|
orionis/console/core/reactor.py,sha256=lNfj-L4MKZhBn07l4H5L5dVW2xBRiq6-kyIuqnUNawQ,73
|
|
12
17
|
orionis/console/dumper/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -167,13 +172,14 @@ orionis/foundation/exceptions/value.py,sha256=hQhXybXEnaa59ba7JxG65jceHt3mnql9My
|
|
|
167
172
|
orionis/foundation/providers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
168
173
|
orionis/foundation/providers/console_provider.py,sha256=wsv0RjoYU9MatC1ZRBAtV9iCVLzLWT2rg7MQFXwqgvo,1341
|
|
169
174
|
orionis/foundation/providers/dumper_provider.py,sha256=d0k9yKVfwf40W4If0_rF09odLDXFA1w9jxU1MvZvCbo,1498
|
|
175
|
+
orionis/foundation/providers/inspirational_provider.py,sha256=ZIsuEq2Sif7C1b1hYC7_mEBd0kGwd8KWd-fHyyd6Qs4,2298
|
|
170
176
|
orionis/foundation/providers/logger_provider.py,sha256=PvwMxP5TKmn9DP8H8nJfyr16XgiJaGHyxPSMOpFgv84,1448
|
|
171
177
|
orionis/foundation/providers/path_resolver_provider.py,sha256=s44Mg68RsUNPlilQlXMBE7onVexa7kyDmVQmci1JL4g,1342
|
|
172
178
|
orionis/foundation/providers/progress_bar_provider.py,sha256=P__zpCyC29WCwErYGbh5dgcMRxw3XYmHzaUkzms9vPM,1345
|
|
173
|
-
orionis/foundation/providers/testing_provider.py,sha256=
|
|
179
|
+
orionis/foundation/providers/testing_provider.py,sha256=fSZfwKnScTxGlGrcEPReGIiOPs8XkoEaNNARN1wC6LU,2939
|
|
174
180
|
orionis/foundation/providers/workers_provider.py,sha256=YMRLdq_YQnR1unnoYvDpYQZbLli04f0CckuR6Q--wKg,1379
|
|
175
181
|
orionis/metadata/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
176
|
-
orionis/metadata/framework.py,sha256=
|
|
182
|
+
orionis/metadata/framework.py,sha256=Que9Q_spu-gld9CNZt90yTGnUPDQBWf87yrjBiveqPQ,4088
|
|
177
183
|
orionis/metadata/package.py,sha256=k7Yriyp5aUcR-iR8SK2ec_lf0_Cyc-C7JczgXa-I67w,16039
|
|
178
184
|
orionis/services/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
179
185
|
orionis/services/asynchrony/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -203,6 +209,10 @@ orionis/services/environment/key/key_generator.py,sha256=q39GD-VgRhH0uYB0ZdfUnq9
|
|
|
203
209
|
orionis/services/environment/validators/__init__.py,sha256=S0Us4_BtKPuOMQZf4uFFqUINB8l6Eb9vJbbxUCzIhfc,135
|
|
204
210
|
orionis/services/environment/validators/key_name.py,sha256=TSwVhQCbBYPZ_4zZ-o16yT_2pOe3WRWl9d8KzfDzWyg,1660
|
|
205
211
|
orionis/services/environment/validators/types.py,sha256=hiTszo7hS_1zQLclUIDOFUTGy2Kg2n3dZe7jU8Pmf1I,2839
|
|
212
|
+
orionis/services/inspirational/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
213
|
+
orionis/services/inspirational/inspire.py,sha256=dUxwkNLjKC4jdi06cVB1gfyB2zHjfgdhYhwKtsOTf0Q,4090
|
|
214
|
+
orionis/services/inspirational/quotes.py,sha256=9hCIEFE0DdfXLaGq_SzFpXlC2AbGSnuFLzyec4Rd1H0,53455
|
|
215
|
+
orionis/services/inspirational/contracts/inspire.py,sha256=--GGHAIxeEjQS0Ra3bilZ7lL5MWyLT9XhZ7-m-ZmqwU,404
|
|
206
216
|
orionis/services/introspection/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
207
217
|
orionis/services/introspection/reflection.py,sha256=_Wdy8Wtt3RKXAqg9o5rvYa_Hyu-Z4674LKnNVg7u7pU,11467
|
|
208
218
|
orionis/services/introspection/abstract/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -271,6 +281,7 @@ orionis/support/entities/base.py,sha256=kVx9YWZjYS6C9MraarU7U12OeT5enBp5XqizrQm4
|
|
|
271
281
|
orionis/support/facades/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
272
282
|
orionis/support/facades/console.py,sha256=OvxQ-r8PsPocJTaIUftmJnnr4SuONHQWYFz2_r1CcR4,412
|
|
273
283
|
orionis/support/facades/dumper.py,sha256=XAHJTXrMjPchGQMIAU0hlcUjMZQK_ogrE0voRm2HdI8,434
|
|
284
|
+
orionis/support/facades/inspire.py,sha256=m2UbKXyggxASd0HTRT5M-mJ0FvMP_NIJ0lW8HTQMi4M,759
|
|
274
285
|
orionis/support/facades/logger.py,sha256=2EbSbJDSyKFUQmZUpoMsc5704Mzj2Skehx_9UpDluhc,450
|
|
275
286
|
orionis/support/facades/path_resolver.py,sha256=lRLbu69i8PzM-I53gzXroHIurxzyFdssNWOYMjPgqco,442
|
|
276
287
|
orionis/support/facades/progress_bar.py,sha256=NOCwAV873GptedgySMZpM_A_DoM-UQrMg2kDHpS6zi8,423
|
|
@@ -294,7 +305,7 @@ orionis/support/standard/exceptions/value.py,sha256=rsyWFQweImaJGTJa7Id7RhPlwWJ4
|
|
|
294
305
|
orionis/support/wrapper/__init__.py,sha256=jGoWoIGYuRYqMYQKlrX7Dpcbg-AGkHoB_aM2xhu73yc,62
|
|
295
306
|
orionis/support/wrapper/dot_dict.py,sha256=T8xWwwOhBZHNeXRwE_CxvOwG9UFxsLqNmOJjV2CNIrc,7284
|
|
296
307
|
orionis/test/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
297
|
-
orionis/test/kernel.py,sha256=
|
|
308
|
+
orionis/test/kernel.py,sha256=nJJDN2xusp9VZzezfocIvoenT2BheverjSovYCbRECg,3229
|
|
298
309
|
orionis/test/cases/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
299
310
|
orionis/test/cases/asynchronous.py,sha256=3e1Y3qzIxVU7i7lbLFEVyJ89IA74JsB7famx71W-p2E,1974
|
|
300
311
|
orionis/test/cases/synchronous.py,sha256=S5jhuDEZ5I9wosrTFaCtowkD5r5HzJH6mKPOdEJcDJE,1734
|
|
@@ -307,7 +318,7 @@ orionis/test/contracts/render.py,sha256=wpDQzUtT0r8KFZ7zPcxWHXQ1EVNKxzA_rZ6ZKUcZ
|
|
|
307
318
|
orionis/test/contracts/test_result.py,sha256=SNXJ2UerkweYn7uCT0i0HmMGP0XBrL_9KJs-0ZvIYU4,4002
|
|
308
319
|
orionis/test/contracts/unit_test.py,sha256=PSnjEyM-QGQ3Pm0ZOqaa8QdPOtilGBVO4R87JYdVa-8,5386
|
|
309
320
|
orionis/test/core/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
310
|
-
orionis/test/core/unit_test.py,sha256=
|
|
321
|
+
orionis/test/core/unit_test.py,sha256=IIpPLM4pXZKCpKAZ-0PPatGuWjBXxgjKQxB8IJLB1zY,63310
|
|
311
322
|
orionis/test/entities/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
312
323
|
orionis/test/entities/result.py,sha256=IMAd1AiwOf2z8krTDBFMpQe_1PG4YJ5Z0qpbr9xZwjg,4507
|
|
313
324
|
orionis/test/enums/__init__.py,sha256=M3imAgMvKFTKg55FbtVoY3zxj7QRY9AfaUWxiSZVvn4,66
|
|
@@ -338,10 +349,10 @@ orionis/test/validators/tags.py,sha256=Qv-p8XFyAjY7OI861s52eADGf3LqzOWYfKt4L1cpo
|
|
|
338
349
|
orionis/test/validators/throw_exception.py,sha256=PLtM94BArQf11VJhxfBHJSHARZSia-Q8ePixctU2JwQ,893
|
|
339
350
|
orionis/test/validators/verbosity.py,sha256=rADzM82cPcJ2_6crszpobJuwb5WihWNQf6i4M_yrCpw,1785
|
|
340
351
|
orionis/test/validators/web_report.py,sha256=n9BfzOZz6aEiNTypXcwuWbFRG0OdHNSmCNusHqc02R8,853
|
|
341
|
-
orionis/test/validators/workers.py,sha256=
|
|
352
|
+
orionis/test/validators/workers.py,sha256=rWcdRexINNEmGaO7mnc1MKUxkHKxrTsVuHgbnIfJYgc,1206
|
|
342
353
|
orionis/test/view/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
343
354
|
orionis/test/view/render.py,sha256=f-zNhtKSg9R5Njqujbg2l2amAs2-mRVESneLIkWOZjU,4082
|
|
344
|
-
orionis-0.
|
|
355
|
+
orionis-0.444.0.dist-info/licenses/LICENCE,sha256=JhC-z_9mbpUrCfPjcl3DhDA8trNDMzb57cvRSam1avc,1463
|
|
345
356
|
tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
346
357
|
tests/container/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
347
358
|
tests/container/context/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -487,8 +498,8 @@ tests/testing/validators/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZ
|
|
|
487
498
|
tests/testing/validators/test_testing_validators.py,sha256=WPo5GxTP6xE-Dw3X1vZoqOMpb6HhokjNSbgDsDRDvy4,16588
|
|
488
499
|
tests/testing/view/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
489
500
|
tests/testing/view/test_render.py,sha256=tnnMBwS0iKUIbogLvu-7Rii50G6Koddp3XT4wgdFEYM,1050
|
|
490
|
-
orionis-0.
|
|
491
|
-
orionis-0.
|
|
492
|
-
orionis-0.
|
|
493
|
-
orionis-0.
|
|
494
|
-
orionis-0.
|
|
501
|
+
orionis-0.444.0.dist-info/METADATA,sha256=YgxccCDNizNHssu-14sVeL6dVMvkTMfvdfd3UcB1SeY,4772
|
|
502
|
+
orionis-0.444.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
503
|
+
orionis-0.444.0.dist-info/top_level.txt,sha256=2bdoHgyGZhOtLAXS6Om8OCTmL24dUMC_L1quMe_ETbk,14
|
|
504
|
+
orionis-0.444.0.dist-info/zip-safe,sha256=frcCV1k9oG9oKj3dpUqdJg1PxRT2RSN_XKdLCPjaYaY,2
|
|
505
|
+
orionis-0.444.0.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|