Wallet Fixture Studio

Fixture editor and test matrix for wallet funding sources

Browse and edit fixtures_rest.json and fixtures_rpc.json with the same expansion logic the wallet tests use. The explorer shows which funding source, test case, and merged mocks produce each generated wallet test.

{{ datasetDef.label }}
{{ datasets[datasetDef.key].analysis ? datasets[datasetDef.key].analysis.summary.expandedTests : 0 }} generated wallet tests
Funding Sources
{{ currentDataset.analysis.summary.fundingSources }}
Functions
{{ currentDataset.analysis.summary.functions }}
Raw Test Cases
{{ currentDataset.analysis.summary.rawTests }}
Expanded Wallet Tests
{{ currentDataset.analysis.summary.expandedTests }}

Current Dataset

{{ currentDatasetKindHelp }}
{{ currentDataset.analysis ? 'Loaded' : 'Waiting' }}
Fixture File
{{ currentDataset.fileName }}
Fixture Path
{{ currentDataset.relativePath }}
Pytest File
{{ currentDataset.testFile }}
Loaded From
{{ currentDataset.sourceLabel || 'Not loaded yet' }}
{{ currentDataset.loadError }}

Function Explorer

Select a wallet interface method, then inspect its raw test cases.
No functions match the current search.

Raw Test Cases

These are the entries under functions.{{ currentFunctionName || '...' }}.tests.
No raw tests match the current search for this function.

Funding Sources

Wallet classes and settings configured in the current fixture file.
{{ wallet.name }}
{{ wallet.wallet_class }}
{{ Object.keys(wallet.settings || {}).length }} settings Skipped by wallet config

Function-Level Mock Templates

These are the reusable mock definitions under functions.{{ currentFunction.name }}.mocks.
{{ currentFunction.name }}

{{ entry.fundingSource.name }}

{{ entry.fundingSource.wallet_class }}
{{ entry.mockNames.length }} mocks
{{ mock.name }}
{{ mockSummary(mock) }}
No base mock templates for this wallet in this function.

Selected Raw Test

Source path: {{ selectedRawTestPath }}
{{ selectedRawTest.description || `Test ${selectedRawTest.index + 1}` }}
{{ coverage.fundingSource.name }} · {{ coverage.variantCount }}

Generated Wallet Tests

Expanded using the same wallet-test combination rules as {{ currentDataset.testFile }}.

{{ walletEntry.fundingSource.name }}

{{ walletEntry.fundingSource.wallet_class }}
{{ walletEntry.status.label }} {{ walletEntry.variants.length }} variants
Base path: {{ walletEntry.basePath }} Test path: {{ walletEntry.testPath }}
{{ walletEntry.note }}

{{ variantDisplayLabel(variant) }}

{{ buildTestId(variant) }}
Skipped {{ variant.expect_error ? 'expect_error' : 'expect' }}
{{ mock.name }}
{{ mock.name }}
{{ mockSummary(mock) }}
{{ mock.response_type || 'n/a' }}
Base Mock Path
{{ baseMockPath(currentFunctionName, walletEntry.fundingSource.name, mock.name) }}
Test Mock Path
{{ testMockPath(currentFunctionName, selectedRawTest.index, walletEntry.fundingSource.name, mock.name, mock._meta.testMockIndex) }}
This variant does not generate any combined mocks.