orionis 0.665.0__py3-none-any.whl → 0.666.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.
@@ -5,7 +5,7 @@
5
5
  NAME = "orionis"
6
6
 
7
7
  # Current version of the framework
8
- VERSION = "0.665.0"
8
+ VERSION = "0.666.0"
9
9
 
10
10
  # Full name of the author or maintainer of the project
11
11
  AUTHOR = "Raul Mauricio Uñate Castro"
@@ -160,7 +160,7 @@ class UnitTest(IUnitTest):
160
160
  storage_path = self.__app.path('storage')
161
161
  self.__storage: Path = (storage_path / 'testing' / 'results').resolve()
162
162
 
163
- def __loadConfig(
163
+ def __loadConfig( # NOSONAR
164
164
  self
165
165
  ) -> None:
166
166
  """
@@ -316,7 +316,7 @@ class UnitTest(IUnitTest):
316
316
  # If folder_path is '*', discover all modules matching the pattern in the test directory
317
317
  if self.__folder_path == '*':
318
318
  list_modules = self.__listMatchingModules(
319
- self.__root_path, self.__test_path, None, self.__pattern
319
+ self.__root_path, self.__test_path, '', self.__pattern
320
320
  )
321
321
  modules.update(list_modules)
322
322
 
@@ -619,7 +619,7 @@ class UnitTest(IUnitTest):
619
619
  "Ensure that the test files are valid and that there are no syntax errors or missing dependencies."
620
620
  )
621
621
 
622
- def __withDebugger(
622
+ def __withDebugger( # NOSONAR
623
623
  self,
624
624
  test_case: unittest.TestCase
625
625
  ) -> bool:
@@ -773,7 +773,7 @@ class UnitTest(IUnitTest):
773
773
  # Return the summary of the test results
774
774
  return summary
775
775
 
776
- def __flattenTestSuite(
776
+ def __flattenTestSuite( # NOSONAR
777
777
  self,
778
778
  suite: unittest.TestSuite
779
779
  ) -> List[unittest.TestCase]:
@@ -875,7 +875,7 @@ class UnitTest(IUnitTest):
875
875
  # Return the aggregated test result object
876
876
  return result
877
877
 
878
- def __resolveTestDependencies(
878
+ def __resolveTestDependencies( # NOSONAR
879
879
  self,
880
880
  test_case: unittest.TestCase
881
881
  ) -> unittest.TestSuite:
@@ -972,7 +972,7 @@ class UnitTest(IUnitTest):
972
972
  except RuntimeError:
973
973
  loop = None
974
974
  if loop and loop.is_running():
975
- return loop.create_task(async_wrapper(self_instance))
975
+ return loop.create_task(async_wrapper(self_instance)) # NOSONAR
976
976
  else:
977
977
  return asyncio.run(async_wrapper(self_instance))
978
978
 
@@ -983,7 +983,7 @@ class UnitTest(IUnitTest):
983
983
 
984
984
  # For synchronous methods, inject dependencies directly
985
985
  def wrapper(self_instance):
986
- return original_method(self_instance, **resolved_args)
986
+ return original_method(self_instance, **resolved_args) # NOSONAR
987
987
 
988
988
  # Bind the wrapped method to the test case instance
989
989
  bound_method = wrapper.__get__(test_case, test_cls)
@@ -1249,7 +1249,7 @@ class UnitTest(IUnitTest):
1249
1249
  super().addFailure(test, err)
1250
1250
  elapsed = self._test_timings.get(test, 0.0)
1251
1251
  tb_str = ''.join(traceback.format_exception(*err))
1252
- file_path, clean_tb = this._extractErrorInfo(tb_str)
1252
+ file_path, clean_tb = this._extractErrorInfo(tb_str) # NOSONAR
1253
1253
  self.test_results.append(
1254
1254
  TestResult(
1255
1255
  id=test.id(),
@@ -1272,7 +1272,7 @@ class UnitTest(IUnitTest):
1272
1272
  super().addError(test, err)
1273
1273
  elapsed = self._test_timings.get(test, 0.0)
1274
1274
  tb_str = ''.join(traceback.format_exception(*err))
1275
- file_path, clean_tb = this._extractErrorInfo(tb_str)
1275
+ file_path, clean_tb = this._extractErrorInfo(tb_str) # NOSONAR
1276
1276
  self.test_results.append(
1277
1277
  TestResult(
1278
1278
  id=test.id(),
@@ -63,7 +63,7 @@ class TestDumper(ITestDumper):
63
63
  test case classes.
64
64
  """
65
65
 
66
- values: tuple = tuple()
66
+ values: tuple = ()
67
67
  for arg in args:
68
68
  if not self.__isTestCaseClass(arg):
69
69
  values += (arg,)
@@ -421,7 +421,7 @@ class TestPrinter(ITestPrinter):
421
421
  invite_text.append("View report: ", style="bold green")
422
422
 
423
423
  # Append the report path, styled as underlined blue for emphasis
424
- invite_text.append(str(path), style="underline blue")
424
+ invite_text.append(str(path), style="underline blue") # NOSONAR
425
425
 
426
426
  # Print the composed invitation message to the console
427
427
  self.__rich_console.print(invite_text)
@@ -486,7 +486,7 @@ class TestPrinter(ITestPrinter):
486
486
  # Add a blank line after the table for spacing
487
487
  self.__rich_console.line(1)
488
488
 
489
- def displayResults(
489
+ def displayResults( # NOSONAR
490
490
  self,
491
491
  *,
492
492
  summary: Dict[str, Any]
@@ -102,7 +102,7 @@ class TestLogs(ITestLogs):
102
102
  # Set synchronous mode to NORMAL for performance
103
103
  self._conn.execute("PRAGMA synchronous=NORMAL;")
104
104
 
105
- except (sqlite3.Error, Exception) as e:
105
+ except sqlite3.Error as e:
106
106
 
107
107
  # Raise a custom exception if connection fails
108
108
  raise OrionisTestPersistenceError(
@@ -329,14 +329,12 @@ class TestLogs(ITestLogs):
329
329
  )
330
330
 
331
331
  # Validate 'first' parameter if provided
332
- if first is not None:
333
- if not isinstance(first, int) or first <= 0:
334
- raise OrionisTestValueError("'first' must be a positive integer greater than zero.")
332
+ if first is not None and not isinstance(first, int) or first <= 0:
333
+ raise OrionisTestValueError("'first' must be a positive integer greater than zero.")
335
334
 
336
335
  # Validate 'last' parameter if provided
337
- if last is not None:
338
- if not isinstance(last, int) or last <= 0:
339
- raise OrionisTestValueError("'last' must be a positive integer greater than zero.")
336
+ if last is not None and not isinstance(last, int) or last <= 0:
337
+ raise OrionisTestValueError("'last' must be a positive integer greater than zero.")
340
338
 
341
339
  # Determine the order and quantity of records to retrieve
342
340
  # If 'last' is specified, order by descending ID; otherwise, ascending
@@ -128,10 +128,15 @@ class TestingResultRender(ITestingResultRender):
128
128
 
129
129
  # Open the generated report in the default web browser if running on Windows or macOS.
130
130
  try:
131
+
131
132
  # Check the operating system and open the report in a web browser if applicable
132
133
  if ((os.name == 'nt') or (os.name == 'posix' and sys.platform == 'darwin')):
133
134
  import webbrowser
134
135
  webbrowser.open(self.__report_path.as_uri())
135
- finally:
136
- # Return the absolute path to the generated report
137
- return str(self.__report_path)
136
+ except Exception:
137
+
138
+ # Silently ignore any errors when opening the browser
139
+ pass
140
+
141
+ # Return the absolute path to the generated report
142
+ return str(self.__report_path)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: orionis
3
- Version: 0.665.0
3
+ Version: 0.666.0
4
4
  Summary: Orionis Framework – Elegant, Fast, and Powerful.
5
5
  Home-page: https://github.com/orionis-framework/framework
6
6
  Author: Raul Mauricio Uñate Castro
@@ -207,7 +207,7 @@ orionis/foundation/providers/scheduler_provider.py,sha256=IrPQJwvQVLRm5Qnz0Cxon4
207
207
  orionis/foundation/providers/testing_provider.py,sha256=eI1p2lUlxl25b5Z487O4nmqLE31CTDb4c3Q21xFadkE,1615
208
208
  orionis/foundation/providers/workers_provider.py,sha256=GdHENYV_yGyqmHJHn0DCyWmWId5xWjD48e6Zq2PGCWY,1674
209
209
  orionis/metadata/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
210
- orionis/metadata/framework.py,sha256=HS7-j97OokocN3ha_-53BM4uNnfQseTtovS4gW3HutE,4089
210
+ orionis/metadata/framework.py,sha256=et8zGm7BdiVSikkAN9Q3JIun33k3V5FK7JLSwnhLvTM,4089
211
211
  orionis/metadata/package.py,sha256=s1JeGJPwdVh4jO3IOfmpwMuJ_oX6Vf9NL7jgPEQNf5Y,16050
212
212
  orionis/services/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
213
213
  orionis/services/asynchrony/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -361,7 +361,7 @@ orionis/test/contracts/render.py,sha256=wpDQzUtT0r8KFZ7zPcxWHXQ1EVNKxzA_rZ6ZKUcZ
361
361
  orionis/test/contracts/test_result.py,sha256=SNXJ2UerkweYn7uCT0i0HmMGP0XBrL_9KJs-0ZvIYU4,4002
362
362
  orionis/test/contracts/unit_test.py,sha256=EyidHoOPJItwgkBWGYY1TymbNklyn2EUXnghVvW4htc,4652
363
363
  orionis/test/core/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
364
- orionis/test/core/unit_test.py,sha256=-T5QS7mWYykOX28Q-dVCP1JoOwwlIzFLlOjZRvYguOU,72500
364
+ orionis/test/core/unit_test.py,sha256=9NhwOWJjutYOJa1Mc2ioXzuLV6rejFGbEI91jrdVfHE,72578
365
365
  orionis/test/entities/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
366
366
  orionis/test/entities/result.py,sha256=eZ6UIqGmFW8FZ9x8PB_MZbLAc-SAuUyi4FUcMYIZzGo,4777
367
367
  orionis/test/enums/__init__.py,sha256=M3imAgMvKFTKg55FbtVoY3zxj7QRY9AfaUWxiSZVvn4,66
@@ -373,10 +373,10 @@ orionis/test/exceptions/persistence.py,sha256=8Oakaey35DpByLoGnfbwHxFKntxgWaGl49
373
373
  orionis/test/exceptions/runtime.py,sha256=h9gQ0pS8tJTmuXNG-GHky8tTqpdz-cNqkntOOlRXZJg,612
374
374
  orionis/test/exceptions/value.py,sha256=CoqYOkViU_RaKCMNpB82tgEsR3XhI1pw6YQ8sH8CJh4,588
375
375
  orionis/test/output/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
376
- orionis/test/output/dumper.py,sha256=BZlK3WZsfDiJnQupRSVkcy2linfIxGUycz4zWt3pQ_w,6035
377
- orionis/test/output/printer.py,sha256=3nevE9nyhMn0n8UpE-Nwsy4d1l3GE0wnBf4fAGPQxf4,29623
376
+ orionis/test/output/dumper.py,sha256=m68kaIuTs3G7H1B2ZthN_H52XeRHeO95cvNNDwzby0w,6030
377
+ orionis/test/output/printer.py,sha256=5BF8elV_CUhz2Gzc5zFZ8_Kq-cMTmYFLhDsEUX7o3kg,29643
378
378
  orionis/test/records/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
379
- orionis/test/records/logs.py,sha256=Dtu5HaWa2meblgTUXVAcOFaxkSJ3YxfDRaFoc_nhMCU,22043
379
+ orionis/test/records/logs.py,sha256=_kq3VLUCCuQzUYFUOoMXD5riPYQ3GdLHQR5TxwmylxE,21996
380
380
  orionis/test/validators/__init__.py,sha256=mhzMkpLPTyI8GMXYevIibRf1PnRDvSJLLDwjGhnvxes,875
381
381
  orionis/test/validators/base_path.py,sha256=wAn5_HG0vQ5GH7wDKriO33Ijl1L1F3882BH67oraJnQ,1477
382
382
  orionis/test/validators/execution_mode.py,sha256=YnrQlnIaoPtM0xjW7jJ2170m1aHwAPPIZBjSVe9g2QM,1693
@@ -392,10 +392,10 @@ orionis/test/validators/verbosity.py,sha256=rADzM82cPcJ2_6crszpobJuwb5WihWNQf6i4
392
392
  orionis/test/validators/web_report.py,sha256=n9BfzOZz6aEiNTypXcwuWbFRG0OdHNSmCNusHqc02R8,853
393
393
  orionis/test/validators/workers.py,sha256=rWcdRexINNEmGaO7mnc1MKUxkHKxrTsVuHgbnIfJYgc,1206
394
394
  orionis/test/view/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
395
- orionis/test/view/render.py,sha256=R55ykeRs0wDKcdTf4O1YZ8GDHTFmJ0IK6VQkbJkYUvo,5571
395
+ orionis/test/view/render.py,sha256=arysoswhkV2vUd2aVMZRPpmH317jaWbgjDpQ_AWQ5AE,5663
396
396
  orionis/test/view/report.stub,sha256=QLqqCdRoENr3ECiritRB3DO_MOjRQvgBh5jxZ3Hs1r0,28189
397
- orionis-0.665.0.dist-info/licenses/LICENCE,sha256=JhC-z_9mbpUrCfPjcl3DhDA8trNDMzb57cvRSam1avc,1463
398
- orionis-0.665.0.dist-info/METADATA,sha256=vVZ-n40guEps4IOFK7ter_-7a2FRU86htofwU41Lkx4,4772
399
- orionis-0.665.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
400
- orionis-0.665.0.dist-info/top_level.txt,sha256=lyXi6jArpqJ-0zzNqd_uwsH-z9TCEBVBL-pC3Ekv7hU,8
401
- orionis-0.665.0.dist-info/RECORD,,
397
+ orionis-0.666.0.dist-info/licenses/LICENCE,sha256=JhC-z_9mbpUrCfPjcl3DhDA8trNDMzb57cvRSam1avc,1463
398
+ orionis-0.666.0.dist-info/METADATA,sha256=uQChvkJgPGoWwmvThwqg0T4_y8KlXIU7AwGn-vrm69M,4772
399
+ orionis-0.666.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
400
+ orionis-0.666.0.dist-info/top_level.txt,sha256=lyXi6jArpqJ-0zzNqd_uwsH-z9TCEBVBL-pC3Ekv7hU,8
401
+ orionis-0.666.0.dist-info/RECORD,,