summaryrefslogtreecommitdiff
path: root/bip-0158
AgeCommit message (Collapse)Author
2019-02-12BIP-0158: add test cases for OP_RETURN with op codes, empty filterOlaoluwa Osuntokun
In this commit, we add a new test case for a filter built from a block that has a transaction with an OP_RETURN which isn't followed by only push data items. The prior implementation for btcd (which was used to generated these test vectors), had a stricter check which caused it to add extra items to the filter. We also add a case of a block that has a single coinbase transaction, with that transaction having only an OP_RETURN output. As a result, that filter will be "empty", and is signalled by by a single zero (0x00) byte. In order to make building the code that makes the test vectors reproducible, we've added go.mod and go.sum files as well.
2018-08-27BIP 158: Add more cases to test vectors.Jim Posen
2018-07-04BIP-0158: regenerate test vectors for fp=19, new reg filter, no ext filterOlaoluwa Osuntokun
In this commit, we simplify the code that generates the test vectors to only generate filters for a target fp of 19, and also only for the regular filter, as it's the only filter type currently defined. The test vectors have also been updated to include the previous output scripts for all input within a block as these are now required to construct the regular filter. Finally, the generation code has been updated to properly fetch the previous input scripts to the generation code can verify the filter it generates manually against the end server.
2018-05-01BIP 158: Change test vectors from CSV to JSON format.Jim Posen
The JSON format is standard for Bitcoin Core test data.
2018-04-03BIP158: add test vectors and generation codeAlex
In this commit, we add test vectors for filter and header construction and the code to generate them. The included test vectors are for testnet with a value of 20 for P. The code generates filters and headers for values of 1 through 32 for P using testnet blocks. Currently, to run the code, the `Roasbeef` fork of `btcd` (at https://github.com/roasbeef/btcd) is required to be running locally in testnet mode; this will be changed in a future commit after the code is merged into the `btcsuite` mainline.