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

normalize standard test names #3539

Merged
merged 7 commits into from
May 22, 2021
Merged

Conversation

cgardens
Copy link
Contributor

@cgardens cgardens commented May 21, 2021

What

  • Names across sources / destinations (and even within source and destinations) for standard tests vary a ton. Trying to standardize them so it is easier to find the tests. Also should be easier for new hires / contributors to find the tests

Updated Nomenclature Rules

  • The new logic for the nomenclature is as follows. We have "Standard Tests".
  • Standard Tests for sources are called "Source Standard Tests".
  • Standard Tests for destinations are called "Destination Standard Tests".
  • When a connector implements one of these test suites, we do "<Source/Destination>Standard Test" (e.g. MySqlSourceStandardTest). All of the transformations that I performed below should follow this nomenclature.
  • The Standard Test suite that is specialized for Jdbc Sources is called "Jdcb Source Standard Test"
  • When a connector implements the Jdbc Source Standard Test, we do "<*connector-name>JdbcSourceStandardTest" (e.g. MySqlJdbcSourceStandardTest. This isn't perfectly analogous to the "normal" standard tests naming, but I don't think bringing it in line by using the word Source twice in the class names adds anything but insanity.

Transformations

  • TestDestination => DestinationStandardTest
  • StandardSourceTest => SourceStandardTest
  • PythonTestSource => PythonSourceStandardTest
  • in cases where tests are called integration tests but are actually standard tests rename to standard test e.g. MSSQLIntegrationTest => MSSQLSourceStandardTest
  • Add the word Source or Destination to any implementation of Standard Tests. This gets a bit verbose, but is clearer.
  • Considered renaming DestinationStandardTest => BaseDestinationStandardTest and SourceStandardTest => BaseSourceStandardTest. Decided not to, but honestly it was a coin flip, so if someone wants to make a compelling argument for it, i'd do it.

┆Issue is synchronized with this Asana task by Unito

Copy link
Contributor

@sherifnada sherifnada left a comment

Choose a reason for hiding this comment

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

Agree with the unification 💪🏼 WDYT about "Acceptance test" instead? it's more ubiquitous in test naming and therefore more readily understood imo.

It's also the name we've given the new python test suite. We can change that too, but I think acceptance test is a clearer reflection of their purpose

@cgardens
Copy link
Contributor Author

@sherifnada thats an interesting though. so essentially replace "standard" => "acceptance"? I think that's a good call.

@cgardens
Copy link
Contributor Author

@sherifnada did as you suggested for all java cases. I have not updated all docs to reflect the new "acceptance" test nomenclature as I think there's a lot in python land that's still the old name? anyway we can figure out what to do with docs next.

@sherifnada
Copy link
Contributor

Great! I've created an issue to track: https://github.com/airbytehq/airbyte-internal-issues/issues/93

@cgardens cgardens merged commit 8983f09 into master May 22, 2021
@cgardens cgardens deleted the cgardens/normalize_standard_test_names branch May 22, 2021 20:40
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.

None yet

2 participants