mirror of
https://github.com/bigchaindb/bigchaindb.git
synced 2024-10-13 13:34:05 +00:00
Problem: Needed some of the fixtures from tests/upsert_validator/conftest.py for tests in another directory
Solution: Moved the fixtures to `tests/conftest.py`
This commit is contained in:
parent
4a4cbc8de0
commit
e7d89abfce
@ -20,6 +20,7 @@ from logging.config import dictConfig
|
|||||||
import pytest
|
import pytest
|
||||||
from pymongo import MongoClient
|
from pymongo import MongoClient
|
||||||
|
|
||||||
|
from bigchaindb import ValidatorElection
|
||||||
from bigchaindb.common import crypto
|
from bigchaindb.common import crypto
|
||||||
from bigchaindb.log import setup_logging
|
from bigchaindb.log import setup_logging
|
||||||
from bigchaindb.tendermint_utils import key_from_base64
|
from bigchaindb.tendermint_utils import key_from_base64
|
||||||
@ -710,7 +711,9 @@ def priv_validator_path(node_keys):
|
|||||||
def validators(b, node_keys):
|
def validators(b, node_keys):
|
||||||
from bigchaindb.backend import query
|
from bigchaindb.backend import query
|
||||||
|
|
||||||
original_validators = b.get_validators()
|
height = get_block_height(b)
|
||||||
|
|
||||||
|
original_validators = b.get_validators(height=height)
|
||||||
|
|
||||||
(public_key, private_key) = list(node_keys.items())[0]
|
(public_key, private_key) = list(node_keys.items())[0]
|
||||||
|
|
||||||
@ -721,13 +724,64 @@ def validators(b, node_keys):
|
|||||||
'voting_power': 10}]
|
'voting_power': 10}]
|
||||||
|
|
||||||
validator_update = {'validators': validator_set,
|
validator_update = {'validators': validator_set,
|
||||||
'height': b.get_latest_block()['height'] + 1}
|
'height': height + 1}
|
||||||
|
|
||||||
query.store_validator_set(b.connection, validator_update)
|
query.store_validator_set(b.connection, validator_update)
|
||||||
|
|
||||||
yield
|
yield
|
||||||
|
|
||||||
|
height = get_block_height(b)
|
||||||
|
|
||||||
validator_update = {'validators': original_validators,
|
validator_update = {'validators': original_validators,
|
||||||
'height': b.get_latest_block()['height']}
|
'height': height}
|
||||||
|
|
||||||
query.store_validator_set(b.connection, validator_update)
|
query.store_validator_set(b.connection, validator_update)
|
||||||
|
|
||||||
|
|
||||||
|
def get_block_height(b):
|
||||||
|
|
||||||
|
if b.get_latest_block():
|
||||||
|
height = b.get_latest_block()['height']
|
||||||
|
else:
|
||||||
|
height = 0
|
||||||
|
|
||||||
|
return height
|
||||||
|
|
||||||
|
|
||||||
|
@pytest.fixture
|
||||||
|
def b_mock(b, network_validators):
|
||||||
|
b.get_validators = mock_get_validators(network_validators)
|
||||||
|
|
||||||
|
return b
|
||||||
|
|
||||||
|
|
||||||
|
def mock_get_validators(network_validators):
|
||||||
|
def validator_set(height):
|
||||||
|
validators = []
|
||||||
|
for public_key, power in network_validators.items():
|
||||||
|
validators.append({
|
||||||
|
'pub_key': {'type': 'AC26791624DE60', 'data': public_key},
|
||||||
|
'voting_power': power
|
||||||
|
})
|
||||||
|
return validators
|
||||||
|
|
||||||
|
return validator_set
|
||||||
|
|
||||||
|
|
||||||
|
@pytest.fixture
|
||||||
|
def valid_election(b_mock, node_key, new_validator):
|
||||||
|
voters = ValidatorElection.recipients(b_mock)
|
||||||
|
return ValidatorElection.generate([node_key.public_key],
|
||||||
|
voters,
|
||||||
|
new_validator, None).sign([node_key.private_key])
|
||||||
|
|
||||||
|
|
||||||
|
@pytest.fixture
|
||||||
|
def new_validator():
|
||||||
|
public_key = '1718D2DBFF00158A0852A17A01C78F4DCF3BA8E4FB7B8586807FAC182A535034'
|
||||||
|
power = 1
|
||||||
|
node_id = 'fake_node_id'
|
||||||
|
|
||||||
|
return {'public_key': public_key,
|
||||||
|
'power': power,
|
||||||
|
'node_id': node_id}
|
||||||
|
|||||||
@ -7,45 +7,6 @@ import pytest
|
|||||||
from bigchaindb.upsert_validator import ValidatorElection
|
from bigchaindb.upsert_validator import ValidatorElection
|
||||||
|
|
||||||
|
|
||||||
@pytest.fixture
|
|
||||||
def b_mock(b, network_validators):
|
|
||||||
b.get_validators = mock_get_validators(network_validators)
|
|
||||||
|
|
||||||
return b
|
|
||||||
|
|
||||||
|
|
||||||
@pytest.fixture
|
|
||||||
def new_validator():
|
|
||||||
public_key = '1718D2DBFF00158A0852A17A01C78F4DCF3BA8E4FB7B8586807FAC182A535034'
|
|
||||||
power = 1
|
|
||||||
node_id = 'fake_node_id'
|
|
||||||
|
|
||||||
return {'public_key': public_key,
|
|
||||||
'power': power,
|
|
||||||
'node_id': node_id}
|
|
||||||
|
|
||||||
|
|
||||||
def mock_get_validators(network_validators):
|
|
||||||
def validator_set(height):
|
|
||||||
validators = []
|
|
||||||
for public_key, power in network_validators.items():
|
|
||||||
validators.append({
|
|
||||||
'pub_key': {'type': 'AC26791624DE60', 'data': public_key},
|
|
||||||
'voting_power': power
|
|
||||||
})
|
|
||||||
return validators
|
|
||||||
|
|
||||||
return validator_set
|
|
||||||
|
|
||||||
|
|
||||||
@pytest.fixture
|
|
||||||
def valid_election(b_mock, node_key, new_validator):
|
|
||||||
voters = ValidatorElection.recipients(b_mock)
|
|
||||||
return ValidatorElection.generate([node_key.public_key],
|
|
||||||
voters,
|
|
||||||
new_validator, None).sign([node_key.private_key])
|
|
||||||
|
|
||||||
|
|
||||||
@pytest.fixture
|
@pytest.fixture
|
||||||
def valid_election_b(b, node_key, new_validator):
|
def valid_election_b(b, node_key, new_validator):
|
||||||
voters = ValidatorElection.recipients(b)
|
voters = ValidatorElection.recipients(b)
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user