mirror of
https://github.com/bigchaindb/bigchaindb.git
synced 2024-10-13 13:34:05 +00:00

* Problem: We need to store the `election_id` as part of the `validator_update` so we can efficiently check which election was resposible for the change Solution: Added the parameter to `store_validator_set` and aligned the tests * Problem: Logic for `upsert-validator show` is convoluted Solution: Rewrote the function to be much simpler * Problem: Need a uniqueness constraint for election_id wrt validator changes Solution: Added a new key to the db schema
27 lines
842 B
Python
27 lines
842 B
Python
# Copyright BigchainDB GmbH and BigchainDB contributors
|
|
# SPDX-License-Identifier: (Apache-2.0 AND CC-BY-4.0)
|
|
# Code is Apache-2.0 and docs are CC-BY-4.0
|
|
|
|
import pytest
|
|
|
|
pytestmark = pytest.mark.tendermint
|
|
|
|
VALIDATORS_ENDPOINT = '/api/v1/validators/'
|
|
|
|
|
|
def test_get_validators_endpoint(b, client):
|
|
validator_set = [{'address': 'F5426F0980E36E03044F74DD414248D29ABCBDB2',
|
|
'pub_key': {'data': '4E2685D9016126864733225BE00F005515200727FBAB1312FC78C8B76831255A',
|
|
'type': 'ed25519'},
|
|
'voting_power': 10}]
|
|
b.store_validator_set(23, validator_set, 'election_id')
|
|
|
|
res = client.get(VALIDATORS_ENDPOINT)
|
|
assert is_validator(res.json[0])
|
|
assert res.status_code == 200
|
|
|
|
|
|
# Helper
|
|
def is_validator(v):
|
|
return ('pub_key' in v) and ('voting_power' in v)
|