Example #1
0
 def test_blockchain(self):
     bts = self.bts
     b = Blockchain(hive_instance=bts)
     num = b.get_current_block_num()
     self.assertTrue(num > 0)
     self.assertTrue(isinstance(num, int))
     block = b.get_current_block()
     self.assertTrue(isinstance(block, Block))
     self.assertTrue((num - block.identifier) < 3)
     block_time = b.block_time(block.identifier)
     self.assertEqual(block.time(), block_time)
     block_timestamp = b.block_timestamp(block.identifier)
     timestamp = int(time.mktime(block.time().timetuple()))
     self.assertEqual(block_timestamp, timestamp)
Example #2
0
    def setUpClass(cls):
        nodelist = NodeList()
        nodelist.update_nodes(hive_instance=Hive(
            node=nodelist.get_nodes(exclude_limited=False), num_retries=10))
        cls.bts = Hive(node=nodelist.get_nodes(exclude_limited=True),
                       nobroadcast=True,
                       keys={"active": wif},
                       num_retries=10)
        b = Blockchain(hive_instance=cls.bts)
        num = b.get_current_block_num()
        cls.start = num - 25
        cls.stop = num

        # from getpass import getpass
        # self.bts.wallet.unlock(getpass())
        set_shared_hive_instance(cls.bts)
Example #3
0
    def test_wait_for_and_get_block(self):
        bts = self.bts
        b = Blockchain(hive_instance=bts, max_block_wait_repetition=18)
        start_num = b.get_current_block_num()
        blocknum = start_num
        last_fetched_block_num = None
        for i in range(3):
            block = b.wait_for_and_get_block(blocknum)
            last_fetched_block_num = block.block_num
            blocknum = last_fetched_block_num + 1
        self.assertEqual(last_fetched_block_num, start_num + 2)

        b2 = Blockchain(hive_instance=bts, max_block_wait_repetition=1)
        with self.assertRaises(BlockWaitTimeExceeded):
            for i in range(300):
                block = b2.wait_for_and_get_block(blocknum)
                last_fetched_block_num = block.block_num
                blocknum = last_fetched_block_num + 2
    def setUpClass(cls):
        nodelist = NodeList()
        nodelist.update_nodes(hive_instance=Hive(
            node=nodelist.get_nodes(exclude_limited=False), num_retries=10))
        cls.bts = Hive(
            node=nodelist.get_nodes(exclude_limited=True),
            nobroadcast=True,
            timeout=30,
            num_retries=30,
        )
        # from getpass import getpass
        # self.bts.wallet.unlock(getpass())
        set_shared_hive_instance(cls.bts)
        cls.bts.set_default_account("test")

        b = Blockchain(hive_instance=cls.bts)
        num = b.get_current_block_num()
        # num = 23346630
        cls.start = num - 25
        cls.stop = num
    def setUpClass(cls):
        nodelist = NodeList()
        nodelist.update_nodes(hive_instance=Hive(
            node=nodelist.get_nodes(exclude_limited=False), num_retries=10))
        cls.bts = Hive(
            node=nodelist.get_nodes(exclude_limited=True),
            nobroadcast=True,
            num_retries=10,
            timeout=30,
            use_condenser=False,
            keys={"active": wif},
        )
        # from getpass import getpass
        # self.bts.wallet.unlock(getpass())
        set_shared_hive_instance(cls.bts)
        cls.bts.set_default_account("test")

        b = Blockchain(hive_instance=cls.bts)
        num = b.get_current_block_num()
        cls.start = num - 100
        cls.stop = num
        cls.max_batch_size = 1  # appbase does not support batch rpc calls at the momement (internal error)