Skip to content

tests/library: separate fixtures from harness #15437

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Mar 7, 2025

Conversation

ijon
Copy link
Collaborator

@ijon ijon commented Mar 6, 2025

ydb/tests/library/harness/ydb_fixtures -> ydb/tests/library/fixtures.

Move module with pytest fixtures out of ydb/tests/library/harness and make it a separate (but dependent) library.
Part of the harness (namely ydbd launching framework: Daemon, runner etc), is widely used outside of ydb tests, and some of that uses still require py2 compatibility (so that harness must run under py2).

ydb's own tests (ydb/tests/functional) are all pure py3, so requirement for the test fixtures to be py2 compatible is excessive.

@ijon ijon requested a review from a team as a code owner March 6, 2025 18:26
Copy link

github-actions bot commented Mar 6, 2025

🟢 2025-03-07 10:03:22 UTC The validation of the Pull Request description is successful.

This comment was marked as outdated.

This comment was marked as outdated.

@ijon ijon requested a review from maximyurchuk March 7, 2025 08:54


@pytest.fixture(scope='module')
def ydb_cluster_configuration(request):
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Видимо, надо в каком то другом месте удалить?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Это про что?

to allow fixture module to be py3 only
@ijon ijon force-pushed the tests-make-fixtures-py3-only-module branch from 3c56229 to f5deb70 Compare March 7, 2025 09:45
@ydb-platform ydb-platform deleted a comment from github-actions bot Mar 7, 2025
@ydb-platform ydb-platform deleted a comment from github-actions bot Mar 7, 2025
Copy link

github-actions bot commented Mar 7, 2025

2025-03-07 09:49:51 UTC Pre-commit check linux-x86_64-release-asan for 613539e has started.
2025-03-07 09:50:06 UTC Artifacts will be uploaded here
2025-03-07 09:52:27 UTC ya make is running...
🟡 2025-03-07 10:36:40 UTC Some tests failed, follow the links below. This fail is not in blocking policy yet Going to retry failed tests...

Test history | Ya make output | Test bloat

TESTS PASSED ERRORS FAILED SKIPPED MUTED?
1900 1870 0 11 12 7

2025-03-07 10:37:00 UTC ya make is running... (failed tests rerun, try 2)
🟢 2025-03-07 10:48:45 UTC Tests successful.

Test history | Ya make output | Test bloat | Test bloat

TESTS PASSED ERRORS FAILED SKIPPED MUTED?
32 (only retried tests) 20 0 0 6 6

🟢 2025-03-07 10:48:51 UTC Build successful.
🟡 2025-03-07 10:49:08 UTC ydbd size 3.7 GiB changed* by +318.8 KiB, which is >= 100.0 KiB vs main: Warning

ydbd size dash main: a790a6d merge: 613539e diff diff %
ydbd size 3 994 271 672 Bytes 3 994 598 120 Bytes +318.8 KiB +0.008%
ydbd stripped size 1 388 750 024 Bytes 1 388 829 160 Bytes +77.3 KiB +0.006%

*please be aware that the difference is based on comparing your commit and the last completed build from the post-commit, check comparation

Copy link

github-actions bot commented Mar 7, 2025

2025-03-07 09:51:04 UTC Pre-commit check linux-x86_64-relwithdebinfo for 613539e has started.
2025-03-07 09:51:19 UTC Artifacts will be uploaded here
2025-03-07 09:53:44 UTC ya make is running...
🟡 2025-03-07 10:39:44 UTC Some tests failed, follow the links below. Going to retry failed tests...

Test history | Ya make output | Test bloat

TESTS PASSED ERRORS FAILED SKIPPED MUTED?
4971 4850 0 3 36 82

2025-03-07 10:40:15 UTC ya make is running... (failed tests rerun, try 2)
🟢 2025-03-07 10:51:54 UTC Tests successful.

Test history | Ya make output | Test bloat | Test bloat

TESTS PASSED ERRORS FAILED SKIPPED MUTED?
98 (only retried tests) 21 0 0 0 77

🟢 2025-03-07 10:52:03 UTC Build successful.
🟡 2025-03-07 10:52:15 UTC ydbd size 2.1 GiB changed* by +213.7 KiB, which is >= 100.0 KiB vs main: Warning

ydbd size dash main: a790a6d merge: 613539e diff diff %
ydbd size 2 293 426 832 Bytes 2 293 645 624 Bytes +213.7 KiB +0.010%
ydbd stripped size 480 452 128 Bytes 480 484 512 Bytes +31.6 KiB +0.007%

*please be aware that the difference is based on comparing your commit and the last completed build from the post-commit, check comparation

@ijon ijon enabled auto-merge (squash) March 7, 2025 10:02
@ijon ijon requested a review from maximyurchuk March 7, 2025 12:12
@ijon ijon merged commit e4821cc into ydb-platform:main Mar 7, 2025
16 checks passed
@ijon ijon deleted the tests-make-fixtures-py3-only-module branch March 7, 2025 14:41
adameat pushed a commit to adameat/ydb that referenced this pull request Mar 20, 2025
`ydb/tests/library/harness/ydb_fixtures` -> `ydb/tests/library/fixtures`.

Move module with pytest fixtures out of `ydb/tests/library/harness` and make it a separate (but dependent) library.
Part of the `harness` (namely `ydbd` launching framework: `Daemon`, runner etc), is widely used outside of ydb tests, and some of that uses still require py2 compatibility (so that `harness` must run under py2).

ydb's own tests (`ydb/tests/functional`) are all pure py3, so requirement for the test fixtures to be py2 compatible is excessive.
blinkov pushed a commit that referenced this pull request Mar 21, 2025
`ydb/tests/library/harness/ydb_fixtures` -> `ydb/tests/library/fixtures`.

Move module with pytest fixtures out of `ydb/tests/library/harness` and make it a separate (but dependent) library.
Part of the `harness` (namely `ydbd` launching framework: `Daemon`, runner etc), is widely used outside of ydb tests, and some of that uses still require py2 compatibility (so that `harness` must run under py2).

ydb's own tests (`ydb/tests/functional`) are all pure py3, so requirement for the test fixtures to be py2 compatible is excessive.
ijon added a commit to ijon/ydb that referenced this pull request Mar 25, 2025
`ydb/tests/library/harness/ydb_fixtures` -> `ydb/tests/library/fixtures`.

Move module with pytest fixtures out of `ydb/tests/library/harness` and make it a separate (but dependent) library.
Part of the `harness` (namely `ydbd` launching framework: `Daemon`, runner etc), is widely used outside of ydb tests, and some of that uses still require py2 compatibility (so that `harness` must run under py2).

ydb's own tests (`ydb/tests/functional`) are all pure py3, so requirement for the test fixtures to be py2 compatible is excessive.
ijon added a commit to ijon/ydb that referenced this pull request Mar 26, 2025
`ydb/tests/library/harness/ydb_fixtures` -> `ydb/tests/library/fixtures`.

Move module with pytest fixtures out of `ydb/tests/library/harness` and make it a separate (but dependent) library.
Part of the `harness` (namely `ydbd` launching framework: `Daemon`, runner etc), is widely used outside of ydb tests, and some of that uses still require py2 compatibility (so that `harness` must run under py2).

ydb's own tests (`ydb/tests/functional`) are all pure py3, so requirement for the test fixtures to be py2 compatible is excessive.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants