test(dursto): add regression testing for Database#1074
Merged
Conversation
cdde4f1 to
84cb39e
Compare
Codecov Report❌ Patch coverage is
❌ Your patch check has failed because the patch coverage (53.12%) is below the target coverage (80.00%). You can increase the patch coverage or adjust the target coverage. Additional details and impacted files@@ Coverage Diff @@
## main #1074 +/- ##
==========================================
- Coverage 90.14% 90.09% -0.05%
==========================================
Files 130 130
Lines 28198 28230 +32
Branches 28198 28230 +32
==========================================
+ Hits 25418 25435 +17
- Misses 2031 2042 +11
- Partials 749 753 +4 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
|
Benchmark results for revision 97e2863:
Full results
Compare the results above with those for the default branch. |
emturner
reviewed
May 27, 2026
d90ad5a to
390f49a
Compare
390f49a to
823e13b
Compare
823e13b to
174c72a
Compare
emturner
approved these changes
May 27, 2026
jobjo
approved these changes
May 29, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes RV-980.
What
Adds regression testing for
Databasealong with the functionality required to (re-)generate regression test inputs.Why
To make sure the semantics of
Databaseoperations don't unexpectedly change as we stabilise the NDS.How
A new
test_database_regressiontest is added which readsDatabaseoperations from checked-in JSON files, runs them on both backends viakv_test!, produces traces, and compares them with the corresponding checked-in JSON traces.An xtask crate is added for
durable-storagewith a single command at the moment which will regenerate the inputs and run the test in order to also regenerate the outputs. Inputs are generated usingdatabase_operations_strategyin the range of 90..100 operations.Under the
unstable-test-utilsflag, serialisation and deserialisation is implemented or derived for types which are used in either operations of traces.Manually Testing
Regressions
New regressions for
Databaseare introduced indurable-storage/tests/inputsand expected outputs indurable-storage/tests/expectedTasks for the Author