-
Notifications
You must be signed in to change notification settings - Fork 7
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
DM-44158: Add database tests #243
Conversation
0e62f1b
to
dc355de
Compare
73e44fa
to
d8c2682
Compare
68fb6f0
to
0cd2791
Compare
0cd2791
to
fddfdd1
Compare
Insert a dummy mysql:datatype so that the schema can be instantiated into MySQL during CI.
The maximum length of a char column in MySQL is 255, so the string type needs to be used here instead.
fddfdd1
to
826f2e0
Compare
826f2e0
to
0c9d5b3
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is a big step forward in testability; looks good to me.
@@ -7749,7 +7749,7 @@ tables: | |||
tap:std: 1 | |||
tap:principal: 1 | |||
ivoa:unit: | |||
datatype: char | |||
datatype: string |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Confirmed with @iagaponenko that this is the right type, matching what's actually deployed in Qserv, VARCHAR(512)
This adds GitHub workflows and actions for testing whether database functionality works correctly for each schema file in the
yml
directory. There are three separate workflows for tests using MySQL, PostgreSQL, and SQLite. These are all called viaworkflow_dispatch
by thetest.yaml
workflow.Tested functionality on each schema includes:
felis create
commandfelis create
command with--output-file
The checks do not all pass now, because there are errors in some of these steps, mainly for MySQL.Also, TAP_SCHEMA loading does not work for any of the database types, because there are currently duplicate FK constraint names in the ConsDB schemas. (This is a known issue and will be fixed soon.)