holado 0.4.1__tar.gz → 0.5.2__tar.gz

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.

Potentially problematic release.


This version of holado might be problematic. Click here for more details.

Files changed (739) hide show
  1. holado-0.5.2/.gitlab-ci.yml +82 -0
  2. {holado-0.4.1 → holado-0.5.2}/PKG-INFO +2 -1
  3. holado-0.5.2/packaging/VERSION +1 -0
  4. {holado-0.4.1 → holado-0.5.2}/packaging/generate_distribution_archive.sh +1 -1
  5. {holado-0.4.1 → holado-0.5.2}/pyproject.toml +2 -1
  6. {holado-0.4.1 → holado-0.5.2}/requirements_docker.txt +4 -1
  7. {holado-0.4.1 → holado-0.5.2}/src/holado/common/context/session_context.py +6 -0
  8. {holado-0.4.1 → holado-0.5.2}/src/holado/common/handlers/object.py +6 -0
  9. {holado-0.4.1 → holado-0.5.2}/src/holado_ais/ais/ais_messages.py +44 -15
  10. {holado-0.4.1 → holado-0.5.2}/src/holado_ais/ais/patch_pyais.py +47 -176
  11. {holado-0.4.1 → holado-0.5.2}/src/holado_ais/tests/behave/steps/ais/ais_messages_steps.py +2 -6
  12. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/resource/persisted_data_manager.py +4 -5
  13. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/resource/resource_manager.py +4 -18
  14. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/tools/converters/converter.py +14 -3
  15. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/tools/tools.py +9 -2
  16. {holado-0.4.1 → holado-0.5.2}/src/holado_core/tools/abstracts/blocking_command_service.py +9 -1
  17. holado-0.5.2/src/holado_data/data/generator/generator_manager.py +27 -0
  18. holado-0.5.2/src/holado_db/tools/db/clients/base/db_audit.py +94 -0
  19. {holado-0.4.1 → holado-0.5.2}/src/holado_db/tools/db/clients/base/db_client.py +145 -59
  20. holado-0.5.2/src/holado_db/tools/db/clients/postgresql/postgresql_audit.py +75 -0
  21. {holado-0.4.1 → holado-0.5.2}/src/holado_db/tools/db/clients/postgresql/postgresql_client.py +4 -0
  22. holado-0.5.2/src/holado_db/tools/db/clients/sqlite/sqlite_audit.py +70 -0
  23. {holado-0.4.1 → holado-0.5.2}/src/holado_db/tools/db/clients/sqlite/sqlite_client.py +4 -0
  24. holado-0.5.2/src/holado_django/server/HOWTO.txt +27 -0
  25. holado-0.5.2/src/holado_django/server/django_projects/rest_api/db.sqlite3 +0 -0
  26. holado-0.5.2/src/holado_django/server/django_projects/rest_api/manage.py +22 -0
  27. holado-0.5.2/src/holado_django/server/django_projects/rest_api/rest_api/application/admin.py +3 -0
  28. holado-0.5.2/src/holado_django/server/django_projects/rest_api/rest_api/application/apps.py +9 -0
  29. holado-0.5.2/src/holado_django/server/django_projects/rest_api/rest_api/application/models.py +3 -0
  30. holado-0.5.2/src/holado_django/server/django_projects/rest_api/rest_api/application/tests.py +3 -0
  31. holado-0.5.2/src/holado_django/server/django_projects/rest_api/rest_api/application/views.py +6 -0
  32. holado-0.5.2/src/holado_django/server/django_projects/rest_api/rest_api/asgi.py +16 -0
  33. holado-0.5.2/src/holado_django/server/django_projects/rest_api/rest_api/settings.py +130 -0
  34. holado-0.5.2/src/holado_django/server/django_projects/rest_api/rest_api/urls.py +35 -0
  35. holado-0.5.2/src/holado_django/server/django_projects/rest_api/rest_api/wsgi.py +16 -0
  36. holado-0.5.2/src/holado_django/server/django_server.py +110 -0
  37. holado-0.5.2/src/holado_django/server/grpc_django_server.py +57 -0
  38. holado-0.5.2/src/holado_django/server/patch_djangogrpcframework.py +46 -0
  39. holado-0.5.2/src/holado_django/tests/behave/steps/__init__.py +16 -0
  40. holado-0.5.2/src/holado_django/tests/behave/steps/django_server_steps.py +83 -0
  41. holado-0.5.2/src/holado_examples/projects/server_rest/server_rest_example/rest_api/db.sqlite3 +0 -0
  42. holado-0.5.2/src/holado_examples/projects/server_rest/server_rest_example/rest_api/manage.py +22 -0
  43. holado-0.5.2/src/holado_examples/projects/server_rest/server_rest_example/rest_api/rest_api/application/admin.py +3 -0
  44. holado-0.5.2/src/holado_examples/projects/server_rest/server_rest_example/rest_api/rest_api/application/apps.py +7 -0
  45. holado-0.5.2/src/holado_examples/projects/server_rest/server_rest_example/rest_api/rest_api/application/models.py +3 -0
  46. holado-0.5.2/src/holado_examples/projects/server_rest/server_rest_example/rest_api/rest_api/application/tests.py +3 -0
  47. holado-0.5.2/src/holado_examples/projects/server_rest/server_rest_example/rest_api/rest_api/application/views.py +24 -0
  48. holado-0.5.2/src/holado_examples/projects/server_rest/server_rest_example/rest_api/rest_api/asgi.py +16 -0
  49. holado-0.5.2/src/holado_examples/projects/server_rest/server_rest_example/rest_api/rest_api/settings.py +130 -0
  50. holado-0.5.2/src/holado_examples/projects/server_rest/server_rest_example/rest_api/rest_api/urls.py +31 -0
  51. holado-0.5.2/src/holado_examples/projects/server_rest/server_rest_example/rest_api/rest_api/wsgi.py +16 -0
  52. holado-0.5.2/src/holado_examples/projects/server_rest/server_rest_example/rest_server.py +37 -0
  53. {holado-0.4.1 → holado-0.5.2}/src/holado_grpc/tests/behave/steps/private/api/grpc_steps.py +9 -9
  54. holado-0.5.2/src/holado_helper/initialize_holado.py +72 -0
  55. {holado-0.4.1 → holado-0.5.2}/src/holado_logging/common/logging/holado_logger.py +1 -6
  56. {holado-0.4.1 → holado-0.5.2}/src/holado_multitask/multitasking/multitask_manager.py +36 -10
  57. {holado-0.4.1 → holado-0.5.2}/src/holado_multitask/multithreading/thread.py +13 -7
  58. {holado-0.4.1 → holado-0.5.2}/src/holado_multitask/multithreading/timer.py +3 -0
  59. {holado-0.4.1 → holado-0.5.2}/src/holado_python/common/tools/datetime.py +31 -13
  60. holado-0.5.2/src/holado_python/standard_library/ssl/resources/certificates/tcpbin.crt +21 -0
  61. holado-0.5.2/src/holado_python/standard_library/ssl/resources/certificates/tcpbin.key +28 -0
  62. {holado-0.4.1 → holado-0.5.2}/src/holado_rabbitmq/tools/rabbitmq/rabbitmq_blocking_client.py +24 -2
  63. {holado-0.4.1 → holado-0.5.2}/src/holado_rabbitmq/tools/rabbitmq/rabbitmq_client.py +2 -2
  64. holado-0.5.2/src/holado_report/report/builders/failure_report_builder.py +129 -0
  65. {holado-0.4.1 → holado-0.5.2}/src/holado_report/report/report_manager.py +4 -0
  66. holado-0.5.2/src/holado_rest/api/rest/TODO.txt +2 -0
  67. {holado-0.4.1 → holado-0.5.2}/src/holado_rest/api/rest/rest_client.py +19 -7
  68. {holado-0.4.1 → holado-0.5.2}/src/holado_rest/tests/behave/steps/api/rest_client_steps.py +1 -2
  69. {holado-0.4.1 → holado-0.5.2}/src/holado_rest/tests/behave/steps/private/api/rest_steps.py +11 -13
  70. {holado-0.4.1 → holado-0.5.2}/src/holado_system/system/command/command.py +31 -9
  71. {holado-0.4.1 → holado-0.5.2}/src/holado_system/system/global_system.py +3 -3
  72. holado-0.5.2/src/holado_yaml/__init__.py +31 -0
  73. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/environment.py +6 -4
  74. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/features/NonReg/api/REST.feature +7 -2
  75. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/features/NonReg/api/gRPC.feature +0 -6
  76. holado-0.5.2/tests/behave/test_holado/features/NonReg/holado_ais/message_types/type-10.feature +38 -0
  77. holado-0.5.2/tests/behave/test_holado/features/NonReg/holado_ais/message_types/type-12.feature +37 -0
  78. holado-0.5.2/tests/behave/test_holado/features/NonReg/holado_ais/message_types/type-14.feature +36 -0
  79. holado-0.5.2/tests/behave/test_holado/features/NonReg/holado_ais/message_types/type-15.feature +36 -0
  80. holado-0.5.2/tests/behave/test_holado/features/NonReg/holado_ais/message_types/type-16.feature +38 -0
  81. holado-0.5.2/tests/behave/test_holado/features/NonReg/holado_ais/message_types/type-17.feature +46 -0
  82. holado-0.5.2/tests/behave/test_holado/features/NonReg/holado_ais/message_types/type-18.feature +37 -0
  83. holado-0.5.2/tests/behave/test_holado/features/NonReg/holado_ais/message_types/type-19.feature +38 -0
  84. holado-0.5.2/tests/behave/test_holado/features/NonReg/holado_ais/message_types/type-1_2_3.feature +42 -0
  85. holado-0.5.2/tests/behave/test_holado/features/NonReg/holado_ais/message_types/type-20.feature +38 -0
  86. holado-0.5.2/tests/behave/test_holado/features/NonReg/holado_ais/message_types/type-21.feature +37 -0
  87. holado-0.5.2/tests/behave/test_holado/features/NonReg/holado_ais/message_types/type-22.feature +84 -0
  88. holado-0.5.2/tests/behave/test_holado/features/NonReg/holado_ais/message_types/type-23.feature +49 -0
  89. holado-0.5.2/tests/behave/test_holado/features/NonReg/holado_ais/message_types/type-24.feature +72 -0
  90. holado-0.5.2/tests/behave/test_holado/features/NonReg/holado_ais/message_types/type-25.feature +143 -0
  91. holado-0.5.2/tests/behave/test_holado/features/NonReg/holado_ais/message_types/type-26.feature +144 -0
  92. holado-0.5.2/tests/behave/test_holado/features/NonReg/holado_ais/message_types/type-27.feature +36 -0
  93. holado-0.5.2/tests/behave/test_holado/features/NonReg/holado_ais/message_types/type-4_11.feature +39 -0
  94. holado-0.5.2/tests/behave/test_holado/features/NonReg/holado_ais/message_types/type-5.feature +33 -0
  95. holado-0.5.2/tests/behave/test_holado/features/NonReg/holado_ais/message_types/type-6.feature +37 -0
  96. holado-0.5.2/tests/behave/test_holado/features/NonReg/holado_ais/message_types/type-7_13.feature +43 -0
  97. holado-0.5.2/tests/behave/test_holado/features/NonReg/holado_ais/message_types/type-8.feature +37 -0
  98. holado-0.5.2/tests/behave/test_holado/features/NonReg/holado_ais/message_types/type-9.feature +37 -0
  99. holado-0.5.2/tests/behave/test_holado/initialize_holado.py +62 -0
  100. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/logging.conf +3 -0
  101. holado-0.5.2/tests/behave/test_holado/tools/django/api_grpc/api_grpc/api1/__init__.py +0 -0
  102. holado-0.5.2/tests/behave/test_holado/tools/django/api_grpc/api_grpc/api1/migrations/__init__.py +0 -0
  103. holado-0.5.2/tests/behave/test_holado/tools/django/api_grpc/api_grpc/api1/proto/__init__.py +0 -0
  104. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/tools/django/api_grpc/manage.py +2 -0
  105. holado-0.5.2/tests/behave/test_holado/tools/django/api_grpc/patch_djangogrpcframework.py +42 -0
  106. holado-0.5.2/tests/behave/test_holado/tools/django/api_rest/api_rest/__init__.py +0 -0
  107. holado-0.5.2/tests/behave/test_holado/tools/django/api_rest/api_rest/api1/__init__.py +0 -0
  108. holado-0.5.2/tests/behave/test_holado/tools/django/api_rest/api_rest/api1/migrations/__init__.py +0 -0
  109. holado-0.5.2/tests/behave/test_holado/tools/django/api_rest/api_rest/api1/serializers.py +15 -0
  110. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/tools/django/api_rest/db.sqlite3 +0 -0
  111. holado-0.4.1/.gitlab-ci.yml +0 -26
  112. holado-0.4.1/packaging/VERSION +0 -1
  113. holado-0.4.1/src/holado_data/data/generator/generator_manager.py +0 -39
  114. holado-0.4.1/src/holado_python/standard_library/ssl/resources/certificates/tcpbin.crt +0 -21
  115. holado-0.4.1/src/holado_python/standard_library/ssl/resources/certificates/tcpbin.key +0 -28
  116. holado-0.4.1/src/holado_rest/api/rest/TODO.txt +0 -2
  117. {holado-0.4.1 → holado-0.5.2}/.gitignore +0 -0
  118. {holado-0.4.1 → holado-0.5.2}/Dockerfile +0 -0
  119. {holado-0.4.1 → holado-0.5.2}/INSTALL +0 -0
  120. {holado-0.4.1 → holado-0.5.2}/LICENSE +0 -0
  121. {holado-0.4.1 → holado-0.5.2}/NOTES.md +0 -0
  122. {holado-0.4.1 → holado-0.5.2}/README.md +0 -0
  123. {holado-0.4.1 → holado-0.5.2}/README.rst +0 -0
  124. {holado-0.4.1 → holado-0.5.2}/TODO +0 -0
  125. {holado-0.4.1 → holado-0.5.2}/dependencies/protoc/README.txt +0 -0
  126. {holado-0.4.1 → holado-0.5.2}/packaging/publish_distribution_archive.sh +0 -0
  127. {holado-0.4.1 → holado-0.5.2}/packaging/publish_distribution_archive_on_testpypi.sh +0 -0
  128. {holado-0.4.1 → holado-0.5.2}/requirements.txt +0 -0
  129. {holado-0.4.1 → holado-0.5.2}/resources/scripts/generate_scenario_duration_limits.py +0 -0
  130. {holado-0.4.1 → holado-0.5.2}/resources/scripts/generate_scenario_duration_tags.py +0 -0
  131. {holado-0.4.1 → holado-0.5.2}/resources/scripts/print_execution_historic.py +0 -0
  132. {holado-0.4.1 → holado-0.5.2}/resources/scripts/update_scenario_duration_tags.py +0 -0
  133. {holado-0.4.1 → holado-0.5.2}/resources/ssh/id_rsa +0 -0
  134. {holado-0.4.1 → holado-0.5.2}/resources/ssh/id_rsa.pub +0 -0
  135. {holado-0.4.1 → holado-0.5.2}/run_test.sh +0 -0
  136. {holado-0.4.1 → holado-0.5.2}/run_test_draft.sh +0 -0
  137. {holado-0.4.1 → holado-0.5.2}/run_test_needupdate.sh +0 -0
  138. {holado-0.4.1 → holado-0.5.2}/run_test_nonreg.sh +0 -0
  139. {holado-0.4.1 → holado-0.5.2}/src/holado/__init__.py +0 -0
  140. {holado-0.4.1 → holado-0.5.2}/src/holado/common/__init__.py +0 -0
  141. {holado-0.4.1 → holado-0.5.2}/src/holado/common/context/__init__.py +0 -0
  142. {holado-0.4.1 → holado-0.5.2}/src/holado/common/context/context.py +0 -0
  143. {holado-0.4.1 → holado-0.5.2}/src/holado/common/context/service_manager.py +0 -0
  144. {holado-0.4.1 → holado-0.5.2}/src/holado/common/handlers/__init__.py +0 -0
  145. {holado-0.4.1 → holado-0.5.2}/src/holado/common/handlers/enums.py +0 -0
  146. {holado-0.4.1 → holado-0.5.2}/src/holado/common/handlers/undefined.py +0 -0
  147. {holado-0.4.1 → holado-0.5.2}/src/holado/common/tools/__init__.py +0 -0
  148. {holado-0.4.1 → holado-0.5.2}/src/holado/common/tools/gc_manager.py +0 -0
  149. {holado-0.4.1 → holado-0.5.2}/src/holado/holado_config.py +0 -0
  150. {holado-0.4.1 → holado-0.5.2}/src/holado_ais/__init__.py +0 -0
  151. {holado-0.4.1 → holado-0.5.2}/src/holado_ais/ais/MaritimeIdentificationDigits.csv +0 -0
  152. {holado-0.4.1 → holado-0.5.2}/src/holado_ais/ais/ais_manager.py +0 -0
  153. {holado-0.4.1 → holado-0.5.2}/src/holado_ais/ais/ais_payload.py +0 -0
  154. {holado-0.4.1 → holado-0.5.2}/src/holado_ais/ais/enums.py +0 -0
  155. {holado-0.4.1 → holado-0.5.2}/src/holado_ais/tests/behave/steps/__init__.py +0 -0
  156. {holado-0.4.1 → holado-0.5.2}/src/holado_ais/tests/behave/steps/ais/__init__.py +0 -0
  157. {holado-0.4.1 → holado-0.5.2}/src/holado_ais/tests/behave/steps/ais/ais_manager_steps.py +0 -0
  158. {holado-0.4.1 → holado-0.5.2}/src/holado_binary/__init__.py +0 -0
  159. {holado-0.4.1 → holado-0.5.2}/src/holado_binary/ipc/binary.py +0 -0
  160. {holado-0.4.1 → holado-0.5.2}/src/holado_binary/ipc/bit_series.py +0 -0
  161. {holado-0.4.1 → holado-0.5.2}/src/holado_binary/tests/behave/steps/__init__.py +0 -0
  162. {holado-0.4.1 → holado-0.5.2}/src/holado_binary/tests/behave/steps/ipc/binary_steps.py +0 -0
  163. {holado-0.4.1 → holado-0.5.2}/src/holado_binary/tests/behave/steps/ipc/bit_series_steps.py +0 -0
  164. {holado-0.4.1 → holado-0.5.2}/src/holado_context/__init__.py +0 -0
  165. {holado-0.4.1 → holado-0.5.2}/src/holado_context/tests/behave/steps/__init__.py +0 -0
  166. {holado-0.4.1 → holado-0.5.2}/src/holado_context/tests/behave/steps/private/__init__.py +0 -0
  167. {holado-0.4.1 → holado-0.5.2}/src/holado_context/tests/behave/steps/private/common/context_steps.py +0 -0
  168. {holado-0.4.1 → holado-0.5.2}/src/holado_core/__init__.py +0 -0
  169. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/__init__.py +0 -0
  170. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/actors/actions.py +0 -0
  171. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/actors/actor.py +0 -0
  172. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/actors/element_actor.py +0 -0
  173. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/actors/find_actor.py +0 -0
  174. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/actors/tree_actor.py +0 -0
  175. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/actors/verify_actions.py +0 -0
  176. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/block/base.py +0 -0
  177. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/block/block_manager.py +0 -0
  178. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/block/block_method.py +0 -0
  179. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/block/block_steps.py +0 -0
  180. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/block/function.py +0 -0
  181. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/block/scope_function.py +0 -0
  182. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/block/scope_manager.py +0 -0
  183. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/block/scope_steps.py +0 -0
  184. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/criterias/and_criteria.py +0 -0
  185. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/criterias/criteria.py +0 -0
  186. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/criterias/or_criteria.py +0 -0
  187. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/criterias/tools/criteria_context.py +0 -0
  188. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/criterias/tools/criteria_parameters.py +0 -0
  189. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/drivers/driver.py +0 -0
  190. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/drivers/element_driver.py +0 -0
  191. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/drivers/element_internal_api.py +0 -0
  192. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/drivers/internal_api.py +0 -0
  193. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/drivers/tree_driver.py +0 -0
  194. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/drivers/tree_internal_api.py +0 -0
  195. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/exceptions/__init__.py +0 -0
  196. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/exceptions/element_exception.py +0 -0
  197. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/exceptions/exceptions.py +0 -0
  198. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/exceptions/functional_exception.py +0 -0
  199. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/exceptions/holado_exception.py +0 -0
  200. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/exceptions/technical_exception.py +0 -0
  201. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/exceptions/timeout_exception.py +0 -0
  202. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/exceptions/verify_exception.py +0 -0
  203. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/finders/after_in_tree_finder.py +0 -0
  204. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/finders/element_finder.py +0 -0
  205. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/finders/else_finder.py +0 -0
  206. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/finders/finder.py +0 -0
  207. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/finders/or_finder.py +0 -0
  208. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/finders/then_finder.py +0 -0
  209. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/finders/tools/enums.py +0 -0
  210. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/finders/tools/find_builder.py +0 -0
  211. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/finders/tools/find_context.py +0 -0
  212. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/finders/tools/find_info.py +0 -0
  213. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/finders/tools/find_parameters.py +0 -0
  214. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/finders/tools/find_updater.py +0 -0
  215. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/finders/tools/finder_info.py +0 -0
  216. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/finders/tree_finder.py +0 -0
  217. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/handlers/__init__.py +0 -0
  218. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/handlers/abstracts/base_redo.py +0 -0
  219. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/handlers/abstracts/get_or_create.py +0 -0
  220. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/handlers/element_holder.py +0 -0
  221. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/handlers/enums.py +0 -0
  222. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/handlers/exceptions/redo_exceptions.py +0 -0
  223. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/handlers/features/resource_by_name.py +0 -0
  224. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/handlers/features/resource_by_type.py +0 -0
  225. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/handlers/redo.py +0 -0
  226. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/handlers/wait.py +0 -0
  227. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/inspectors/element_inspector.py +0 -0
  228. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/inspectors/inspector.py +0 -0
  229. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/inspectors/tools/inspect_builder.py +0 -0
  230. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/inspectors/tools/inspect_context.py +0 -0
  231. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/inspectors/tools/inspect_parameters.py +0 -0
  232. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/inspectors/tree_inspector.py +0 -0
  233. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/resource/persisted_method_to_call_manager.py +0 -0
  234. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/tables/__init__.py +0 -0
  235. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/tables/comparators/__init__.py +0 -0
  236. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/tables/comparators/boolean_table_cell_comparator.py +0 -0
  237. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/tables/comparators/bytes_table_cell_comparator.py +0 -0
  238. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/tables/comparators/datetime_table_cell_comparator.py +0 -0
  239. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/tables/comparators/float_table_cell_comparator.py +0 -0
  240. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/tables/comparators/integer_table_cell_comparator.py +0 -0
  241. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/tables/comparators/internal_table_cell_comparator.py +0 -0
  242. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/tables/comparators/string_table_cell_comparator.py +0 -0
  243. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/tables/comparators/string_table_comparator.py +0 -0
  244. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/tables/comparators/string_table_row_comparator.py +0 -0
  245. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/tables/comparators/table_cell_comparator.py +0 -0
  246. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/tables/comparators/table_comparator.py +0 -0
  247. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/tables/comparators/table_comparator_manager.py +0 -0
  248. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/tables/comparators/table_row_comparator.py +0 -0
  249. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/tables/comparators/table_with_header_comparator.py +0 -0
  250. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/tables/converters/__init__.py +0 -0
  251. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/tables/converters/table_converter.py +0 -0
  252. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/tables/enums.py +0 -0
  253. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/tables/table.py +0 -0
  254. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/tables/table_cell.py +0 -0
  255. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/tables/table_manager.py +0 -0
  256. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/tables/table_row.py +0 -0
  257. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/tables/table_with_header.py +0 -0
  258. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/tools/__init__.py +0 -0
  259. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/tools/comparators/comparator.py +0 -0
  260. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/tools/comparators/object_comparator.py +0 -0
  261. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/tools/path_manager.py +0 -0
  262. {holado-0.4.1 → holado-0.5.2}/src/holado_core/common/tools/string_tools.py +0 -0
  263. {holado-0.4.1 → holado-0.5.2}/src/holado_core/tests/behave/steps/__init__.py +0 -0
  264. {holado-0.4.1 → holado-0.5.2}/src/holado_core/tests/behave/steps/common/__init__.py +0 -0
  265. {holado-0.4.1 → holado-0.5.2}/src/holado_core/tests/behave/steps/common/common_steps.py +0 -0
  266. {holado-0.4.1 → holado-0.5.2}/src/holado_core/tests/behave/steps/common/config_steps.py +0 -0
  267. {holado-0.4.1 → holado-0.5.2}/src/holado_core/tests/behave/steps/common/resource_steps.py +0 -0
  268. {holado-0.4.1 → holado-0.5.2}/src/holado_core/tests/behave/steps/common/tables_steps.py +0 -0
  269. {holado-0.4.1 → holado-0.5.2}/src/holado_core/tools/__init__.py +0 -0
  270. {holado-0.4.1 → holado-0.5.2}/src/holado_core/tools/abstracts/__init__.py +0 -0
  271. {holado-0.4.1 → holado-0.5.2}/src/holado_core/tools/abstracts/service.py +0 -0
  272. {holado-0.4.1 → holado-0.5.2}/src/holado_crypto/__init__.py +0 -0
  273. {holado-0.4.1 → holado-0.5.2}/src/holado_crypto/crypto/transport/__init__.py +0 -0
  274. {holado-0.4.1 → holado-0.5.2}/src/holado_crypto/crypto/transport/crc.py +0 -0
  275. {holado-0.4.1 → holado-0.5.2}/src/holado_crypto/test/behave/steps/__init__.py +0 -0
  276. {holado-0.4.1 → holado-0.5.2}/src/holado_data/__init__.py +0 -0
  277. {holado-0.4.1 → holado-0.5.2}/src/holado_data/data/generator/base.py +0 -0
  278. {holado-0.4.1 → holado-0.5.2}/src/holado_data/data/generator/python_generator.py +0 -0
  279. {holado-0.4.1 → holado-0.5.2}/src/holado_data/tests/behave/steps/__init__.py +0 -0
  280. {holado-0.4.1 → holado-0.5.2}/src/holado_data/tests/behave/steps/data/generator_steps.py +0 -0
  281. {holado-0.4.1 → holado-0.5.2}/src/holado_data/tests/behave/steps/tools/utils_steps.py +0 -0
  282. {holado-0.4.1 → holado-0.5.2}/src/holado_db/__init__.py +0 -0
  283. {holado-0.4.1 → holado-0.5.2}/src/holado_db/tests/behave/steps/__init__.py +0 -0
  284. {holado-0.4.1 → holado-0.5.2}/src/holado_db/tests/behave/steps/tools/db/db_client_steps.py +0 -0
  285. {holado-0.4.1 → holado-0.5.2}/src/holado_db/tests/behave/steps/tools/db/postgresql_client_steps.py +0 -0
  286. {holado-0.4.1 → holado-0.5.2}/src/holado_db/tests/behave/steps/tools/db/sqlite_client_steps.py +0 -0
  287. {holado-0.4.1 → holado-0.5.2}/src/holado_db/tools/db/db_manager.py +0 -0
  288. {holado-0.4.1 → holado-0.5.2}/src/holado_db/tools/db/query/base/query_builder.py +0 -0
  289. {holado-0.4.1 → holado-0.5.2}/src/holado_db/tools/db/query/pypika/pypika_query_builder.py +0 -0
  290. {holado-0.4.1 → holado-0.5.2}/src/holado_db/tools/db/query/query_manager.py +0 -0
  291. {holado-0.4.1/src/holado_helper/holado_module_template → holado-0.5.2/src/holado_django}/__init__.py +0 -0
  292. {holado-0.4.1/src/holado_grpc/ipc/rpc → holado-0.5.2/src/holado_django/server/django_projects/rest_api/rest_api}/__init__.py +0 -0
  293. {holado-0.4.1/src/holado_json/tests/behave/steps/ipc → holado-0.5.2/src/holado_django/server/django_projects/rest_api/rest_api/application}/__init__.py +0 -0
  294. {holado-0.4.1/src/holado_keycloak/tools/keycloak → holado-0.5.2/src/holado_django/server/django_projects/rest_api/rest_api/application/migrations}/__init__.py +0 -0
  295. {holado-0.4.1 → holado-0.5.2}/src/holado_docker/__init__.py +0 -0
  296. {holado-0.4.1 → holado-0.5.2}/src/holado_docker/sdk/docker/docker_client.py +0 -0
  297. {holado-0.4.1 → holado-0.5.2}/src/holado_docker/sdk/docker/docker_service.py +0 -0
  298. {holado-0.4.1 → holado-0.5.2}/src/holado_docker/tests/behave/steps/__init__.py +0 -0
  299. {holado-0.4.1 → holado-0.5.2}/src/holado_docker/tests/behave/steps/tools/docker_steps.py +0 -0
  300. {holado-0.4.1 → holado-0.5.2}/src/holado_docker/tools/docker_controler/__init__.py +0 -0
  301. {holado-0.4.1 → holado-0.5.2}/src/holado_docker/tools/docker_controler/docker_controler_client.py +0 -0
  302. {holado-0.4.1 → holado-0.5.2}/src/holado_docker/tools/docker_controler/docker_controler_server.py +0 -0
  303. {holado-0.4.1 → holado-0.5.2}/src/holado_docker/tools/docker_controler/proto/compile_proto.py +0 -0
  304. {holado-0.4.1 → holado-0.5.2}/src/holado_docker/tools/docker_controler/proto/definitions/docker_controler.proto +0 -0
  305. {holado-0.4.1 → holado-0.5.2}/src/holado_docker/tools/docker_controler/proto/generated/docker_controler_pb2.py +0 -0
  306. {holado-0.4.1 → holado-0.5.2}/src/holado_docker/tools/docker_controler/proto/generated/docker_controler_pb2_grpc.py +0 -0
  307. {holado-0.4.1/src/holado_helper → holado-0.5.2/src/holado_examples/projects/server_rest/server_rest_example}/initialize_holado.py +0 -0
  308. {holado-0.4.1/src/holado_multitask/multithreading → holado-0.5.2/src/holado_examples/projects/server_rest/server_rest_example/rest_api/rest_api}/__init__.py +0 -0
  309. {holado-0.4.1/src/holado_protobuf/ipc/protobuf → holado-0.5.2/src/holado_examples/projects/server_rest/server_rest_example/rest_api/rest_api/application}/__init__.py +0 -0
  310. {holado-0.4.1/src/holado_protobuf/ipc/protobuf/types → holado-0.5.2/src/holado_examples/projects/server_rest/server_rest_example/rest_api/rest_api/application/migrations}/__init__.py +0 -0
  311. {holado-0.4.1/tests/behave/test_holado/tools/django/api_rest/api_rest/api1 → holado-0.5.2/src/holado_examples/projects/server_rest/server_rest_example/rest_api/rest_api/application}/serializers.py +0 -0
  312. {holado-0.4.1 → holado-0.5.2}/src/holado_examples/scripts/script_custom_initialization.py +0 -0
  313. {holado-0.4.1 → holado-0.5.2}/src/holado_examples/scripts/script_minimal_initialization.py +0 -0
  314. {holado-0.4.1 → holado-0.5.2}/src/holado_examples/tests/behave/testing_solution/__main__.py +0 -0
  315. {holado-0.4.1 → holado-0.5.2}/src/holado_examples/tests/behave/testing_solution/behave_environment.py +0 -0
  316. {holado-0.4.1 → holado-0.5.2}/src/holado_examples/tests/behave/testing_solution/environment.py +0 -0
  317. {holado-0.4.1 → holado-0.5.2}/src/holado_examples/tests/behave/testing_solution/features/Configuration/Actions/configure_system.feature +0 -0
  318. {holado-0.4.1 → holado-0.5.2}/src/holado_examples/tests/behave/testing_solution/features/NonReg/example.feature +0 -0
  319. {holado-0.4.1 → holado-0.5.2}/src/holado_examples/tests/behave/testing_solution/initialize_holado.py +0 -0
  320. {holado-0.4.1 → holado-0.5.2}/src/holado_examples/tests/behave/testing_solution/logging.conf +0 -0
  321. {holado-0.4.1 → holado-0.5.2}/src/holado_examples/tests/behave/testing_solution/requirements.txt +0 -0
  322. {holado-0.4.1 → holado-0.5.2}/src/holado_examples/tests/behave/testing_solution/run_test.sh +0 -0
  323. {holado-0.4.1 → holado-0.5.2}/src/holado_examples/tests/behave/testing_solution/run_test_nonreg.sh +0 -0
  324. {holado-0.4.1 → holado-0.5.2}/src/holado_examples/tests/behave/testing_solution/src/common/tools/path_manager.py +0 -0
  325. {holado-0.4.1 → holado-0.5.2}/src/holado_examples/tests/behave/testing_solution/src/config/config_manager.py +0 -0
  326. {holado-0.4.1 → holado-0.5.2}/src/holado_examples/tests/behave/testing_solution/src/context/session_context.py +0 -0
  327. {holado-0.4.1 → holado-0.5.2}/src/holado_examples/tests/behave/testing_solution/steps/config_steps.py +0 -0
  328. {holado-0.4.1 → holado-0.5.2}/src/holado_examples/tests/behave/testing_solution/steps/public_steps.py +0 -0
  329. {holado-0.4.1 → holado-0.5.2}/src/holado_grpc/__init__.py +0 -0
  330. {holado-0.4.1 → holado-0.5.2}/src/holado_grpc/api/rpc/TODO.txt +0 -0
  331. {holado-0.4.1 → holado-0.5.2}/src/holado_grpc/api/rpc/grpc_client.py +0 -0
  332. {holado-0.4.1 → holado-0.5.2}/src/holado_grpc/api/rpc/grpc_manager.py +0 -0
  333. {holado-0.4.1/src/holado_protobuf/ipc/protobuf/types/google → holado-0.5.2/src/holado_grpc/ipc/rpc}/__init__.py +0 -0
  334. {holado-0.4.1 → holado-0.5.2}/src/holado_grpc/ipc/rpc/grpc_compiler.py +0 -0
  335. {holado-0.4.1 → holado-0.5.2}/src/holado_grpc/ipc/rpc/grpc_services.py +0 -0
  336. {holado-0.4.1 → holado-0.5.2}/src/holado_grpc/tests/behave/steps/__init__.py +0 -0
  337. {holado-0.4.1 → holado-0.5.2}/src/holado_grpc/tests/behave/steps/api/grpc_client_steps.py +0 -0
  338. {holado-0.4.1 → holado-0.5.2}/src/holado_grpc/tests/behave/steps/private/__init__.py +0 -0
  339. {holado-0.4.1 → holado-0.5.2}/src/holado_helper/__init__.py +0 -0
  340. {holado-0.4.1 → holado-0.5.2}/src/holado_helper/debug/README.txt +0 -0
  341. {holado-0.4.1 → holado-0.5.2}/src/holado_helper/debug/memory/memory_profiler.py +0 -0
  342. {holado-0.4.1 → holado-0.5.2}/src/holado_helper/docker/init_user.sh +0 -0
  343. {holado-0.4.1 → holado-0.5.2}/src/holado_helper/docker/logging.conf +0 -0
  344. {holado-0.4.1 → holado-0.5.2}/src/holado_helper/docker/run_holado_test_nonreg_in_docker.sh +0 -0
  345. {holado-0.4.1 → holado-0.5.2}/src/holado_helper/docker/run_terminal_in_docker-with_docker_control.sh +0 -0
  346. {holado-0.4.1 → holado-0.5.2}/src/holado_helper/docker/run_terminal_in_docker.sh +0 -0
  347. {holado-0.4.1/src/holado_yaml → holado-0.5.2/src/holado_helper/holado_module_template}/__init__.py +0 -0
  348. {holado-0.4.1/src/holado_helper/holado_module_template/test → holado-0.5.2/src/holado_helper/holado_module_template/tests}/behave/steps/__init__.py +0 -0
  349. {holado-0.4.1/src/holado_helper/holado_module_template/test → holado-0.5.2/src/holado_helper/holado_module_template/tests}/behave/steps/private/__init__.py +0 -0
  350. {holado-0.4.1 → holado-0.5.2}/src/holado_helper/script/action.py +0 -0
  351. {holado-0.4.1 → holado-0.5.2}/src/holado_helper/script/action_script.py +0 -0
  352. {holado-0.4.1 → holado-0.5.2}/src/holado_helper/script/any_action_script.py +0 -0
  353. {holado-0.4.1 → holado-0.5.2}/src/holado_helper/script/behave_action_script.py +0 -0
  354. {holado-0.4.1 → holado-0.5.2}/src/holado_helper/script/csv_action_script.py +0 -0
  355. {holado-0.4.1 → holado-0.5.2}/src/holado_helper/script/initialize_script.py +0 -0
  356. {holado-0.4.1 → holado-0.5.2}/src/holado_helper/script/input_output_script.py +0 -0
  357. {holado-0.4.1 → holado-0.5.2}/src/holado_helper/script/job.py +0 -0
  358. {holado-0.4.1 → holado-0.5.2}/src/holado_helper/script/json_action_script.py +0 -0
  359. {holado-0.4.1 → holado-0.5.2}/src/holado_helper/script/script.py +0 -0
  360. {holado-0.4.1 → holado-0.5.2}/src/holado_json/__init__.py +0 -0
  361. {holado-0.4.1 → holado-0.5.2}/src/holado_json/ipc/json.py +0 -0
  362. {holado-0.4.1 → holado-0.5.2}/src/holado_json/ipc/json_converter.py +0 -0
  363. {holado-0.4.1 → holado-0.5.2}/src/holado_json/ipc/json_types.py +0 -0
  364. {holado-0.4.1 → holado-0.5.2}/src/holado_json/tests/behave/steps/__init__.py +0 -0
  365. {holado-0.4.1/src/holado_rest/tests/behave/steps/api → holado-0.5.2/src/holado_json/tests/behave/steps/ipc}/__init__.py +0 -0
  366. {holado-0.4.1 → holado-0.5.2}/src/holado_json/tests/behave/steps/ipc/json_steps.py +0 -0
  367. {holado-0.4.1 → holado-0.5.2}/src/holado_keycloak/__init__.py +0 -0
  368. {holado-0.4.1 → holado-0.5.2}/src/holado_keycloak/tests/behave/steps/__init__.py +0 -0
  369. {holado-0.4.1 → holado-0.5.2}/src/holado_keycloak/tests/behave/steps/tools/keycloak_client_steps.py +0 -0
  370. {holado-0.4.1/src/holado_rest/tests/behave/steps/private/api → holado-0.5.2/src/holado_keycloak/tools/keycloak}/__init__.py +0 -0
  371. {holado-0.4.1 → holado-0.5.2}/src/holado_keycloak/tools/keycloak/keycloak_client.py +0 -0
  372. {holado-0.4.1 → holado-0.5.2}/src/holado_logging/__init__.py +0 -0
  373. {holado-0.4.1 → holado-0.5.2}/src/holado_logging/common/logging/log_config.py +0 -0
  374. {holado-0.4.1 → holado-0.5.2}/src/holado_logging/common/logging/log_manager.py +0 -0
  375. {holado-0.4.1 → holado-0.5.2}/src/holado_multitask/__init__.py +0 -0
  376. {holado-0.4.1 → holado-0.5.2}/src/holado_multitask/multiprocessing/context/process_context.py +0 -0
  377. {holado-0.4.1 → holado-0.5.2}/src/holado_multitask/multiprocessing/function_process.py +0 -0
  378. {holado-0.4.1 → holado-0.5.2}/src/holado_multitask/multiprocessing/periodic_function_process.py +0 -0
  379. {holado-0.4.1 → holado-0.5.2}/src/holado_multitask/multiprocessing/process.py +0 -0
  380. {holado-0.4.1 → holado-0.5.2}/src/holado_multitask/multiprocessing/processesmanager.py +0 -0
  381. {holado-0.4.1/src/holado_s3/tools/s3 → holado-0.5.2/src/holado_multitask/multithreading}/__init__.py +0 -0
  382. {holado-0.4.1 → holado-0.5.2}/src/holado_multitask/multithreading/context/thread_context.py +0 -0
  383. {holado-0.4.1 → holado-0.5.2}/src/holado_multitask/multithreading/functionthreaded.py +0 -0
  384. {holado-0.4.1 → holado-0.5.2}/src/holado_multitask/multithreading/loopfunctionthreaded.py +0 -0
  385. {holado-0.4.1 → holado-0.5.2}/src/holado_multitask/multithreading/loopthread.py +0 -0
  386. {holado-0.4.1 → holado-0.5.2}/src/holado_multitask/multithreading/periodicfunctionthreaded.py +0 -0
  387. {holado-0.4.1 → holado-0.5.2}/src/holado_multitask/multithreading/reflection/inspect.py +0 -0
  388. {holado-0.4.1 → holado-0.5.2}/src/holado_multitask/multithreading/reflection/sys.py +0 -0
  389. {holado-0.4.1 → holado-0.5.2}/src/holado_multitask/multithreading/reflection/traceback.py +0 -0
  390. {holado-0.4.1 → holado-0.5.2}/src/holado_multitask/multithreading/threadsmanager.py +0 -0
  391. {holado-0.4.1 → holado-0.5.2}/src/holado_multitask/tests/behave/steps/__init__.py +0 -0
  392. {holado-0.4.1 → holado-0.5.2}/src/holado_multitask/tests/behave/steps/multiprocessing_steps.py +0 -0
  393. {holado-0.4.1 → holado-0.5.2}/src/holado_multitask/tests/behave/steps/multithreading_steps.py +0 -0
  394. {holado-0.4.1 → holado-0.5.2}/src/holado_protobuf/__init__.py +0 -0
  395. {holado-0.4.1/src/holado_sftp/tools/sftp → holado-0.5.2/src/holado_protobuf/ipc/protobuf}/__init__.py +0 -0
  396. {holado-0.4.1 → holado-0.5.2}/src/holado_protobuf/ipc/protobuf/abstracts/type.py +0 -0
  397. {holado-0.4.1 → holado-0.5.2}/src/holado_protobuf/ipc/protobuf/protobuf_compiler.py +0 -0
  398. {holado-0.4.1 → holado-0.5.2}/src/holado_protobuf/ipc/protobuf/protobuf_converter.py +0 -0
  399. {holado-0.4.1 → holado-0.5.2}/src/holado_protobuf/ipc/protobuf/protobuf_messages.py +0 -0
  400. {holado-0.4.1 → holado-0.5.2}/src/holado_protobuf/ipc/protobuf/protobuf_modifier.py +0 -0
  401. {holado-0.4.1/src/holado_test/behave → holado-0.5.2/src/holado_protobuf/ipc/protobuf/types}/__init__.py +0 -0
  402. {holado-0.4.1/src/holado_test/behave/scenario → holado-0.5.2/src/holado_protobuf/ipc/protobuf/types/google}/__init__.py +0 -0
  403. {holado-0.4.1 → holado-0.5.2}/src/holado_protobuf/ipc/protobuf/types/google/protobuf.py +0 -0
  404. {holado-0.4.1 → holado-0.5.2}/src/holado_protobuf/tests/behave/steps/__init__.py +0 -0
  405. {holado-0.4.1 → holado-0.5.2}/src/holado_protobuf/tests/behave/steps/ipc/protobuf_steps.py +0 -0
  406. {holado-0.4.1 → holado-0.5.2}/src/holado_python/__init__.py +0 -0
  407. {holado-0.4.1 → holado-0.5.2}/src/holado_python/common/enums.py +0 -0
  408. {holado-0.4.1 → holado-0.5.2}/src/holado_python/common/iterables.py +0 -0
  409. {holado-0.4.1 → holado-0.5.2}/src/holado_python/common/tools/comparators/boolean_comparator.py +0 -0
  410. {holado-0.4.1 → holado-0.5.2}/src/holado_python/common/tools/comparators/bytes_comparator.py +0 -0
  411. {holado-0.4.1 → holado-0.5.2}/src/holado_python/common/tools/comparators/datetime_comparator.py +0 -0
  412. {holado-0.4.1 → holado-0.5.2}/src/holado_python/common/tools/comparators/float_comparator.py +0 -0
  413. {holado-0.4.1 → holado-0.5.2}/src/holado_python/common/tools/comparators/integer_comparator.py +0 -0
  414. {holado-0.4.1 → holado-0.5.2}/src/holado_python/common/tools/comparators/string_comparator.py +0 -0
  415. {holado-0.4.1 → holado-0.5.2}/src/holado_python/common/tools/comparators/type_comparator.py +0 -0
  416. {holado-0.4.1 → holado-0.5.2}/src/holado_python/standard_library/csv.py +0 -0
  417. {holado-0.4.1 → holado-0.5.2}/src/holado_python/standard_library/hashlib.py +0 -0
  418. {holado-0.4.1 → holado-0.5.2}/src/holado_python/standard_library/multiprocessing.py +0 -0
  419. {holado-0.4.1 → holado-0.5.2}/src/holado_python/standard_library/queue.py +0 -0
  420. {holado-0.4.1 → holado-0.5.2}/src/holado_python/standard_library/socket/blocking_socket.py +0 -0
  421. {holado-0.4.1 → holado-0.5.2}/src/holado_python/standard_library/socket/echo_server.py +0 -0
  422. {holado-0.4.1 → holado-0.5.2}/src/holado_python/standard_library/socket/message_socket.py +0 -0
  423. {holado-0.4.1 → holado-0.5.2}/src/holado_python/standard_library/socket/non_blocking_socket.py +0 -0
  424. {holado-0.4.1 → holado-0.5.2}/src/holado_python/standard_library/socket/socket.py +0 -0
  425. {holado-0.4.1 → holado-0.5.2}/src/holado_python/standard_library/ssl/resources/certificates/NOTES.txt +0 -0
  426. {holado-0.4.1 → holado-0.5.2}/src/holado_python/standard_library/ssl/resources/certificates/localhost.crt +0 -0
  427. {holado-0.4.1 → holado-0.5.2}/src/holado_python/standard_library/ssl/resources/certificates/localhost.key +0 -0
  428. {holado-0.4.1 → holado-0.5.2}/src/holado_python/standard_library/ssl/resources/certificates/rootCACert.pem +0 -0
  429. {holado-0.4.1 → holado-0.5.2}/src/holado_python/standard_library/ssl/ssl.py +0 -0
  430. {holado-0.4.1 → holado-0.5.2}/src/holado_python/standard_library/typing.py +0 -0
  431. {holado-0.4.1 → holado-0.5.2}/src/holado_python/tests/behave/steps/__init__.py +0 -0
  432. {holado-0.4.1 → holado-0.5.2}/src/holado_python/tests/behave/steps/builtins/str_steps.py +0 -0
  433. {holado-0.4.1 → holado-0.5.2}/src/holado_python/tests/behave/steps/convert_steps.py +0 -0
  434. {holado-0.4.1 → holado-0.5.2}/src/holado_python/tests/behave/steps/iterable_steps.py +0 -0
  435. {holado-0.4.1 → holado-0.5.2}/src/holado_python/tests/behave/steps/standard_library/csv_steps.py +0 -0
  436. {holado-0.4.1 → holado-0.5.2}/src/holado_python/tests/behave/steps/standard_library/datetime_steps.py +0 -0
  437. {holado-0.4.1 → holado-0.5.2}/src/holado_python/tests/behave/steps/standard_library/hashlib_steps.py +0 -0
  438. {holado-0.4.1 → holado-0.5.2}/src/holado_python/tests/behave/steps/standard_library/multiprocessing_steps.py +0 -0
  439. {holado-0.4.1 → holado-0.5.2}/src/holado_python/tests/behave/steps/standard_library/queue_steps.py +0 -0
  440. {holado-0.4.1 → holado-0.5.2}/src/holado_python/tests/behave/steps/standard_library/socket_steps.py +0 -0
  441. {holado-0.4.1 → holado-0.5.2}/src/holado_python/tests/behave/steps/standard_library/ssl_steps.py +0 -0
  442. {holado-0.4.1 → holado-0.5.2}/src/holado_rabbitmq/__init__.py +0 -0
  443. {holado-0.4.1 → holado-0.5.2}/src/holado_rabbitmq/tests/behave/steps/__init__.py +0 -0
  444. {holado-0.4.1 → holado-0.5.2}/src/holado_rabbitmq/tests/behave/steps/tools/rabbitmq_client_steps.py +0 -0
  445. {holado-0.4.1 → holado-0.5.2}/src/holado_rabbitmq/tests/behave/steps/tools/rabbitmq_server_steps.py +0 -0
  446. {holado-0.4.1 → holado-0.5.2}/src/holado_rabbitmq/tools/rabbitmq/rabbitmq_manager.py +0 -0
  447. {holado-0.4.1 → holado-0.5.2}/src/holado_rabbitmq/tools/rabbitmq/rabbitmq_select_client.py +0 -0
  448. {holado-0.4.1 → holado-0.5.2}/src/holado_rabbitmq/tools/rabbitmq/rabbitmq_server.py +0 -0
  449. {holado-0.4.1 → holado-0.5.2}/src/holado_redis/__init__.py +0 -0
  450. {holado-0.4.1 → holado-0.5.2}/src/holado_redis/tests/behave/steps/__init__.py +0 -0
  451. {holado-0.4.1 → holado-0.5.2}/src/holado_redis/tests/behave/steps/tools/redis_client_steps.py +0 -0
  452. {holado-0.4.1 → holado-0.5.2}/src/holado_redis/tools/redis/TODO.txt +0 -0
  453. {holado-0.4.1 → holado-0.5.2}/src/holado_redis/tools/redis/redis_client.py +0 -0
  454. {holado-0.4.1 → holado-0.5.2}/src/holado_redis/tools/redis/redis_manager.py +0 -0
  455. {holado-0.4.1 → holado-0.5.2}/src/holado_report/__init__.py +0 -0
  456. {holado-0.4.1 → holado-0.5.2}/src/holado_report/report/analyze/execution_historic_manager.py +0 -0
  457. {holado-0.4.1 → holado-0.5.2}/src/holado_report/report/analyze/scenario_duration_manager.py +0 -0
  458. {holado-0.4.1 → holado-0.5.2}/src/holado_report/report/builders/detailed_scenario_failed_report_builder.py +0 -0
  459. {holado-0.4.1 → holado-0.5.2}/src/holado_report/report/builders/json_execution_historic_report_builder.py +0 -0
  460. {holado-0.4.1 → holado-0.5.2}/src/holado_report/report/builders/report_builder.py +0 -0
  461. {holado-0.4.1 → holado-0.5.2}/src/holado_report/report/builders/short_scenario_failed_report_builder.py +0 -0
  462. {holado-0.4.1 → holado-0.5.2}/src/holado_report/report/builders/summary_report_builder.py +0 -0
  463. {holado-0.4.1 → holado-0.5.2}/src/holado_report/report/builders/summary_scenario_failed_report_builder.py +0 -0
  464. {holado-0.4.1 → holado-0.5.2}/src/holado_report/report/builders/summary_scenario_report_builder.py +0 -0
  465. {holado-0.4.1 → holado-0.5.2}/src/holado_report/report/execution_historic.py +0 -0
  466. {holado-0.4.1 → holado-0.5.2}/src/holado_report/report/reports/base_report.py +0 -0
  467. {holado-0.4.1 → holado-0.5.2}/src/holado_report/report/reports/feature_report.py +0 -0
  468. {holado-0.4.1 → holado-0.5.2}/src/holado_report/report/reports/scenario_report.py +0 -0
  469. {holado-0.4.1 → holado-0.5.2}/src/holado_rest/__init__.py +0 -0
  470. {holado-0.4.1 → holado-0.5.2}/src/holado_rest/api/rest/rest_manager.py +0 -0
  471. {holado-0.4.1 → holado-0.5.2}/src/holado_rest/tests/behave/steps/__init__.py +0 -0
  472. {holado-0.4.1/tests/behave/test_holado/features → holado-0.5.2/src/holado_rest/tests/behave/steps/api}/__init__.py +0 -0
  473. {holado-0.4.1 → holado-0.5.2}/src/holado_rest/tests/behave/steps/private/__init__.py +0 -0
  474. {holado-0.4.1/tests/behave/test_holado/steps → holado-0.5.2/src/holado_rest/tests/behave/steps/private/api}/__init__.py +0 -0
  475. {holado-0.4.1 → holado-0.5.2}/src/holado_s3/__init__.py +0 -0
  476. {holado-0.4.1 → holado-0.5.2}/src/holado_s3/tests/behave/steps/__init__.py +0 -0
  477. {holado-0.4.1 → holado-0.5.2}/src/holado_s3/tests/behave/steps/private/__init__.py +0 -0
  478. {holado-0.4.1 → holado-0.5.2}/src/holado_s3/tests/behave/steps/private/tools/s3_steps.py +0 -0
  479. {holado-0.4.1 → holado-0.5.2}/src/holado_s3/tests/behave/steps/tools/s3_client_steps.py +0 -0
  480. {holado-0.4.1 → holado-0.5.2}/src/holado_s3/tests/behave/steps/tools/s3_server_steps.py +0 -0
  481. {holado-0.4.1/tests/behave/test_holado/tools/django/api_grpc/api_grpc → holado-0.5.2/src/holado_s3/tools/s3}/__init__.py +0 -0
  482. {holado-0.4.1 → holado-0.5.2}/src/holado_s3/tools/s3/boto3_s3_client.py +0 -0
  483. {holado-0.4.1 → holado-0.5.2}/src/holado_s3/tools/s3/minio_client.py +0 -0
  484. {holado-0.4.1 → holado-0.5.2}/src/holado_s3/tools/s3/moto_server.py +0 -0
  485. {holado-0.4.1 → holado-0.5.2}/src/holado_scripting/__init__.py +0 -0
  486. {holado-0.4.1 → holado-0.5.2}/src/holado_scripting/common/tools/dynamic_text_manager.py +0 -0
  487. {holado-0.4.1 → holado-0.5.2}/src/holado_scripting/common/tools/evaluate_parameters.py +0 -0
  488. {holado-0.4.1 → holado-0.5.2}/src/holado_scripting/common/tools/expression_evaluator.py +0 -0
  489. {holado-0.4.1 → holado-0.5.2}/src/holado_scripting/common/tools/variable_manager.py +0 -0
  490. {holado-0.4.1 → holado-0.5.2}/src/holado_scripting/tests/behave/steps/__init__.py +0 -0
  491. {holado-0.4.1 → holado-0.5.2}/src/holado_scripting/tests/behave/steps/common/tools/variable_convert_steps.py +0 -0
  492. {holado-0.4.1 → holado-0.5.2}/src/holado_scripting/tests/behave/steps/common/tools/variable_new_steps.py +0 -0
  493. {holado-0.4.1 → holado-0.5.2}/src/holado_scripting/tests/behave/steps/common/tools/variable_steps.py +0 -0
  494. {holado-0.4.1 → holado-0.5.2}/src/holado_scripting/tests/behave/steps/common/tools/variable_verify_steps.py +0 -0
  495. {holado-0.4.1 → holado-0.5.2}/src/holado_scripting/tests/behave/steps/scenario/function_steps.py +0 -0
  496. {holado-0.4.1 → holado-0.5.2}/src/holado_scripting/tests/behave/steps/scenario/if_steps.py +0 -0
  497. {holado-0.4.1 → holado-0.5.2}/src/holado_scripting/tests/behave/steps/scenario/loop_steps.py +0 -0
  498. {holado-0.4.1 → holado-0.5.2}/src/holado_scripting/text/base/base_function.py +0 -0
  499. {holado-0.4.1 → holado-0.5.2}/src/holado_scripting/text/base/base_verify_function.py +0 -0
  500. {holado-0.4.1 → holado-0.5.2}/src/holado_scripting/text/base/text_inspecter.py +0 -0
  501. {holado-0.4.1 → holado-0.5.2}/src/holado_scripting/text/interpreter/exceptions/interpreter_exception.py +0 -0
  502. {holado-0.4.1 → holado-0.5.2}/src/holado_scripting/text/interpreter/functions/function_apply_function.py +0 -0
  503. {holado-0.4.1 → holado-0.5.2}/src/holado_scripting/text/interpreter/functions/function_cast.py +0 -0
  504. {holado-0.4.1 → holado-0.5.2}/src/holado_scripting/text/interpreter/functions/function_convert.py +0 -0
  505. {holado-0.4.1 → holado-0.5.2}/src/holado_scripting/text/interpreter/functions/function_dynamic_value.py +0 -0
  506. {holado-0.4.1 → holado-0.5.2}/src/holado_scripting/text/interpreter/functions/function_escape_all_bytes.py +0 -0
  507. {holado-0.4.1 → holado-0.5.2}/src/holado_scripting/text/interpreter/functions/function_exists_variable.py +0 -0
  508. {holado-0.4.1 → holado-0.5.2}/src/holado_scripting/text/interpreter/functions/function_hex_to_bytes.py +0 -0
  509. {holado-0.4.1 → holado-0.5.2}/src/holado_scripting/text/interpreter/functions/function_hex_to_int.py +0 -0
  510. {holado-0.4.1 → holado-0.5.2}/src/holado_scripting/text/interpreter/functions/function_to_base_64.py +0 -0
  511. {holado-0.4.1 → holado-0.5.2}/src/holado_scripting/text/interpreter/functions/function_to_bytes.py +0 -0
  512. {holado-0.4.1 → holado-0.5.2}/src/holado_scripting/text/interpreter/functions/function_to_hex.py +0 -0
  513. {holado-0.4.1 → holado-0.5.2}/src/holado_scripting/text/interpreter/functions/function_to_string.py +0 -0
  514. {holado-0.4.1 → holado-0.5.2}/src/holado_scripting/text/interpreter/text_interpreter.py +0 -0
  515. {holado-0.4.1 → holado-0.5.2}/src/holado_scripting/text/verifier/exceptions/verifier_exception.py +0 -0
  516. {holado-0.4.1 → holado-0.5.2}/src/holado_scripting/text/verifier/functions/verify_function_extract_in.py +0 -0
  517. {holado-0.4.1 → holado-0.5.2}/src/holado_scripting/text/verifier/functions/verify_function_match_pattern.py +0 -0
  518. {holado-0.4.1 → holado-0.5.2}/src/holado_scripting/text/verifier/text_verifier.py +0 -0
  519. {holado-0.4.1 → holado-0.5.2}/src/holado_sftp/__init__.py +0 -0
  520. {holado-0.4.1 → holado-0.5.2}/src/holado_sftp/tests/behave/steps/__init__.py +0 -0
  521. {holado-0.4.1 → holado-0.5.2}/src/holado_sftp/tests/behave/steps/private/__init__.py +0 -0
  522. {holado-0.4.1 → holado-0.5.2}/src/holado_sftp/tests/behave/steps/private/tools/sftp_steps.py +0 -0
  523. {holado-0.4.1 → holado-0.5.2}/src/holado_sftp/tests/behave/steps/tools/sftp_client_steps.py +0 -0
  524. {holado-0.4.1 → holado-0.5.2}/src/holado_sftp/tests/behave/steps/tools/sftp_server_steps.py +0 -0
  525. {holado-0.4.1/tests/behave/test_holado/tools/django/api_grpc/api_grpc/api1 → holado-0.5.2/src/holado_sftp/tools/sftp}/__init__.py +0 -0
  526. {holado-0.4.1 → holado-0.5.2}/src/holado_sftp/tools/sftp/sftp_client.py +0 -0
  527. {holado-0.4.1 → holado-0.5.2}/src/holado_sftp/tools/sftp/sftp_server.py +0 -0
  528. {holado-0.4.1 → holado-0.5.2}/src/holado_swagger/__init__.py +0 -0
  529. {holado-0.4.1 → holado-0.5.2}/src/holado_swagger/swagger_hub/mockserver/mockserver_client.py +0 -0
  530. {holado-0.4.1 → holado-0.5.2}/src/holado_swagger/swagger_hub/mockserver/mockserver_manager.py +0 -0
  531. {holado-0.4.1 → holado-0.5.2}/src/holado_swagger/tests/behave/steps/__init__.py +0 -0
  532. {holado-0.4.1 → holado-0.5.2}/src/holado_swagger/tests/behave/steps/swagger_hub/mockserver_steps.py +0 -0
  533. {holado-0.4.1 → holado-0.5.2}/src/holado_system/system/command/command_result.py +0 -0
  534. {holado-0.4.1 → holado-0.5.2}/src/holado_system/system/command/curl_command.py +0 -0
  535. {holado-0.4.1 → holado-0.5.2}/src/holado_system/system/command/exceptions.py +0 -0
  536. {holado-0.4.1 → holado-0.5.2}/src/holado_system/system/filesystem/file.py +0 -0
  537. {holado-0.4.1 → holado-0.5.2}/src/holado_system/tests/behave/steps/__init__.py +0 -0
  538. {holado-0.4.1 → holado-0.5.2}/src/holado_system/tests/behave/steps/system/commands_steps.py +0 -0
  539. {holado-0.4.1 → holado-0.5.2}/src/holado_system/tests/behave/steps/system/file_steps.py +0 -0
  540. {holado-0.4.1 → holado-0.5.2}/src/holado_system/tests/behave/steps/system/system_steps.py +0 -0
  541. {holado-0.4.1 → holado-0.5.2}/src/holado_test/__init__.py +0 -0
  542. {holado-0.4.1/tests/behave/test_holado/tools/django/api_grpc/api_grpc/api1/migrations → holado-0.5.2/src/holado_test/behave}/__init__.py +0 -0
  543. {holado-0.4.1 → holado-0.5.2}/src/holado_test/behave/behave.py +0 -0
  544. {holado-0.4.1 → holado-0.5.2}/src/holado_test/behave/behave_environment.py +0 -0
  545. {holado-0.4.1 → holado-0.5.2}/src/holado_test/behave/behave_function.py +0 -0
  546. {holado-0.4.1 → holado-0.5.2}/src/holado_test/behave/behave_manager.py +0 -0
  547. {holado-0.4.1 → holado-0.5.2}/src/holado_test/behave/independant_runner.py +0 -0
  548. {holado-0.4.1/tests/behave/test_holado/tools/django/api_grpc/api_grpc/api1/proto → holado-0.5.2/src/holado_test/behave/scenario}/__init__.py +0 -0
  549. {holado-0.4.1 → holado-0.5.2}/src/holado_test/behave/scenario/behave_step_tools.py +0 -0
  550. {holado-0.4.1 → holado-0.5.2}/src/holado_test/common/context/feature_context.py +0 -0
  551. {holado-0.4.1 → holado-0.5.2}/src/holado_test/common/context/scenario_context.py +0 -0
  552. {holado-0.4.1 → holado-0.5.2}/src/holado_test/common/context/step_context.py +0 -0
  553. {holado-0.4.1 → holado-0.5.2}/src/holado_test/common/exceptions/undefined_step_exception.py +0 -0
  554. {holado-0.4.1 → holado-0.5.2}/src/holado_test/scenario/step_tools.py +0 -0
  555. {holado-0.4.1 → holado-0.5.2}/src/holado_test/scenario/tester_tools.py +0 -0
  556. {holado-0.4.1 → holado-0.5.2}/src/holado_test/test_config.py +0 -0
  557. {holado-0.4.1 → holado-0.5.2}/src/holado_test/tests/behave/steps/__init__.py +0 -0
  558. {holado-0.4.1 → holado-0.5.2}/src/holado_test/tests/behave/steps/scenario/exception_steps.py +0 -0
  559. {holado-0.4.1 → holado-0.5.2}/src/holado_test/tests/behave/steps/scenario/scenario_steps.py +0 -0
  560. {holado-0.4.1 → holado-0.5.2}/src/holado_test/tests/behave/steps/scenario/tester_steps.py +0 -0
  561. {holado-0.4.1 → holado-0.5.2}/src/holado_ui/__init__.py +0 -0
  562. {holado-0.4.1 → holado-0.5.2}/src/holado_ui/tests/behave/steps/__init__.py +0 -0
  563. {holado-0.4.1 → holado-0.5.2}/src/holado_ui/tests/behave/steps/private/__init__.py +0 -0
  564. {holado-0.4.1 → holado-0.5.2}/src/holado_ui/ui/actors/actions.py +0 -0
  565. {holado-0.4.1 → holado-0.5.2}/src/holado_ui/ui/actors/ui_actor.py +0 -0
  566. {holado-0.4.1 → holado-0.5.2}/src/holado_ui/ui/drivers/ui_driver.py +0 -0
  567. {holado-0.4.1 → holado-0.5.2}/src/holado_ui/ui/drivers/ui_driver_info.py +0 -0
  568. {holado-0.4.1 → holado-0.5.2}/src/holado_ui/ui/drivers/ui_internal_api.py +0 -0
  569. {holado-0.4.1 → holado-0.5.2}/src/holado_ui/ui/exceptions/focus_driver_exception.py +0 -0
  570. {holado-0.4.1 → holado-0.5.2}/src/holado_ui/ui/finders/ui_finder.py +0 -0
  571. {holado-0.4.1 → holado-0.5.2}/src/holado_ui/ui/gui/actors/gui_actor.py +0 -0
  572. {holado-0.4.1 → holado-0.5.2}/src/holado_ui/ui/gui/criterias/enums.py +0 -0
  573. {holado-0.4.1 → holado-0.5.2}/src/holado_ui/ui/gui/criterias/gui_criteria.py +0 -0
  574. {holado-0.4.1 → holado-0.5.2}/src/holado_ui/ui/gui/drivers/gui_driver.py +0 -0
  575. {holado-0.4.1 → holado-0.5.2}/src/holado_ui/ui/gui/drivers/gui_internal_api.py +0 -0
  576. {holado-0.4.1 → holado-0.5.2}/src/holado_ui/ui/gui/finders/gui_finder.py +0 -0
  577. {holado-0.4.1 → holado-0.5.2}/src/holado_ui/ui/gui/handlers/label_gui_context.py +0 -0
  578. {holado-0.4.1 → holado-0.5.2}/src/holado_ui/ui/gui/handlers/zone_gui_context.py +0 -0
  579. {holado-0.4.1 → holado-0.5.2}/src/holado_ui/ui/gui/inspectors/gui_inspector.py +0 -0
  580. {holado-0.4.1 → holado-0.5.2}/src/holado_ui/ui/gui/windows/gui_window.py +0 -0
  581. {holado-0.4.1 → holado-0.5.2}/src/holado_ui/ui/gui/windows/gui_window_info.py +0 -0
  582. {holado-0.4.1 → holado-0.5.2}/src/holado_ui/ui/handlers/ui_context.py +0 -0
  583. {holado-0.4.1 → holado-0.5.2}/src/holado_ui/ui/handlers/ui_manager.py +0 -0
  584. {holado-0.4.1 → holado-0.5.2}/src/holado_ui/ui/inspectors/tools/ui_inspect_builder.py +0 -0
  585. {holado-0.4.1 → holado-0.5.2}/src/holado_ui/ui/inspectors/tools/ui_inspect_context.py +0 -0
  586. {holado-0.4.1 → holado-0.5.2}/src/holado_ui/ui/inspectors/ui_inspector.py +0 -0
  587. {holado-0.4.1 → holado-0.5.2}/src/holado_ui_mss/ui/mss/mss_manager.py +0 -0
  588. {holado-0.4.1 → holado-0.5.2}/src/holado_ui_selenium/ui/gui/selenium/actors/actions.py +0 -0
  589. {holado-0.4.1 → holado-0.5.2}/src/holado_ui_selenium/ui/gui/selenium/actors/default_selenium_actor.py +0 -0
  590. {holado-0.4.1 → holado-0.5.2}/src/holado_ui_selenium/ui/gui/selenium/actors/selenium_actor.py +0 -0
  591. {holado-0.4.1 → holado-0.5.2}/src/holado_ui_selenium/ui/gui/selenium/criterias/selenium_criteria.py +0 -0
  592. {holado-0.4.1 → holado-0.5.2}/src/holado_ui_selenium/ui/gui/selenium/criterias/selenium_criteria_and_verifier.py +0 -0
  593. {holado-0.4.1 → holado-0.5.2}/src/holado_ui_selenium/ui/gui/selenium/drivers/selenium_driver.py +0 -0
  594. {holado-0.4.1 → holado-0.5.2}/src/holado_ui_selenium/ui/gui/selenium/drivers/selenium_internal_api.py +0 -0
  595. {holado-0.4.1 → holado-0.5.2}/src/holado_ui_selenium/ui/gui/selenium/drivers/web_driver_manager.py +0 -0
  596. {holado-0.4.1 → holado-0.5.2}/src/holado_ui_selenium/ui/gui/selenium/finders/by_selenium_finder.py +0 -0
  597. {holado-0.4.1 → holado-0.5.2}/src/holado_ui_selenium/ui/gui/selenium/finders/children_selenium_finder.py +0 -0
  598. {holado-0.4.1 → holado-0.5.2}/src/holado_ui_selenium/ui/gui/selenium/finders/parent_selenium_finder.py +0 -0
  599. {holado-0.4.1 → holado-0.5.2}/src/holado_ui_selenium/ui/gui/selenium/finders/selenium_finder.py +0 -0
  600. {holado-0.4.1 → holado-0.5.2}/src/holado_ui_selenium/ui/gui/selenium/handlers/enums.py +0 -0
  601. {holado-0.4.1 → holado-0.5.2}/src/holado_ui_selenium/ui/gui/selenium/handlers/selenium_by.py +0 -0
  602. {holado-0.4.1 → holado-0.5.2}/src/holado_ui_selenium/ui/gui/selenium/handlers/selenium_holder.py +0 -0
  603. {holado-0.4.1 → holado-0.5.2}/src/holado_ui_selenium/ui/gui/selenium/handlers/selenium_redo.py +0 -0
  604. {holado-0.4.1 → holado-0.5.2}/src/holado_ui_selenium/ui/gui/selenium/handlers/selenium_ui_manager.py +0 -0
  605. {holado-0.4.1 → holado-0.5.2}/src/holado_ui_selenium/ui/gui/selenium/inspectors/default_selenium_inspector.py +0 -0
  606. {holado-0.4.1 → holado-0.5.2}/src/holado_ui_selenium/ui/gui/selenium/inspectors/selenium_inspector.py +0 -0
  607. {holado-0.4.1 → holado-0.5.2}/src/holado_ui_selenium/ui/gui/selenium/tables/comparators/selenium_2_value_table_cell_comparator.py +0 -0
  608. {holado-0.4.1 → holado-0.5.2}/src/holado_ui_selenium/ui/gui/selenium/tables/comparators/selenium_2_value_table_comparator.py +0 -0
  609. {holado-0.4.1 → holado-0.5.2}/src/holado_ui_selenium/ui/gui/selenium/tables/comparators/selenium_2_value_table_row_comparator.py +0 -0
  610. {holado-0.4.1 → holado-0.5.2}/src/holado_ui_selenium/ui/gui/selenium/tables/comparators/selenium_2_value_table_with_header_comparator.py +0 -0
  611. {holado-0.4.1 → holado-0.5.2}/src/holado_ui_selenium/ui/gui/selenium/tables/converters/selenium_table_converter.py +0 -0
  612. {holado-0.4.1 → holado-0.5.2}/src/holado_ui_selenium/ui/gui/selenium/tables/selenium_table.py +0 -0
  613. {holado-0.4.1 → holado-0.5.2}/src/holado_ui_selenium/ui/gui/selenium/tables/selenium_table_cell.py +0 -0
  614. {holado-0.4.1 → holado-0.5.2}/src/holado_ui_selenium/ui/gui/selenium/tables/selenium_table_row.py +0 -0
  615. {holado-0.4.1 → holado-0.5.2}/src/holado_ui_selenium/ui/gui/selenium/tables/selenium_table_with_header.py +0 -0
  616. {holado-0.4.1 → holado-0.5.2}/src/holado_ui_selenium/ui/gui/selenium/tools/selenium_path_manager.py +0 -0
  617. {holado-0.4.1 → holado-0.5.2}/src/holado_ui_selenium/ui/gui/selenium/windows/default_selenium_window.py +0 -0
  618. {holado-0.4.1 → holado-0.5.2}/src/holado_ui_selenium/ui/gui/selenium/windows/selenium_window.py +0 -0
  619. {holado-0.4.1 → holado-0.5.2}/src/holado_ui_selenium_angular/__init__.py +0 -0
  620. {holado-0.4.1 → holado-0.5.2}/src/holado_ui_selenium_angular/ui/gui/selenium/actors/angular_selenium_actor.py +0 -0
  621. {holado-0.4.1 → holado-0.5.2}/src/holado_ui_selenium_angular/ui/gui/selenium/inspectors/angular_selenium_inspector.py +0 -0
  622. {holado-0.4.1 → holado-0.5.2}/src/holado_ui_selenium_html/__init__.py +0 -0
  623. {holado-0.4.1 → holado-0.5.2}/src/holado_ui_selenium_html/ui/gui/selenium/actors/html_selenium_actor.py +0 -0
  624. {holado-0.4.1 → holado-0.5.2}/src/holado_ui_selenium_html/ui/gui/selenium/inspectors/html_selenium_inspector.py +0 -0
  625. {holado-0.4.1 → holado-0.5.2}/src/holado_value/__init__.py +0 -0
  626. {holado-0.4.1 → holado-0.5.2}/src/holado_value/common/tables/comparators/table_2_value_table_cell_comparator.py +0 -0
  627. {holado-0.4.1 → holado-0.5.2}/src/holado_value/common/tables/comparators/table_2_value_table_comparator.py +0 -0
  628. {holado-0.4.1 → holado-0.5.2}/src/holado_value/common/tables/comparators/table_2_value_table_row_comparator.py +0 -0
  629. {holado-0.4.1 → holado-0.5.2}/src/holado_value/common/tables/comparators/table_2_value_table_with_header_comparator.py +0 -0
  630. {holado-0.4.1 → holado-0.5.2}/src/holado_value/common/tables/converters/value_table_converter.py +0 -0
  631. {holado-0.4.1 → holado-0.5.2}/src/holado_value/common/tables/value_table.py +0 -0
  632. {holado-0.4.1 → holado-0.5.2}/src/holado_value/common/tables/value_table_cell.py +0 -0
  633. {holado-0.4.1 → holado-0.5.2}/src/holado_value/common/tables/value_table_manager.py +0 -0
  634. {holado-0.4.1 → holado-0.5.2}/src/holado_value/common/tables/value_table_row.py +0 -0
  635. {holado-0.4.1 → holado-0.5.2}/src/holado_value/common/tables/value_table_with_header.py +0 -0
  636. {holado-0.4.1 → holado-0.5.2}/src/holado_value/common/tools/unique_value_manager.py +0 -0
  637. {holado-0.4.1 → holado-0.5.2}/src/holado_value/common/tools/value.py +0 -0
  638. {holado-0.4.1 → holado-0.5.2}/src/holado_value/common/tools/value_types.py +0 -0
  639. {holado-0.4.1 → holado-0.5.2}/src/holado_value/tests/behave/steps/__init__.py +0 -0
  640. {holado-0.4.1 → holado-0.5.2}/src/holado_value/tests/behave/steps/private/__init__.py +0 -0
  641. {holado-0.4.1 → holado-0.5.2}/src/holado_ws/__init__.py +0 -0
  642. {holado-0.4.1 → holado-0.5.2}/src/holado_ws/api/ws/TODO.txt +0 -0
  643. {holado-0.4.1 → holado-0.5.2}/src/holado_ws/tests/behave/steps/__init__.py +0 -0
  644. {holado-0.4.1 → holado-0.5.2}/src/holado_ws/tests/behave/steps/api/web_service_steps.py +0 -0
  645. {holado-0.4.1 → holado-0.5.2}/src/holado_yaml/tests/behave/steps/__init__.py +0 -0
  646. {holado-0.4.1 → holado-0.5.2}/src/holado_yaml/tests/behave/steps/yaml_steps.py +0 -0
  647. {holado-0.4.1 → holado-0.5.2}/src/holado_yaml/yaml/yaml_manager.py +0 -0
  648. {holado-0.4.1 → holado-0.5.2}/steps_catalog.sh +0 -0
  649. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/Dockerfile_test_holado +0 -0
  650. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/__init__.py +0 -0
  651. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/__main__.py +0 -0
  652. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/build_docker_image_to_test_holado_in_docker.sh +0 -0
  653. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/features/NonReg/common/multiprocessing/simple.feature +0 -0
  654. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/features/NonReg/common/system/commands.feature +0 -0
  655. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/features/NonReg/common/system/system.feature +0 -0
  656. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/features/NonReg/common/tables/table.feature +0 -0
  657. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/features/NonReg/common/tables/value_table_conversion.feature +0 -0
  658. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/features/NonReg/common/tools/DateTime.feature +0 -0
  659. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/features/NonReg/common/tools/UniqueValueManager.feature +0 -0
  660. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/features/NonReg/holado_ais/ais_message-bitarray_to_nmea.feature +0 -0
  661. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/features/NonReg/holado_binary/bit_series.error.feature +0 -0
  662. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/features/NonReg/holado_binary/bit_series.feature +0 -0
  663. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/features/NonReg/holado_protobuf/protobuf.feature +0 -0
  664. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/features/NonReg/holado_python/convert.feature +0 -0
  665. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/features/NonReg/holado_python/iterable.feature +0 -0
  666. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/features/NonReg/holado_python/standard_library/socket/local_echo_server/socket_reset.feature +0 -0
  667. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/features/NonReg/holado_python/standard_library/socket/local_echo_server/socket_with_tls_and_verify.feature +0 -0
  668. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/features/NonReg/holado_python/standard_library/socket/local_echo_server/socket_with_tls_without_verify.feature +0 -0
  669. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/features/NonReg/holado_python/standard_library/socket/local_echo_server/socket_without_tls.feature +0 -0
  670. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/features/NonReg/holado_python/standard_library/socket/tcpbin.com/socket_with_mtls.feature +0 -0
  671. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/features/NonReg/holado_python/standard_library/socket/tcpbin.com/socket_with_tls.feature +0 -0
  672. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/features/NonReg/holado_python/standard_library/socket/tcpbin.com/socket_without_tls.feature +0 -0
  673. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/features/NonReg/holado_scripting/common/tools/dynamic_text_manager.feature +0 -0
  674. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/features/NonReg/holado_scripting/common/tools/expression_evaluator.feature +0 -0
  675. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/features/NonReg/holado_scripting/common/tools/variable_manager.feature +0 -0
  676. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/features/NonReg/holado_scripting/text/interpreter/interpreter.error.feature +0 -0
  677. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/features/NonReg/holado_scripting/text/interpreter/interpreter.feature +0 -0
  678. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/features/NonReg/holado_yaml/yaml.feature +0 -0
  679. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/features/NonReg/ipc/json.feature +0 -0
  680. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/features/NonReg/scenario/scenario.feature +0 -0
  681. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/features/NonReg/test_steps/behave.feature +0 -0
  682. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/features/NonReg/test_steps/common.feature +0 -0
  683. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/features/NonReg/tools/RabbitMQ.feature +0 -0
  684. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/features/NonReg/tools/RabbitMQ_steps.feature +0 -0
  685. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/features/NonReg/tools/S3/boto3_client.feature +0 -0
  686. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/features/NonReg/tools/S3/minio_client.feature +0 -0
  687. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/features/NonReg/tools/db_sqlite3.feature +0 -0
  688. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/features/NonReg/tools/sFTP.feature +0 -0
  689. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/features/Test/logger.feature +0 -0
  690. {holado-0.4.1/tests/behave/test_holado/tools/django/api_rest/api_rest → holado-0.5.2/tests/behave/test_holado/features}/__init__.py +0 -0
  691. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/resources/proto/definitions/protobuf/custom_types/field_types.proto +0 -0
  692. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/resources/proto/definitions/protobuf/protobuf.dev/tutorial/addressbook.proto +0 -0
  693. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/resources/proto/generated/protobuf/custom_types/field_types_pb2.py +0 -0
  694. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/resources/proto/generated/protobuf/protobuf/dev/tutorial/addressbook_pb2.py +0 -0
  695. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/resources/scripts/list_tags.sh +0 -0
  696. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/resources/scripts/update_resources_proto_generated.py +0 -0
  697. {holado-0.4.1/tests/behave/test_holado/tools/django/api_rest/api_rest/api1 → holado-0.5.2/tests/behave/test_holado/steps}/__init__.py +0 -0
  698. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/steps/private_steps.py +0 -0
  699. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/steps/public_steps.py +0 -0
  700. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/test_holado_session_context.py +0 -0
  701. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/tools/django/README.txt +0 -0
  702. {holado-0.4.1/tests/behave/test_holado/tools/django/api_rest/api_rest/api1/migrations → holado-0.5.2/tests/behave/test_holado/tools/django/api_grpc/api_grpc}/__init__.py +0 -0
  703. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/tools/django/api_grpc/api_grpc/api1/admin.py +0 -0
  704. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/tools/django/api_grpc/api_grpc/api1/apps.py +0 -0
  705. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/tools/django/api_grpc/api_grpc/api1/models.py +0 -0
  706. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/tools/django/api_grpc/api_grpc/api1/proto/account.proto +0 -0
  707. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/tools/django/api_grpc/api_grpc/api1/proto/account_pb2.py +0 -0
  708. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/tools/django/api_grpc/api_grpc/api1/proto/account_pb2_grpc.py +0 -0
  709. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/tools/django/api_grpc/api_grpc/api1/serializers.py +0 -0
  710. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/tools/django/api_grpc/api_grpc/api1/services.py +0 -0
  711. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/tools/django/api_grpc/api_grpc/api1/tests.py +0 -0
  712. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/tools/django/api_grpc/api_grpc/api1/views.py +0 -0
  713. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/tools/django/api_grpc/api_grpc/asgi.py +0 -0
  714. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/tools/django/api_grpc/api_grpc/settings.py +0 -0
  715. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/tools/django/api_grpc/api_grpc/urls.py +0 -0
  716. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/tools/django/api_grpc/api_grpc/wsgi.py +0 -0
  717. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/tools/django/api_grpc/db.sqlite3 +0 -0
  718. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/tools/django/api_grpc/manual_test_commands.txt +0 -0
  719. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/tools/django/api_rest/api_rest/api1/admin.py +0 -0
  720. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/tools/django/api_rest/api_rest/api1/apps.py +0 -0
  721. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/tools/django/api_rest/api_rest/api1/models.py +0 -0
  722. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/tools/django/api_rest/api_rest/api1/tests.py +0 -0
  723. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/tools/django/api_rest/api_rest/api1/views.py +0 -0
  724. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/tools/django/api_rest/api_rest/asgi.py +0 -0
  725. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/tools/django/api_rest/api_rest/settings.py +0 -0
  726. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/tools/django/api_rest/api_rest/urls.py +0 -0
  727. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/tools/django/api_rest/api_rest/wsgi.py +0 -0
  728. {holado-0.4.1 → holado-0.5.2}/tests/behave/test_holado/tools/django/api_rest/manage.py +0 -0
  729. {holado-0.4.1 → holado-0.5.2}/tests/scripts/dgot/classement/classement.py +0 -0
  730. {holado-0.4.1 → holado-0.5.2}/tests/scripts/dgot/classement/classement.sh +0 -0
  731. {holado-0.4.1 → holado-0.5.2}/tests/scripts/dgot/classement/commands.txt +0 -0
  732. {holado-0.4.1 → holado-0.5.2}/tests/scripts/independant_runner/environment.py +0 -0
  733. {holado-0.4.1 → holado-0.5.2}/tests/scripts/independant_runner/features/fake.feature +0 -0
  734. {holado-0.4.1 → holado-0.5.2}/tests/scripts/independant_runner/logging.conf +0 -0
  735. {holado-0.4.1 → holado-0.5.2}/tests/scripts/independant_runner/steps/public_steps.py +0 -0
  736. {holado-0.4.1 → holado-0.5.2}/tests/scripts/independant_runner/test.py +0 -0
  737. {holado-0.4.1 → holado-0.5.2}/tests/scripts/independant_runner/test.sh +0 -0
  738. {holado-0.4.1 → holado-0.5.2}/tests/scripts/script_tools.py +0 -0
  739. {holado-0.4.1 → holado-0.5.2}/upgrade_requirements_to_latest.sh +0 -0
