Skip to content
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

bug: Tap tests parameters are cached across test classes #1912

Closed
1 task done
edgarrmondragon opened this issue Aug 16, 2023 · 0 comments · Fixed by #1913
Closed
1 task done

bug: Tap tests parameters are cached across test classes #1912

edgarrmondragon opened this issue Aug 16, 2023 · 0 comments · Fixed by #1913
Labels

Comments

@edgarrmondragon
Copy link
Collaborator

edgarrmondragon commented Aug 16, 2023

Singer SDK Version

0.31.0

Is this a regression?

  • Yes

Python Version

NA

Bug scope

Taps (catalog, state, etc.)

Operating System

NA

Description

A regression was introduced in v0.29.0, specifically by #1752.

Before, it was possible to run multiple test suites for a tap, each with a different input catalog. This was useful if the developer wanted to test different sets of streams with different configs. For example, tap-postgres does this:

TapPostgresTestNOSQLALCHEMY = get_tap_test_class(
    tap_class=TapPostgres,
    config=NO_SQLALCHEMY_CONFIG,
    catalog="tests/resources/data.json",
    custom_suites=[custom_test_replication_key],
)


# creating testing instance for isolated table in postgres
TapPostgresTestSelectedColumnsOnly = get_tap_test_class(
    tap_class=TapPostgres,
    config=SAMPLE_CONFIG,
    catalog="tests/resources/data_selected_columns_only.json",
    custom_suites=[custom_test_selected_columns_only],
)

Seems to be related to class-level attributes used to define pytest parameterization.


This is causing tap-postgres tests to fail: https://github.com/MeltanoLabs/tap-postgres/actions/runs/5799561671/job/15719827945?pr=192

Code

No response

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant