8000 ci: run the #863 nightly candidate acceptance suite (v3) by adityamukho · Pull Request #878 · project-minigraf/minigraf · GitHub
[go: up one dir, main page]

Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 10 additions & 1 deletion .github/acceptance/test_verify.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
"""Regression checks for false-green acceptance output (no third-party modules)."""
import unittest

from verify import verify
from verify import SUITES, verify


class AcceptanceOutputTests(unittest.TestCase):
Expand Down Expand Up @@ -46,6 +46,15 @@ def test_storage_test_full_name_is_required(self):
with self.assertRaises(ValueError):
verify(self.output(['unrelated']), [name], [])

def test_nightly_candidates_suite_needs_all_six(self):
names, rss = SUITES['nightly-candidates']
self.assertEqual(len(names), 6)
# The port check is not ignored, so `--ignored` filters it out.
output = self.output(names).replace('0 filtered out', '1 filtered out')
verify(output, names, rss)
with self.assertRaises(ValueError):
verify(self.output(names[:5]), names, rss)


if __name__ == '__main__':
unittest.main()
6 changes: 6 additions & 0 deletions .github/acceptance/verify.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,12 @@
[],
),
'size-per-fact': (['storage::persistent_facts::tests::size_per_fact_in_433_shape_1m'], []),
'nightly-candidates': (
['n1_skew_running_sum_streams_by_partition', 'n2_set_membership_k256',
'n3_sort_heap_holds_offset_plus_limit', 'n4_small_tree_takes_ancestor_alternative',
'n5_committed_tree_uses_bound_value_probes', 'n6_held_cursor_quarantine_and_reuse'],
[],
),
}


Expand Down
10 changes: 8 additions & 2 deletions .github/workflows/smoke.yml
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ jobs:
echo "sha=$sha" >> "$GITHUB_OUTPUT"
echo "Measured source: $sha; workflow: ${{ github.workflow_sha }}" >> "$GITHUB_STEP_SUMMARY"
acceptance=true
for test in recursive memory_limit limit large_transaction; do
for test in recursive memory_limit limit large_transaction nightly_candidates; do
if [ ! -f "tests/${test}_acceptance_test.rs" ]; then
acceptance=false
fi
Expand Down Expand Up @@ -105,6 +105,12 @@ jobs:
- name: size-per-fact
timeout: 15
command: cargo test --lib size_per_fact_in_433_shape_1m -- --include-ignored --nocapture
# #863: answers, path events and charged memory of the qualified #841
# candidates (times are in bench.yml). Six tests took 37-57 s on
# ubuntu-latest after the build.
- name: nightly-candidates
timeout: 30
command: cargo test --profile bench --features test-hooks --test nightly_candidates_acceptance_test -- --ignored --nocapture --test-threads=1
steps:
- uses: actions/checkout@v4
with:
Expand Down Expand Up @@ -163,6 +169,6 @@ jobs:
merge-multiple: false
- name: Require the complete test inventory and measured RSS checks
run: |
for suite in recursive memory-limit limit large-transaction size-per-fact; do
for suite in recursive memory-limit limit large-transaction size-per-fact nightly-candidates; do
python3 -I .github/acceptance/verify.py "$suite" "acceptance-artifacts/acceptance-$suite/acceptance.txt"
done
Loading
0