示例#1
0
    def test_get_last_n_blocks(self):
        """Tests the `blocks` endpoint. Check response for last N blocks"""

        number_of_blocks = 5
        wait_for_block(self.network, 5)
        for validator_id in range(self.network.validators_count()):
            host, public_port, private_port = self.network.api_address(validator_id)
            client = ExonumClient(host, public_port, private_port)
            blocks_response = client.public_api.get_blocks(count=number_of_blocks)
            self.assertEqual(blocks_response.status_code, 200)
            self.assertEqual(len(blocks_response.json()["blocks"]), number_of_blocks)
示例#2
0
    def test_get_n_latest_blocks(self):
        """Tests the `blocks` endpoint. Check response for N latest blocks"""

        latest = 5
        number_of_blocks = 15
        wait_for_block(self.network, 5)
        for validator_id in range(self.network.validators_count()):
            height_counter = latest
            host, public_port, private_port = self.network.api_address(validator_id)
            client = ExonumClient(host, public_port, private_port)
            blocks_response = client.public_api.get_blocks(
                count=number_of_blocks, latest=latest
            )
            self.assertEqual(len(blocks_response.json()["blocks"]), latest + 1)
            for block in blocks_response.json()["blocks"]:
                self.assertEqual(int(block["height"]), height_counter)
                height_counter -= 1
示例#3
0
文件: api.py 项目: mobilipia/ibledger
    def test_get_mix_latest_earliest_blocks(self):
        """Tests the `blocks` endpoint. Check response for N latest and earliest blocks"""

        latest = 10
        earliest = 5
        number_of_blocks = 15
        wait_for_block(self.network, 10)
        for validator_id in range(self.network.validators_count()):
            height_counter = latest
            host, public_port, private_port = self.network.api_address(
                validator_id)
            client = vegaClient(host, public_port, private_port)
            blocks_response = client.public_api.get_blocks(
                count=number_of_blocks, latest=latest, earliest=earliest)
            self.assertEqual(len(blocks_response.json()['blocks']),
                             latest - earliest + 1)
            for block in blocks_response.json()['blocks']:
                self.assertEqual(int(block['height']), height_counter)
                height_counter -= 1
示例#4
0
文件: api.py 项目: mobilipia/ibledger
    def test_get_n_earliest_blocks(self):
        """Tests the `blocks` endpoint. Check response for N earliest blocks"""

        earliest = 20
        number_of_blocks = 15
        wait_for_block(self.network, 20)
        for validator_id in range(self.network.validators_count()):
            height_counter = earliest
            host, public_port, private_port = self.network.api_address(
                validator_id)
            client = vegaClient(host, public_port, private_port)
            blocks_response = client.public_api.get_blocks(
                count=number_of_blocks, earliest=earliest)
            latest_height = int(blocks_response.json()['blocks'][0]['height'])
            self.assertEqual(len(blocks_response.json()['blocks']),
                             latest_height - earliest + 1)
            # blocks must be started from 'earliest' height
            for block in reversed(blocks_response.json()['blocks']):
                self.assertEqual(int(block['height']), height_counter)
                height_counter += 1