BIP 0016 QA

From Bitcoin Wiki
Revision as of 16:01, 30 January 2012 by Gavinandresen (talk | contribs) (QA test summary/plan)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

This page is a Quality Assurance test plan for BIP 16. If you see a test missing, please add it. If you can help test, please edit this page to sign-off on it.

Done Test Procedure Tested by
Run BIP-16-capable Bitcoin 0.6 on testnet and main net

Send coins using GUI, RCP sendtoaddress, and RCP sendmany commands
Result: coins sent in all cases

Gavin Andresen
Run BIP-16-capable backport Bitcoin 0.3.19 through 0.5.1 on testnet and main net

Send coins using GUI, RCP sendtoaddress, and RCP sendmany commands
Result: coins sent in all cases

Gavin Andresen (tested 0.3.19, 0.3.24 and 0.5.1)
Run BIP-16-capable Bitcoin 0.6.0 on testnet

Mine coins using built-in miner
Created blocks accepted, show up on blockexplorer.com/testnet

Gavin Andresen
Run BIP-16-capable Bitcoin 0.6.0 on testnet

Mine coins using getwork interface
Created blocks accepted, show up on blockexplorer.com/testnet

Gavin Andresen
Run BIP-16-capable Bitcoin 0.6.0 on testnet

Mine coins using getmemorypool interface
Created blocks accepted, show up on blockexplorer.com/testnet

Run BIP-16-capable Bitcoin 0.3.19 through 0.5.1 backports on testnet

Mine coins using built-in miner
Created blocks accepted, show up on blockexplorer.com/testnet

Gavin Andresen (tested all on a testnet-in-a-box)
Run BIP-16-capable Bitcoin 3.19 through 0.5.1 backports on testnet

Mine coins using getwork interface
Created blocks accepted, show up on blockexplorer.com/testnet

Gavin Andresen (tested all on a testnet-in-a-box)
Run BIP-16-capable Bitcoin 0.3.19 through 0.5.1 backports on testnet

Mine coins using built-in miner
Created blocks accepted, show up on blockexplorer.com/testnet

Gavin Andresen (tested all on a testnet-in-a-box)
Run BIP-16-capable Bitcoin 3.19 through 0.5.1 backports on testnet

Mine coins using getwork interface
Created blocks accepted, show up on blockexplorer.com/testnet

Gavin Andresen (tested all on a testnet-in-a-box)
Run BIP-16-capable Bitcoin 3.19 through 0.5.1 backports on testnet

Mine coins using getmemorypool interface
Created blocks accepted, show up on blockexplorer.com/testnet

Create/run unit tests for:

multisignature signing/verification
multisignature invalid signature failure
multisignature IsStandard() success/failure
extraction of addresses from multisignature transactions
BIP 16 IsStandard() success/failure (including failure with OP_PUSHDATA1/2/4)
BIP 16 AreInputsStandard() success/failure
BIP 16 compatibility with other 3 standard transaction types
BIP 16 no-recursion test
BIP 16 switchover date logic
OP_CHECKMULTISIG counting of signature operations inside BIP 16 transactions

Gavin Andresen (see test/multisig_tests.cpp, test/script_tests.cpp, test/script_P2SH_tests.cpp, test/sigopcount_tests.cpp in the bitcoin source tree; 'make test_bitcoin' in src/ directory to compile)
Create/run 'transaction fuzzer' to stress-test BIP 16 transactions Gavin Andresen (https://github.com/gavinandresen/bitcoin-git/tree/fuzzer , run twice on both testnet-in-a-box and testnet with 100,000 'fuzzed' transactions each test run)