diff options
author | Jimmy Song <jaejoon@gmail.com> | 2017-04-18 13:11:06 -0700 |
---|---|---|
committer | Jimmy Song <jaejoon@gmail.com> | 2017-04-19 14:53:44 -0700 |
commit | 821dd5e3e107b01a21e7e26b76ebef4ee49402b2 (patch) | |
tree | 12f10b454e32e336d026d77b29a774ff8833ac8a /test/functional | |
parent | c91ca0ace9bd62eea8158b92cfc53d6d219e37b7 (diff) |
Tests: Add test for getdifficulty
Test added to blockchain.py as adding a new test to reduce test run time.
Diffstat (limited to 'test/functional')
-rwxr-xr-x | test/functional/blockchain.py | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/test/functional/blockchain.py b/test/functional/blockchain.py index 596aed50ec..de5e01c2e3 100755 --- a/test/functional/blockchain.py +++ b/test/functional/blockchain.py @@ -6,6 +6,10 @@ Test the following RPCs: - gettxoutsetinfo + - getdifficulty + - getbestblockhash + - getblockhash + - getblockheader - verifychain Tests correspond to code in rpc/blockchain.cpp. @@ -40,6 +44,7 @@ class BlockchainTest(BitcoinTestFramework): def run_test(self): self._test_gettxoutsetinfo() self._test_getblockheader() + self._test_getdifficulty() self.nodes[0].verifychain(4, 0) def _test_gettxoutsetinfo(self): @@ -57,7 +62,8 @@ class BlockchainTest(BitcoinTestFramework): def _test_getblockheader(self): node = self.nodes[0] - assert_raises_jsonrpc(-5, "Block not found", node.getblockheader, "nonsense") + assert_raises_jsonrpc(-5, "Block not found", + node.getblockheader, "nonsense") besthash = node.getbestblockhash() secondbesthash = node.getblockhash(199) @@ -79,5 +85,11 @@ class BlockchainTest(BitcoinTestFramework): assert isinstance(int(header['versionHex'], 16), int) assert isinstance(header['difficulty'], Decimal) + def _test_getdifficulty(self): + difficulty = self.nodes[0].getdifficulty() + # 1 hash in 2 should be valid, so difficulty should be 1/2**31 + # binary => decimal => binary math is why we do this check + assert abs(difficulty * 2**31 - 1) < 0.0001 + if __name__ == '__main__': BlockchainTest().main() |