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

Testing with revisions #7

Open
ghost opened this issue May 18, 2020 · 2 comments
Open

Testing with revisions #7

ghost opened this issue May 18, 2020 · 2 comments

Comments

@ghost
Copy link

ghost commented May 18, 2020

Consider a series of revisions A-B-C-D. This can of course nicely capture the database structure, but between each step, there are tests perform. They typically consist of rolling the database forward to a testing state first and discarding temporary test stuff.
This does not look great.

  • a separate testing infrastructure should understand the revision scheme
  • a separate infrastructure has to implement its own test-revision scheme

The ideal with be a double-stranded scheme
A ------- B ------C ------- D
| | | |
Ta------- Tb---- |Tc ------Td
After a revision, e.g C, has been applied the testing state should be rolled forward to Tc.
Conversely, the test downgrade should also work.

The revision scheme can be 'misused' for this as follows:
A Ta-- B Tb ---- C Tc ----DTc
But then you can not easily extract the original, production-related revision line.

A hack is to create two migration directories with shared revisionids.

@sstalin
Copy link
Contributor

sstalin commented May 18, 2020

2 migrations directory wont be suggested. If you have 2 DB , one prod and one test, you can switch between by changing config (mroll.ini) in working directory. I know not ideal it is a bit manual

@ghost
Copy link
Author

ghost commented May 18, 2020

The point is that there is a relationship to be maintained. One way or another. And since the two are tightly coupled it should be easy.

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

No branches or pull requests

1 participant