@@ -0,0 +1,82 @@
1
+ stages:
2
+ - dockerhub-build-publish
3
+ - gitlab-docker-build-publish
4
+ # - pypi-build-publish
5
+
6
+ variables:
7
+ DOCKER_IMAGE_TAG: "26.1"
8
+ PYTHON_IMAGE_TAG: "3.12"
9
+
10
+
11
+ dockerhub-build-publish-latest:
12
+ stage: dockerhub-build-publish
13
+
14
+ image:
15
+ name: docker:${DOCKER_IMAGE_TAG}
16
+
17
+ variables:
18
+ IMAGE_TAG: index.docker.io/holado/python:latest
19
+
20
+ script:
21
+ - docker build -t ${IMAGE_TAG} .
22
+ - echo "$DOCKERHUB_TOKEN" | docker login docker.io -u holado --password-stdin
23
+ - docker push ${IMAGE_TAG}
24
+
25
+ rules:
26
+ - if: $CI_COMMIT_TAG
27
+ when: never
28
+ - if: $CI_COMMIT_BRANCH == "main"
29
+
30
+
31
+ dockerhub-build-publish-tag:
32
+ stage: dockerhub-build-publish
33
+
34
+ image:
35
+ name: docker:${DOCKER_IMAGE_TAG}
36
+
37
+ variables:
38
+ IMAGE_TAG: index.docker.io/holado/python:$CI_COMMIT_TAG
39
+
40
+ script:
41
+ - docker build -t ${IMAGE_TAG} .
42
+ - echo "$DOCKERHUB_TOKEN" | docker login docker.io -u holado --password-stdin
43
+ - docker push ${IMAGE_TAG}
44
+
45
+ rules:
46
+ - if: $CI_COMMIT_BRANCH == "main" && $CI_COMMIT_TAG
47
+
48
+
49
+ gitlab-docker-build-publish:
50
+ stage: gitlab-docker-build-publish
51
+
52
+ image:
53
+ name: docker:${DOCKER_IMAGE_TAG}
54
+
55
+ variables:
56
+ IMAGE_TAG: $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG
57
+ script:
58
+ - docker build -t ${IMAGE_TAG} .
59
+ - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY
60
+ - docker push ${IMAGE_TAG}
61
+
62
+
63
+ # pypi-build-publish:
64
+ # stage: pypi-build-publish
65
+ #
66
+ # image:
67
+ # name: python:${PYTHON_IMAGE_TAG}
68
+ #
69
+ # script:
70
+ # - apt-get update -q -y
71
+ # - apt-get install -y python-pip
72
+ # - shopt -s expand_aliases
73
+ # - alias python=python3
74
+ # # - echo "$CI_COMMIT_TAG" > ./packaging/VERSION
75
+ # - ./packaging/generate_distribution_archive.sh
76
+ # - TWINE_PASSWORD=${PYPI_TOKEN} TWINE_USERNAME=__token__ ./packaging/publish_distribution_archive.sh
77
+ #
78
+ # rules:
79
+ # - if: $CI_COMMIT_TAG =~ /\d+\.\d+\.\d+.*/
80
+
81
+
82
+
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: holado
3
- Version: 0.4.1
3
+ Version: 0.5.2
4
4
  Summary: HolAdo framework
