Introduce a collective library containing all the tools required by hive python tests
Related: haf!211 (merged), HAfAH!56 (merged)
Best to review by commits since there are many changes.
Created hive-local-tools
installable package, which could be installed to provide nice access to all the tools used by hive tests.
Now all things could be imported like from hive_local_tools import run_for
The hive-local-tools
consists of (sub)modules/packages:
- hive_local_tools (package -> all local_tools collected in one package, there are nested subpackages like
hive_local_tools.functional.python.cli_wallet
) - shared-tools (package, maybe in future should be submodule also -> tools shared by different repositories e.g hive, haf)
- test-tools (submodule)
- schemas (submodule)
- hive_utils (package*)
- test_utils(package* located as in previous location - in hive_local_tools.functional.python.beem.decentralized_hive_fund)
- tests_api (package*)
packages with * (hive_utils, test_utils, tests_api) should be probably refactored/rewritten/removed as they do not follow rules present in our current tests (test-tools, shared-tools, local-tools scheme). Probably some of it's parts should be stored in hive_local_tools, but after refactoring, since at first glance it looks like there is a lot of unused code (ft. hive_utils).
Also, hive-local-tools defines its own dependencies like pytest
, pytest-xdist
, and so on...
This MR gives some benefits:
- all test dependencies installable by single line
- absolute imports instead of huge amount of relative dots (
from ......local_tools
) - no need for PYTHONPATH hacks, as everything is pip/poetry* installable
- possibility to introduce some static code analysis tools for tests like automated imports sorter or code formatted (shorter review, faster coding)
*preferable poetry as some of it's features lacks in pip package manager, but pip could also install poetry builds, when no poetry features are configures
Merge request reports
Activity
assigned to @mzebrak
added 6 commits
- e12bd6ec - Adapt decentralized_hive_fund_tests imports
- 38670279 - Update CMakeLists.txt with new directory of tests_api
- 662ccb17 - Adjust .gitlab-ci.yaml to installable test dependencies package
- b6ce8ec7 - Update test-tools submodule
- b138b61f - Move shared_utilities to local_tools
- 6caa761f - Update path of transaction patterns
Toggle commit listadded 6 commits
- c2ac1a95 - Update CMakeLists.txt with new directory of tests_api
- 70181649 - Adjust .gitlab-ci.yaml to installable test dependencies package
- 3faef9b7 - Update test-tools submodule
- 79ccc688 - Move shared_utilities to local_tools
- 0209baba - Update path of transaction patterns
- 335bab33 - Update tests_api path in tox.ini
Toggle commit listadded 18 commits
-
7aabdfa4 - 1 commit from branch
master
- 7de190f1 - Rename installable packages to replace `_` with `-`
- 23feb27b - Move shared_tools package out of package called package
- b3d258f9 - Update shared-tools metadata
- 0fa5cc0e - Create base of package called hive-local-tools
- 958cf48d - Move all python tests related modules inside hive-local-tools
- 244c1b21 - Move all local_tools modules inside hive_local_tools package
- aa2a8a0c - Move test_utils inside hive_local_tools package
- ba01aa2b - Specify hive-local-tools dependencies
- 47f4d6ec - Generate the poetry.lock file
- 4fbcaca2 - Adapt imports to absolute hive-local-tools
- 4c6043c6 - Adapt decentralized_hive_fund_tests imports
- 3715fb17 - Update CMakeLists.txt with new directory of tests_api
- 0618b399 - Adjust .gitlab-ci.yaml to installable test dependencies package
- d65db863 - Update test-tools submodule
- 452f82b0 - Move shared_utilities to local_tools
- de8c7b0a - Update path of transaction patterns
- 955c3494 - Update tests_api path in tox.ini
Toggle commit list-
7aabdfa4 - 1 commit from branch
requested review from @bwrona
added 16 commits
- c8789124 - Rename installable packages to replace `_` with `-`
- be4e792c - Move shared_tools package out of package called package
- 3d05a91e - Update shared-tools pyproject.toml and poetry.lock
- 1ecb8741 - Create base of package called hive-local-tools
- f63c476c - Move all python tests related modules inside hive-local-tools
- 98d16955 - Move all local_tools modules inside hive_local_tools package
- 6230452c - Move test_utils inside hive_local_tools package
- 21f4768c - Specify hive-local-tools dependencies
- 61a4d55b - Generate the poetry.lock file
- f2ba602c - Adapt imports to absolute hive-local-tools
- e93a50fb - Adapt decentralized_hive_fund_tests imports
- 5c9ddeea - Move shared_utilities to local_tools
- 9a11212f - Update path of transaction patterns
- 59ca47fb - Update CMakeLists.txt with new directory of tests_api
- 50abf4f7 - Update tests_api path in tox.ini
- 18c3fb49 - Adjust .gitlab-ci.yaml to installable test dependencies package
Toggle commit list- Resolved by Bartek Wrona
- Resolved by Bartek Wrona
added 24 commits
-
18c3fb49...2a79d97f - 8 commits from branch
develop
- 4e114b21 - Rename installable packages to replace `_` with `-`
- ec998974 - Move shared_tools package out of package called package
- 40f69c6f - Update shared-tools pyproject.toml and poetry.lock
- 7fe3b0c3 - Create base of package called hive-local-tools
- 9adcd0c6 - Move all python tests related modules inside hive-local-tools
- 7afaf59b - Move all local_tools modules inside hive_local_tools package
- d8c627ea - Move test_utils inside hive_local_tools package
- c6f3092e - Specify hive-local-tools dependencies
- 2aba8b1e - Generate the poetry.lock file
- fe15d757 - Adapt imports to absolute hive-local-tools
- 48cd078a - Adapt decentralized_hive_fund_tests imports
- e390f14c - Move shared_utilities to local_tools
- 16249834 - Update path of transaction patterns
- f250dada - Update CMakeLists.txt with new directory of tests_api
- cf4b08b4 - Update tests_api path in tox.ini
- 02f7fa9f - Adjust .gitlab-ci.yaml to installable test dependencies package
Toggle commit list-
18c3fb49...2a79d97f - 8 commits from branch