def test_offline(self): bts = DPay(node=self.nodelist.get_nodes(), offline=True, data_refresh_time_seconds=900, keys={ "active": wif, "owner": wif, "memo": wif }) bts.refresh_data() self.assertTrue(bts.get_reserve_ratio(use_stored_data=False) is None) self.assertTrue(bts.get_reserve_ratio(use_stored_data=True) is None) self.assertTrue(bts.get_feed_history(use_stored_data=False) is None) self.assertTrue(bts.get_feed_history(use_stored_data=True) is None) self.assertTrue(bts.get_reward_funds(use_stored_data=False) is None) self.assertTrue(bts.get_reward_funds(use_stored_data=True) is None) self.assertTrue( bts.get_current_median_history(use_stored_data=False) is None) self.assertTrue( bts.get_current_median_history(use_stored_data=True) is None) self.assertTrue( bts.get_hardfork_properties(use_stored_data=False) is None) self.assertTrue( bts.get_hardfork_properties(use_stored_data=True) is None) self.assertTrue(bts.get_network(use_stored_data=False) is None) self.assertTrue(bts.get_network(use_stored_data=True) is None) self.assertTrue( bts.get_witness_schedule(use_stored_data=False) is None) self.assertTrue(bts.get_witness_schedule(use_stored_data=True) is None) self.assertTrue(bts.get_config(use_stored_data=False) is None) self.assertTrue(bts.get_config(use_stored_data=True) is None) self.assertEqual(bts.get_block_interval(), 3) self.assertEqual(bts.get_blockchain_version(), '0.0.0')
def test_dpay(self, node_param): if node_param == "instance": set_shared_dpay_instance(self.bts) o = DPay(node=self.urls) o.get_config() self.assertIn(o.rpc.url, self.urls) with self.assertRaises(RPCConnection): stm = DPay(node="https://abc.d", autoconnect=False, num_retries=1) stm.get_config() else: set_shared_dpay_instance( DPay(node="https://abc.d", autoconnect=False, num_retries=1)) stm = self.bts o = stm o.get_config() self.assertIn(o.rpc.url, self.urls) with self.assertRaises(RPCConnection): stm = shared_dpay_instance() stm.get_config()
def test_properties(self, node_param): if node_param == "normal": bts = DPay(node=self.nodelist.get_nodes(), nobroadcast=True, data_refresh_time_seconds=900, keys={ "active": wif, "owner": wif, "memo": wif }, num_retries=10) elif node_param == "testnet": bts = DPay(node="https://testnet.dpaydev.com", nobroadcast=True, data_refresh_time_seconds=900, keys={ "active": wif, "owner": wif, "memo": wif }, num_retries=10) self.assertTrue( bts.get_reserve_ratio(use_stored_data=False) is not None) self.assertTrue( bts.get_feed_history(use_stored_data=False) is not None) self.assertTrue( bts.get_reward_funds(use_stored_data=False) is not None) self.assertTrue( bts.get_current_median_history(use_stored_data=False) is not None) self.assertTrue( bts.get_hardfork_properties(use_stored_data=False) is not None) self.assertTrue(bts.get_network(use_stored_data=False) is not None) self.assertTrue( bts.get_witness_schedule(use_stored_data=False) is not None) self.assertTrue(bts.get_config(use_stored_data=False) is not None) self.assertTrue(bts.get_block_interval() is not None) self.assertTrue(bts.get_blockchain_version() is not None)
time_diff_est = "%.2f minutes" % next_block_min else: time_diff_est = "%.2f seconds" % next_block_s return time_diff_est if __name__ == "__main__": if len(sys.argv) != 2: witness = "holger80" else: witness = sys.argv[1] stm = DPay() witness = Witness(witness, dpay_instance=stm) witness_schedule = stm.get_witness_schedule() config = stm.get_config() if "VIRTUAL_SCHEDULE_LAP_LENGTH2" in config: lap_length = int(config["VIRTUAL_SCHEDULE_LAP_LENGTH2"]) else: lap_length = int(config["DPAY_VIRTUAL_SCHEDULE_LAP_LENGTH2"]) witnesses = WitnessesRankedByVote(limit=250, dpay_instance=stm) vote_sum = witnesses.get_votes_sum() virtual_time_to_block_num = int( witness_schedule["num_scheduled_witnesses"]) / (lap_length / (vote_sum + 1)) while True: witness.refresh() witness_schedule = stm.get_witness_schedule(use_stored_data=False) witness_json = witness.json()