Modifies e2e tests so pisad can be run and stop from there

This commit is contained in:
Sergi Delgado Segura
2020-01-23 19:57:21 +01:00
parent 14724ceda9
commit 3fd84a8d7f
2 changed files with 19 additions and 1 deletions

View File

@@ -1,8 +1,10 @@
import pytest import pytest
import random import random
from multiprocessing import Process
from decimal import Decimal, getcontext from decimal import Decimal, getcontext
import pisa.conf as conf import pisa.conf as conf
from pisa.pisad import main
from pisa.utils.auth_proxy import AuthServiceProxy from pisa.utils.auth_proxy import AuthServiceProxy
getcontext().prec = 10 getcontext().prec = 10
@@ -48,6 +50,13 @@ def create_txs(bitcoin_cli):
return signed_commitment_tx, signed_penalty_tx return signed_commitment_tx, signed_penalty_tx
def run_pisad():
pisad_process = Process(target=main, daemon=True)
pisad_process.start()
return pisad_process
def get_random_value_hex(nbytes): def get_random_value_hex(nbytes):
pseudo_random_value = random.getrandbits(8 * nbytes) pseudo_random_value = random.getrandbits(8 * nbytes)
prv_hex = "{:x}".format(pseudo_random_value) prv_hex = "{:x}".format(pseudo_random_value)

View File

@@ -9,13 +9,22 @@ from common.tools import compute_locator
from common.appointment import Appointment from common.appointment import Appointment
from common.cryptographer import Cryptographer from common.cryptographer import Cryptographer
from pisa.utils.auth_proxy import JSONRPCException from pisa.utils.auth_proxy import JSONRPCException
from test.pisa.e2e.conftest import END_TIME_DELTA, build_appointment_data, get_random_value_hex, create_penalty_tx from test.pisa.e2e.conftest import (
END_TIME_DELTA,
build_appointment_data,
get_random_value_hex,
create_penalty_tx,
run_pisad,
)
# We'll use pisa_cli to add appointments. The expected input format is a list of arguments with a json-encoded # We'll use pisa_cli to add appointments. The expected input format is a list of arguments with a json-encoded
# appointment # appointment
pisa_cli.pisa_api_server = HOST pisa_cli.pisa_api_server = HOST
pisa_cli.pisa_api_port = PORT pisa_cli.pisa_api_port = PORT
# Run pisad
pisad_process = run_pisad()
def broadcast_transaction_and_mine_block(bitcoin_cli, commitment_tx, addr): def broadcast_transaction_and_mine_block(bitcoin_cli, commitment_tx, addr):
# Broadcast the commitment transaction and mine a block # Broadcast the commitment transaction and mine a block