5
5
  Project-URL: Homepage, https://gitlab.com/holado_framework/python
6
6
  Project-URL: Issues, https://gitlab.com/holado_framework/python/-/issues
@@ -16,6 +16,7 @@ Classifier: Programming Language :: Python :: 3.11
16
16
  Classifier: Programming Language :: Python :: 3.12
17
17
  Requires-Python: >=3.10
18
18
  Requires-Dist: behave==1.2.7.dev6
19
+ Requires-Dist: psutil
19
20
  Requires-Dist: python-dateutil
20
21
  Provides-Extra: ais
21
22
  Requires-Dist: pyais; extra == 'ais'
@@ -0,0 +1 @@
1
+ 0.5.2
@@ -3,7 +3,7 @@
3
3
  SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
4
4
  cd ${SCRIPT_DIR}/..
5
5
 
6
- if ! python -m pip install --upgrade build; then
6
+ if ! pip install --upgrade build; then
7
7
  echo "ERROR: Failed to update 'build' package"
8
8
  exit 1;
9
9
  fi
@@ -29,6 +29,7 @@ keywords = [
29
29
  dependencies = [
30
30
  "behave==1.2.7.dev6",
31
31
  "python-dateutil",
32
+ "psutil"
32
33
  ]
33
34
 
34
35
  [project.optional-dependencies]
@@ -58,7 +59,7 @@ pattern = "(?P<version>[\\w.]+)"
58
59
 
59
60
  [tool.hatch.build.targets.wheel]
60
61
  packages = ["src/holado", "src/holado_ais", "src/holado_binary", "src/holado_context", "src/holado_core",
61
- "src/holado_data", "src/holado_db", "src/holado_docker", "src/holado_grpc", "src/holado_helper", "src/holado_json",
62
+ "src/holado_data", "src/holado_db", "src/holado_django", "src/holado_docker", "src/holado_grpc", "src/holado_helper", "src/holado_json",
62
63
  "src/holado_keycloak", "src/holado_logging", "src/holado_multitask", "src/holado_protobuf", "src/holado_python",
63
64
  "src/holado_rabbitmq", "src/holado_redis", "src/holado_report", "src/holado_rest", "src/holado_s3",
64
65
  "src/holado_scripting", "src/holado_sftp", "src/holado_swagger", "src/holado_system", "src/holado_test",
@@ -3,6 +3,8 @@ behave==1.2.7.dev6
3
3
  #git+https://github.com/behave/behave@v1.2.7.dev5
4
4
 
5
5
  python-dateutil
6
+ psutil
7
+ prettytable
6
8
 
7
9
  # For RabbitMQ module
8
10
  pika
@@ -67,7 +69,8 @@ pympler # memory profiling
67
69
  pyyaml
68
70
 
69
71
  # For ssl: next packages have sometimes to be updated
70
- pip-system-certs
72
+ #pip-system-certs #Note: [28/07/2025] since recent modifications in urllib, pip-system-certs is broken, it is recommended to use truststore instead
73
+ truststore
71
74
  certifi
72
75
  pyOpenSSL
73
76
 
@@ -168,6 +168,9 @@ class SessionContext(Context):
168
168
  with self.__multitask_lock:
169
169
  self.behave_manager.set_main_context(behave_context)
170
170
  self.report_manager.before_all()
171
+
172
+ # Set variable with session context instance
173
+ self.variable_manager.register_variable("SESSION_CONTEXT", self)
171
174
 
172
175
  def after_all(self):
173
176
  with self.__multitask_lock:
@@ -201,6 +204,9 @@ class SessionContext(Context):
201
204
  feature_context = FeatureContext(feature)
202
205
  self.__set_feature_context(feature_context)
203
206
 
207
+ # Set variable with feature context instance
208
+ self.variable_manager.register_variable("FEATURE_CONTEXT", feature_context)
209
+
204
210
  # Report
205
211
  try:
206
212
  self.report_manager.before_feature(feature_context, feature)
@@ -86,6 +86,12 @@ class DeleteableObject(Object):
86
86
  func = FunctionThreaded(self.__delete, name=f"delete object '{self.name}'", register_thread=False)
87
87
  func.start()
88
88
  func.join(timeout=30, raise_if_still_alive=False) # timeout of 30s to limit deadlock impact ; raise to False since exceptions are omitted in gc collect context
89
+ except AttributeError as exc:
90
+ if "'NoneType' object has no attribute" in str(exc):
91
+ # Simply return, this exception can appear when system in interrupting
92
+ return
93
+ else:
94
+ raise exc
89
95
  except Exception as exc:
90
96
  if "Python is likely shutting down" in str(exc):
91
97
  # Simply return
@@ -23,13 +23,15 @@ from holado_core.common.tools.tools import Tools
23
23
  from holado_python.standard_library.typing import Typing
24
24
  import copy
25
25
  from holado_core.common.exceptions.functional_exception import FunctionalException
26
+ from holado_ais.ais.enums import AISMessageType
26
27
 
27
28
  logger = logging.getLogger(__name__)
28
29
 
29
30
  try:
30
31
  import pyais
31
32
  from bitarray import bitarray
32
- from holado_ais.ais.patch_pyais import HATagBlock, HA_ais_to_nmea_0183
33
+ from pyais.encode import ais_to_nmea_0183
34
+ from pyais.messages import TagBlock
33
35
  with_pyais = True
34
36
 
35
37
  # Patch pyais with some fixes
@@ -55,23 +57,27 @@ class AISMessages(object):
55
57
  def __init__(self):
56
58
  self.__tag_block_group_id = 0
57
59
 
58
- def default_message_data(self, msg_type:int):
60
+ def default_message_data(self, msg_type:Union[int,str]):
59
61
  """Return default data values for required data by pyais but not functionnaly required.
60
62
  It is useful when generating custom messages, for example for tests.
61
63
  """
62
64
  return {}
63
65
 
64
- def new_message_as_bitarray_bytes(self, msg_type:int, data:Union[dict,TableWithHeader]):
66
+ def new_message_as_bitarray_bytes(self, msg_type:Union[int,str], data:Union[dict,TableWithHeader]):
65
67
  msg = self.new_message(msg_type, data)
66
68
  res = self.convert_message_to_bytes(msg)
67
69
  return res
68
70
 
69
- def new_message(self, msg_type:int, data:Union[dict,TableWithHeader]):
71
+ def new_message(self, msg_type:Union[int,str], data:Union[dict,TableWithHeader]):
70
72
  if isinstance(data, TableWithHeader):
71
73
  data = self.__convert_table_to_dict(data)
72
74
  if not isinstance(data, dict):
73
75
  raise TechnicalException(f"Unexpected data type '{Typing.get_object_class_fullname(data)}'")
74
76
 
77
+ # Add data key 'msg_type' if missing
78
+ if 'msg_type' not in data:
79
+ data['msg_type'] = self.__get_message_type_int(msg_type)
80
+
75
81
  message_type = self.__get_message_type(msg_type)
76
82
  res = message_type.create(**data)
77
83
  return res
@@ -87,7 +93,7 @@ class AISMessages(object):
87
93
  args = encoded_bytes.split(parts_separator)
88
94
  return pyais.decode(*args, error_if_checksum_invalid=True)
89
95
 
90
- def decode_message(self, msg_type:int, bit_array:Union[str,bitarray]):
96
+ def decode_message(self, msg_type:Union[int,str], bit_array:Union[str,bitarray]):
91
97
  if isinstance(bit_array, str):
92
98
  if StrTools.is_hex(bit_array) and not StrTools.is_bitarray(bit_array):
93
99
  bit_array = Binary.convert_hex_str_to_bin_str(bit_array)
@@ -98,21 +104,29 @@ class AISMessages(object):
98
104
  message_type = self.__get_message_type(msg_type)
99
105
  return message_type.from_bitarray(bit_array)
100
106
 
101
- def encode_raw_payload(self, payload_hex: str, tag_block: HATagBlock = None, with_tag_block=True, talker_id: str = "AIVDM", **kwargs):
107
+ def encode_raw_payload(self, payload:Union[str,bytes], tag_block: TagBlock = None, with_tag_block=True, talker_id: str = "AIVDM", **kwargs):
102
108
  from pyais.util import encode_ascii_6
103
109
 
110
+ if isinstance(payload, bytes):
111
+ payload_bytes = payload
112
+ elif isinstance(payload, str):
113
+ payload_bytes = bytes.fromhex(payload)
114
+ else:
115
+ raise TechnicalException(f"Unmanaged payload type '{Typing.get_object_class_fullname(payload)}'")
116
+
104
117
  payload_bitarray = bitarray()
105
- payload_bitarray.frombytes(bytes.fromhex(payload_hex))
118
+ payload_bitarray.frombytes(payload_bytes)
106
119
  payload_ascii6, fill_bits = encode_ascii_6(payload_bitarray)
107
120
 
108
121
  seq_id = kwargs.pop('seq_id') if 'seq_id' in kwargs else self.__tag_block_group_id % 10
109
122
  radio_channel = kwargs['radio_channel'] if 'radio_channel' in kwargs else 'A'
110
123
  group_id = kwargs.pop('group_id') if 'group_id' in kwargs else None
111
124
 
112
- sentences = HA_ais_to_nmea_0183(payload_ascii6, talker_id, radio_channel, fill_bits, seq_id)
125
+ # sentences = HA_ais_to_nmea_0183(payload_ascii6, talker_id, radio_channel, fill_bits, seq_id)
126
+ sentences = ais_to_nmea_0183(payload_ascii6, talker_id, radio_channel, fill_bits, seq_id)
113
127
  return self.__encode_add_tag_block(sentences, tag_block, with_tag_block=with_tag_block, group_id=group_id)
114
128
 
115
- def encode(self, data, tag_block: HATagBlock = None, with_tag_block=True, talker_id: str = "AIVDM", **kwargs):
129
+ def encode(self, data, tag_block: TagBlock = None, with_tag_block=True, talker_id: str = "AIVDM", **kwargs):
116
130
  if isinstance(data, pyais.messages.Payload):
117
131
  return self.encode_msg(data, tag_block=tag_block, with_tag_block=with_tag_block, talker_id=talker_id, **kwargs)
118
132
  elif isinstance(data, dict):
@@ -122,17 +136,18 @@ class AISMessages(object):
122
136
  else:
123
137
  raise TechnicalException(f"Unexpected data type '{Typing.get_object_class_fullname(data)}'")
124
138
 
125
- def encode_msg(self, msg, tag_block: HATagBlock = None, with_tag_block=True, talker_id: str = "AIVDM", **kwargs):
139
+ def encode_msg(self, msg, tag_block: TagBlock = None, with_tag_block=True, talker_id: str = "AIVDM", **kwargs):
126
140
  if not isinstance(msg, pyais.messages.Payload):
127
141
  raise TechnicalException(f"Parameter 'msg' is not an AIS message (obtained type: {Typing.get_object_class_fullname(msg)})")
128
142
 
129
143
  seq_id = kwargs.pop('seq_id') if 'seq_id' in kwargs else self.__tag_block_group_id % 10
130
144
  group_id = kwargs.pop('group_id') if 'group_id' in kwargs else None
131
145
 
146
+ logger.print(f"+++++++ encode_msg: {msg=} ; {talker_id=} ; {kwargs=}")
132
147
  sentences = pyais.encode_msg(msg, seq_id=seq_id, talker_id=talker_id, **kwargs)
133
148
  return self.__encode_add_tag_block(sentences, tag_block, with_tag_block=with_tag_block, group_id=group_id)
134
149
 
135
- def encode_data(self, data, tag_block: HATagBlock = None, with_tag_block=True, talker_id: str = "AIVDM", **kwargs):
150
+ def encode_data(self, data, tag_block: TagBlock = None, with_tag_block=True, talker_id: str = "AIVDM", **kwargs):
136
151
  if not isinstance(data, dict):
137
152
  raise TechnicalException(f"Parameter 'data' is not a dict (obtained type: {Typing.get_object_class_fullname(data)})")
138
153
 
@@ -142,11 +157,11 @@ class AISMessages(object):
142
157
  sentences = pyais.encode_dict(data, seq_id=seq_id, talker_id=talker_id, **kwargs)
143
158
  return self.__encode_add_tag_block(sentences, tag_block, with_tag_block=with_tag_block, group_id=group_id)
144
159
 
145
- def encode_table(self, table, tag_block: HATagBlock = None, with_tag_block=True, talker_id: str = "AIVDM", **kwargs):
160
+ def encode_table(self, table, tag_block: TagBlock = None, with_tag_block=True, talker_id: str = "AIVDM", **kwargs):
146
161
  data = self.__convert_table_to_dict(table)
147
162
  return self.encode_data(data, tag_block=tag_block, with_tag_block=with_tag_block, talker_id=talker_id, **kwargs)
148
163
 
149
- def __encode_add_tag_block(self, encoded_sentences, tag_block: HATagBlock = None, with_tag_block=True, group_id=None):
164
+ def __encode_add_tag_block(self, encoded_sentences, tag_block: TagBlock = None, with_tag_block=True, group_id=None):
150
165
  from pyais.messages import TagBlockGroup
151
166
 
152
167
  if not with_tag_block:
@@ -166,7 +181,7 @@ class AISMessages(object):
166
181
  sentence_tag_block = copy.deepcopy(tag_block) if index == 0 else None
167
182
  if group_id is not None:
168
183
  if sentence_tag_block is None:
169
- sentence_tag_block = HATagBlock()
184
+ sentence_tag_block = TagBlock(None)
170
185
  sentence_tag_block._group = TagBlockGroup(msg_id=index+1, total=nb_sentences, group_id=group_id)
171
186
 
172
187
  if sentence_tag_block is not None:
@@ -182,11 +197,25 @@ class AISMessages(object):
182
197
  def convert_message_to_bytes(self, msg):
183
198
  return msg.to_bitarray().tobytes()
184
199
 
185
- def __get_message_type(self, msg_type:int):
200
+ def __get_message_type(self, msg_type:Union[int,str]):
186
201
  import importlib
202
+
203
+ if isinstance(msg_type, str):
204
+ msg_type = AISMessageType[msg_type].value
205
+
187
206
  module = importlib.import_module('pyais.messages')
188
207
  res = getattr(module, f"MessageType{msg_type}")
189
208
  return res
209
+
210
+ def __get_message_type_int(self, msg_type:Union[int,str]):
211
+ if isinstance(msg_type, int):
212
+ return msg_type
213
+
214
+ if isinstance(msg_type, str):
215
+ msg_type = AISMessageType[msg_type]
216
+ if not isinstance(msg_type, AISMessageType):
217
+ raise TechnicalException(f"Unmanaged message type of class '{Typing.get_object_class_fullname(msg_type)}'")
218
+ return msg_type.value
190
219
 
191
220
  def __convert_table_to_dict(self, table):
192
221
  if not ValueTableManager.is_table_with_header(table):
@@ -25,112 +25,23 @@ from bitarray import bitarray
25
25
  import attr
26
26
  import typing
27
27
  import pyais
28
- from pyais.messages import Payload, bit_field, from_mmsi, NMEA_VALUE, CommunicationStateMixin, TagBlock, ASTERISK, from_turn, to_turn, from_speed, to_speed,\
29
- from_lat_lon, to_lat_lon, from_10th, to_10th, from_lat_lon_600, to_lat_lon_600
30
- from pyais.util import get_int, from_bytes_signed, from_bytes, bits2bytes, checksum, chunks, compute_checksum, str_to_bin, bytes2bits
28
+ from pyais.messages import Payload, bit_field, from_mmsi, NMEA_VALUE, CommunicationStateMixin, from_speed, to_speed,\
29
+ from_lat_lon, to_lat_lon, from_10th, to_10th, from_lat_lon_600, to_lat_lon_600,\
30
+ from_turn, to_turn, ANY_MESSAGE
31
+ from pyais.util import get_int, from_bytes_signed, from_bytes, bits2bytes, chunks, str_to_bin, bytes2bits
31
32
  from pyais.exceptions import InvalidDataTypeException
32
- from pyais.encode import AIS_SENTENCES, DATA_DICT, get_ais_type, data_to_payload
33
- import math
34
- from pyais.constants import NavigationStatus, TurnRate, ManeuverIndicator, EpfdType, ShipType, NavAid, StationType, TransmitMode, StationIntervals
33
+ from pyais.constants import NavigationStatus, EpfdType, ShipType, NavAid, StationType, TransmitMode, StationIntervals,\
34
+ TurnRate, ManeuverIndicator
35
35
  import functools
36
36
 
37
37
  logger = logging.getLogger(__name__)
38
38
 
39
39
 
40
40
 
41
- # Add possibility to specify the seq_id in AIS sentence
42
- # Note: parameter seq_id is just added in some methods of pyais.encode module
43
-
44
- def HA_ais_to_nmea_0183(payload: str, ais_talker_id: str, radio_channel: str, fill_bits: int, seq_id: str = None) -> AIS_SENTENCES:
45
- """
46
- Splits the AIS payload into sentences, ASCII encodes the payload, creates
47
- and sends the relevant NMEA 0183 sentences. Messages have a maximum length
48
- of 82 characters, including the $ or ! starting character and the ending <LF>.
49
-
50
- HINT:
51
- This method takes care of splitting large payloads (larger than 60 characters)
52
- into multiple sentences. With a total of 80 maximum chars excluding end of line
53
- per sentence, and 20 chars head + tail in the nmea 0183 carrier protocol, 60
54
- chars remain for the actual payload.
55
-
56
- @param payload: Armored AIs payload.
57
- @param ais_talker_id: AIS talker ID (AIVDO or AIVDM)
58
- @param radio_channel: Radio channel (either A or B)
59
- @param fill_bits: The number of fill bits requires to pad the data payload to a 6 bit boundary.
60
- @return: A list of relevant AIS sentences.
61
- """
62
- messages = []
63
- max_len = 60
64
- frag_cnt = math.ceil(len(payload) / max_len)
65
- if seq_id is None:
66
- seq_id = '0' if frag_cnt > 1 else ''
67
- elif frag_cnt == 1:
68
- seq_id = ''
69
-
70
- if len(ais_talker_id) != 5:
71
- raise ValueError("AIS talker is must have exactly 6 characters. E.g. AIVDO")
72
-
73
- if len(radio_channel) != 1:
74
- raise ValueError("Radio channel must be a single character")
75
-
76
- for frag_num, chunk in enumerate(chunks(payload, max_len), start=1):
77
- tpl = "!{},{},{},{},{},{},{}*{:02X}"
78
- fill_bits_frag = fill_bits if frag_num == frag_cnt else 0 # Make sure we set fill bits only for last fragment
79
- dummy_message = tpl.format(ais_talker_id, frag_cnt, frag_num, seq_id, radio_channel, chunk, fill_bits_frag, 0)
80
- checksum = compute_checksum(dummy_message)
81
- msg = tpl.format(ais_talker_id, frag_cnt, frag_num, seq_id, radio_channel, chunk, fill_bits_frag, checksum)
82
- messages.append(msg)
83
-
84
- return messages
85
-
86
- pyais.ais_to_nmea_0183 = HA_ais_to_nmea_0183
87
-
88
-
89
- def HA_encode_dict(data: DATA_DICT, talker_id: str = "AIVDO", radio_channel: str = "A", seq_id: str = None) -> AIS_SENTENCES:
90
- """
91
- Takes a dictionary of data and some NMEA specific kwargs and returns the NMEA 0183 encoded AIS sentence.
92
-
93
- Notes:
94
- - the data dict should also contain the AIS message type (1-27) under the `type` key.
95
- - different messages take different keywords. Refer to the payload classes above to get a glimpse
96
- on what fields each AIS message can take.
97
-
98
- @param data: The AIS data as a dictionary.
99
- @param talker_id: AIS packets have the introducer "AIVDM" or "AIVDO";
100
- AIVDM packets are reports from other ships and AIVDO packets are reports from your own ship.
101
- @param radio_channel: The radio channel. Can be either 'A' (default) or 'B'.
102
- @return: NMEA 0183 encoded AIS sentences.
103
-
104
- """
105
- if talker_id not in ("AIVDM", "AIVDO"):
106
- raise ValueError("talker_id must be any of ['AIVDM', 'AIVDO']")
107
-
108
- if radio_channel not in ('A', 'B'):
109
- raise ValueError("radio_channel must be any of ['A', 'B']")
110
-
111
- ais_type = get_ais_type(data)
112
- payload = data_to_payload(ais_type, data)
113
- armored_payload, fill_bits = payload.encode()
114
- return pyais.ais_to_nmea_0183(armored_payload, talker_id, radio_channel, fill_bits, seq_id=seq_id)
115
-
116
- pyais.encode_dict = HA_encode_dict
117
-
118
-
119
- def HA_encode_msg(msg: Payload, talker_id: str = "AIVDO", radio_channel: str = "A", seq_id: str = None) -> AIS_SENTENCES:
120
- if talker_id not in ("AIVDM", "AIVDO"):
121
- raise ValueError("talker_id must be any of ['AIVDM', 'AIVDO']")
122
-
123
- if radio_channel not in ('A', 'B'):
124
- raise ValueError("radio_channel must be any of ['A', 'B']")
125
-
126
- armored_payload, fill_bits = msg.encode()
127
- return pyais.ais_to_nmea_0183(armored_payload, talker_id, radio_channel, fill_bits, seq_id=seq_id)
128
-
129
- pyais.encode_msg = HA_encode_msg
130
-
41
+ ### Fix conversion of message types to/from bitarray
131
42
 
132
43
  # All @ at end of string are considered padding.
133
- # Note: in pyais implementation, decode is stopped at first @.
44
+ # Note: in pyais implementation, decode is stopped at first @, which can be a regular field information, and following regular characters are skipped.
134
45
  def HA_decode_bin_as_ascii6(bit_arr: bitarray) -> str:
135
46
  """
136
47
  Decode binary data as 6 bit ASCII.
@@ -166,7 +77,7 @@ def HA_int_to_bin(val: typing.Union[int, bool], width: int, signed: bool = True)
166
77
  Compared to pyais implementation, the behaviour is changed if the value is too great to fit into
167
78
  `width` bits:
168
79
  - in pyais, the maximum possible number that still fits is used,
169
- - in this implementation, an exception is raised.
80
+ - in this implementation, a ValueError is raised.
170
81
 
171
82
  @param val: Any integer or boolean value.
172
83
  @param width: The bit width. If less than width bits are required, leading zeros are added.
@@ -191,52 +102,11 @@ pyais.util.int_to_bin = HA_int_to_bin
191
102
  pyais.messages.int_to_bin = HA_int_to_bin
192
103
 
193
104
 
194
- # Add spare field management
195
-
196
- def bit_field(width: int, d_type: typing.Type[typing.Any],
197
- from_converter: typing.Optional[typing.Callable[[typing.Any], typing.Any]] = None,
198
- to_converter: typing.Optional[typing.Callable[[typing.Any], typing.Any]] = None,
199
- default: typing.Optional[typing.Any] = None,
200
- signed: bool = False,
201
- variable_length: bool = False,
202
- is_spare: bool = False,
203
- **kwargs: typing.Any) -> typing.Any:
204
- """Same as pyais bit_field function, but adds a metadata 'is_spare' at True.
205
- Metadata 'is_spare' is used to know which fields must not be exported when converting message to dict or json.
206
- """
207
- return attr.ib(
208
- metadata={
209
- 'width': width,
210
- 'd_type': d_type,
211
- 'from_converter': from_converter,
212
- 'to_converter': to_converter,
213
- 'signed': signed,
214
- 'default': default,
215
- 'variable_length': variable_length,
216
- 'is_spare': is_spare
217
- },
218
- **kwargs
219
- )
220
-
221
- pyais.messages.bit_field = bit_field
222
-
223
-
224
105
  @attr.s(slots=True)
225
106
  class HAPayload(Payload):
226
- """Payload class with spare fields management.
107
+ """Payload class with fix in to/from bitarray conversion.
227
108
  """
228
109
 
229
- def asdict(self, enum_as_int: bool = False, with_spare: bool = False) -> typing.Dict[str, typing.Optional[NMEA_VALUE]]:
230
- res = super().asdict(enum_as_int)
231
-
232
- # Remove spare fields
233
- if not with_spare:
234
- for field in self.fields():
235
- if 'is_spare' in field.metadata and field.metadata['is_spare']:
236
- del res[field.name]
237
-
238
- return res
239
-
240
110
  @classmethod
241
111
  def from_bitarray(cls, bit_arr: bitarray) -> "ANY_MESSAGE":
242
112
  cur: int = 0
@@ -367,7 +237,7 @@ class HAPayload(Payload):
367
237
 
368
238
 
369
239
  # Fix message types:
370
- # - almost all types with new spare management
240
+ # - Use fixes of Payload implemented in HAPayload, in all message types
371
241
  # - type 21: exclude full_name property from asdict result
372
242
  # - type 26: fix create and from_bitarray methods
373
243
 
@@ -736,6 +606,38 @@ pyais.messages.MessageType17 = HAMessageType17
736
606
  pyais.messages.MSG_CLASS[17] = pyais.messages.MessageType17
737
607
 
738
608
 
609
+ @attr.s(slots=True)
610
+ class HAMessageType18(HAPayload, CommunicationStateMixin):
611
+ """
612
+ Standard Class B CS Position Report
613
+ Src: https://gpsd.gitlab.io/gpsd/AIVDM.html#_type_18_standard_class_b_cs_position_report
614
+ """
615
+ msg_type = bit_field(6, int, default=18, signed=False)
616
+ repeat = bit_field(2, int, default=0, signed=False)
617
+ mmsi = bit_field(30, int, from_converter=from_mmsi)
618
+
619
+ reserved_1 = bit_field(8, int, default=0, signed=False)
620
+ speed = bit_field(10, float, from_converter=from_speed, to_converter=to_speed, default=0, signed=False)
621
+ accuracy = bit_field(1, bool, default=0, signed=False)
622
+ lon = bit_field(28, float, from_converter=from_lat_lon, to_converter=to_lat_lon, signed=True, default=0)
623
+ lat = bit_field(27, float, from_converter=from_lat_lon, to_converter=to_lat_lon, signed=True, default=0)
624
+ course = bit_field(12, float, from_converter=from_10th, to_converter=to_10th, default=0, signed=False)
625
+ heading = bit_field(9, int, default=0, signed=False)
626
+ second = bit_field(6, int, default=0, signed=False)
627
+ reserved_2 = bit_field(2, int, default=0, signed=False)
628
+ cs = bit_field(1, bool, default=0, signed=False)
629
+ display = bit_field(1, bool, default=0)
630
+ dsc = bit_field(1, bool, default=0)
631
+ band = bit_field(1, bool, default=0)
632
+ msg22 = bit_field(1, bool, default=0)
633
+ assigned = bit_field(1, bool, default=0)
634
+ raim = bit_field(1, bool, default=0)
635
+ radio = bit_field(20, int, default=0)
636
+
637
+ pyais.messages.MessageType18 = HAMessageType18
638
+ pyais.messages.MSG_CLASS[18] = pyais.messages.MessageType18
639
+
640
+
739
641
  @attr.s(slots=True)
740
642
  class HAMessageType19(HAPayload):
741
643
  """
@@ -1064,7 +966,7 @@ class HAMessageType24PartA(HAPayload):
1064
966
  mmsi = bit_field(30, int, from_converter=from_mmsi)
1065
967
 
1066
968
  # partno = bit_field(2, int, default=0, signed=False)
1067
- reserved = bit_field(1, int, default=0, signed=False)
969
+ reserved = bit_field(1, int, default=0, signed=False, is_spare=True)
1068
970
  partno = bit_field(1, int, default=0, signed=False)
1069
971
  shipname = bit_field(120, str, default='')
1070
972
  spare_1 = bit_field(8, bytes, default=b'', is_spare=True)
@@ -1078,7 +980,9 @@ class HAMessageType24PartB(HAPayload):
1078
980
  repeat = bit_field(2, int, default=0, signed=False)
1079
981
  mmsi = bit_field(30, int, from_converter=from_mmsi)
1080
982
 
1081
- partno = bit_field(2, int, default=0, signed=False)
983
+ # partno = bit_field(2, int, default=0, signed=False)
984
+ reserved = bit_field(1, int, default=0, signed=False, is_spare=True)
985
+ partno = bit_field(1, int, default=0, signed=False)
1082
986
  ship_type = bit_field(8, int, default=0, signed=False)
1083
987
  vendorid = bit_field(18, str, default='', signed=False)
1084
988
  model = bit_field(4, int, default=0, signed=False)
@@ -1266,38 +1170,5 @@ pyais.messages.MessageType27 = HAMessageType27
1266
1170
  pyais.messages.MSG_CLASS[27] = pyais.messages.MessageType27
1267
1171
 
1268
1172
 
1269
- # Manage tag blocks
1270
-
1271
- class HATagBlock(TagBlock):
1272
- def __init__(self, raw: bytes = None) -> None:
1273
- super().__init__(raw)
1274
-
1275
- def to_raw(self):
1276
- fields = []
1277
- if self._group is not None:
1278
- fields.append(f"g:{self._group}")
1279
- if self._source_station is not None:
1280
- fields.append(f"s:{self._source_station}")
1281
- if self._receiver_timestamp is not None:
1282
- fields.append(f"c:{self._receiver_timestamp}")
1283
- if self._destination_station is not None:
1284
- fields.append(f"d:{self._destination_station}")
1285
- if self._line_count is not None:
1286
- fields.append(f"n:{self._line_count}")
1287
- if self._relative_time is not None:
1288
- fields.append(f"r:{self._relative_time}")
1289
- if self._text is not None:
1290
- fields.append(f"t:{self._text}")
1291
-
1292
- payload_str = ','.join(fields)
1293
- payload = payload_str.encode()
1294
-
1295
- chk_int = checksum(payload)
1296
- chk = f"{chk_int:02X}".encode()
1297
-
1298
- return payload + ASTERISK + chk
1299
-
1300
- pyais.messages.TagBlock = HATagBlock
1301
-
1302
1173
 
1303
1174
 
@@ -56,7 +56,7 @@ if AISMessages.is_available():
56
56
  Encode an AIS message to NMEA format
57
57
  """
58
58
  var_name = StepTools.evaluate_variable_name(var_name)
59
- table = BehaveStepTools.convert_step_table_2_value_table_with_header(context.table)
59
+ table = BehaveStepTools.get_step_table(context)
60
60
 
61
61
  res = __get_ais_messages().encode(table)
62
62
 
@@ -69,7 +69,7 @@ if AISMessages.is_available():
69
69
  """
70
70
  var_name = StepTools.evaluate_variable_name(var_name)
71
71
  msg = StepTools.evaluate_scenario_parameter(message)
72
- table = BehaveStepTools.convert_step_table_2_value_table_with_header(context.table)
72
+ table = BehaveStepTools.get_step_table(context)
73
73
 
74
74
  if table is not None:
75
75
  kwargs = ValueTableConverter.convert_table_with_header_to_dict(table)
@@ -101,12 +101,8 @@ if AISMessages.is_available():
101
101
  var_name = StepTools.evaluate_variable_name(var_name)
102
102
  msg_type = StepTools.evaluate_scenario_parameter(ais_message_type)
103
103
 
104
- if isinstance(msg_type, str):
105
- msg_type = AISMessageType[msg_type].value
106
-
107
104
  if hasattr(context, 'table') and context.table is not None:
108
105
  table = BehaveStepTools.convert_step_table_2_value_table_with_header(context.table)
109
- table.add_column(name='msg_type', cells_content=[msg_type])
110
106
  else:
111
107
  table = {}
112
108