Skip to content

Use the PoB Codes corpus in the existing build-diff tests - #15

Merged
Paliak merged 2 commits into
Paliak:tests-branchfrom
AdamZ-8113:pob-codes-corpus-ci
Sep 10, 2026
Merged

Paliak merged 2 commits into
Paliak:tests-branchfrom
AdamZ-8113:pob-codes-corpus-ci

Conversation

@AdamZ-8113

Copy link
Copy Markdown

This connects your existing build-diff tests to the PoB Codes API. The API manages the rolling collection of up to 500 builds. CI downloads it when there isn't a calculated base cache, then keeps the input list, downloaded XML, and calculated base results together. Later runs reuse that same collection and base results.

This keeps your existing batches of 50, runtime comparison, full saved-XML comparison, and stat comparison. It uses the official PoB test image, with the dependencies your existing scripts need installed at startup. Decoding stays in Lua. There are no Dockerfile changes, Python dependency, or downloaded builds committed to Git. The old scheduled build-list collector is removed because PoB Codes handles that now.

There are a few small fixes alongside the API connection. Test files are preserved when switching revisions, and the stat comparison handles XML attributes in either order. Failed commands stop the run.

I tested this locally against the actual API with 500 builds and the five existing fixtures. Both sides calculated all 505 inputs. A second run reused the base cache and detected an intentional +1 Life change in every input, without downloading the collection or recalculating the base. The unchanged-revision comparison still reports calculation differences; no calculation fixes are included here.

I tested locally using PoB v2.67.2 and the live PoB Codes API. Coverage tracking was temporarily disabled during those tests because it slowed things down substantially, but the PR doesn't change this. I haven’t repeated the full run with coverage enabled or tested the workflow through GitHub Actions yet.

@Paliak
Paliak merged commit 687405e into Paliak:tests-branch Sep 10, 2026
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.

2 participants