test: use walletkit-testkit for core proof-generation integration tests#449
Merged
Merged
Conversation
…:worldcoin/walletkit into kilianglas/use-testkit-integration-tests
Dzejkop
reviewed
Jul 21, 2026
Dzejkop
previously approved these changes
Jul 21, 2026
Dzejkop
approved these changes
Jul 21, 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.
Summary
Migrates
walletkit-core's proof-generation integration tests onto thewalletkit-testkithelpers, removing a second hand-rolled copy of the full staging proof flow and its duplicated hardcoded fixtures (RP id, issuer schema, keys, verifier, RPC), which now live centrally inTestEnv.Changes
walletkit-testkitas a dev-dependency ofwalletkit-core(path-only,publish = false, so it is stripped from the published manifest). Addtempfileas a dev-dependency.crates/walletkit-core/tests/proof_generation_integration.rs:e2e_authenticator_generate_proofcollapses to a singlegenerate_and_verify_test_proof(CredentialType::Local, .., ProofType::Uniqueness)call (~200 lines → a few).e2e_session_proofis rebuilt on the lower-level helpers (init_and_register_account,issue_local_credential,build_test_request), keeping the parts unique to this crate: the follow-upProofType::Sessionproof and the WIP-103 ownership-proof Merkle-root cross-check.#[ignore]d), exactly as before the migration — this PR does not change which tests run in CI.TestEnv::default_staging()now honors theWORLDCHAIN_RPC_URLenv var (for both the verifier RPC and the World ID config), preserving the migrated tests' previous behavior — CI passes this from a secret.build_base_credentialfromtests/common.rs— it was a verbatim duplicate ofwalletkit_testkit::issuer::build_base_credentialand is no longer referenced.Test plan
cargo clippy --workspace --all-targets -- -D warnings— clean.cargo fmt --check— clean.cargo package -p walletkit-core— packaged manifest contains nowalletkit-testkitreference (dev-dep stripped), confirming publish safety.cargo test -p walletkit-core --test proof_generation_integration --features embed-zkeys