Test Case:
- APM (Automatic Price Mooning)
Verify the subsidy is 7 if an APM decrease event occurs day-over-day
Verify the subsidy is normal if the price is unchanged, or if the APM increase event occurs day-over-day
1. Verified that when the price stayed stagnant or dropped day-over-day (this was 7-25-2020), the subsidy did drop from 4283 to 3 bbp. PASS
2. Verified that when the price increased (7-26-2020), the subsidy rose from 3 bbp back to 4283. PASS
3. Verified the contract contains the price change signal (1,2,3) and the bbp price in satoshi: PASS
4. Verified the UI contains the relevant info (Current Price, Last Price, Last Superblock Height, Current superblock height, next APM signal) : PASS
5. Verify the chain can sync from 0 after a price rise and price drop (verify we did not break any business logic) : I Just resynced to 53769 : PASS
6. Verify Getgovernanceinfo does not lower the block subsidy during times of low payments: PASS
7. Verify the daily GSC superblock is not lower due to the lowered coinbase subsidy : PASS
Overall test results for APM: PASS
Test Case:
- DWS (Dynamic Whale Staking)
Verify the 'dws' and 'dwsquote' commands work as dedicated commands.
1. Tested 'dwsquote' from RPC: PASS
2. Tested 'dws' from RPC: PASS
ChainLocks and DIP0008:
Verify that testnet LLMQ quorums are forming, and advancing
Verify testnet LLMQ locked IX transactions occur automatically, and quickly (IE test autolocks)
Verify chainlocks locks the block (getblock hash, verify when entire block is IX locked, then it is also chainlocked)
1. Monitor 'quorum list', and verify 'quorum info 100 quorumid' contains a constantly new quorum of 3-7 sancs with block height fresher than 205 blocks : PASS
2. Verify LLMQ autolocks, LLMQ IX, and Chainlocks sporks are ON: PASS
3. Verify a non-instantsend tx to the foundation in testnet is sent as an autolock : PASS
3b. Verify the tx is autoconfirmed within 10 seconds: PASS
4. Verify each new block is automatically locking every tx in the block: PASS
5. Verify chainlocks is actually locking each block (getblock 53770, chainlock: true): PASS
6. Verify that when we break the quorum, autolocks turn off: PASS
(I broke the quorum by turning off all the miners for 4 hours)
7. Verify POSE banned sancs in quorums have failed signatures : PASS (quorum info 100 quorumid, look for pose banned sanc, look for bad sig: PASS)
8. Verify our good sanctuaries will now vote to remove sancs who fail to sign llmqs (in testnet our min vote count is 2 sancs that have the power to boot out a fraudulent sanc, and in this same way we will
ensure this works in prod - this keeps the quorums running even if we have perpetrators acting as a sanc and trying to break the quorums): PASS