Dc integration approach (#52)

* updated Dockerfile-all-in-one

Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com>

* adjusted all-in-one.bash and monit conf to work with dockerized setup

Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com>

* integration tests pass inconsistently

Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com>

* added timeout for integration test pass

Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com>

* add startup control logic, adjusted tests to wait for transactions

Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com>

* added pre-config for docker-compose approach, removed remnants of old integration tests

Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com>

* reverted changes to pkg, split pre-config, added clean-shared service

Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com>

* fixed path in all-in-one.bash

Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com>

* added ipdb copyright notice

Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com>

* chmod planetmint-monit-config

Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com>

* removed entrypoint from Dockerfile-all-in-one

Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com>

* added integration stage to travis matrix

Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com>

* removed unused secret

Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com>
This commit is contained in:
Lorenz Herzberger
2022-03-01 08:47:58 +01:00
committed by GitHub
parent aaab849a98
commit 89a9caf597
23 changed files with 605 additions and 73 deletions

View File

@@ -3,4 +3,5 @@ FROM python:3.9
RUN mkdir -p /src
RUN pip install --upgrade \
pytest~=6.2.5 \
planetmint-driver~=0.9.0
planetmint-driver~=0.9.0
RUN apt-get update && apt-get install -y openssh-client openssh-server

View File

@@ -22,10 +22,12 @@
# We need some utils from the `os` package, we will interact with
# env variables.
import os
import time
# For this test case we need import and use the Python driver
from planetmint_driver import Planetmint
from planetmint_driver.crypto import generate_keypair
from planetmint_driver.exceptions import NotFoundError
def test_multiple_owners():
# ## Set up a connection to the Planetmint integration test nodes
@@ -69,7 +71,14 @@ def test_multiple_owners():
# Let's retrieve the transaction from both nodes
pm_itest1_tx = pm_itest1.transactions.retrieve(dw_id)
pm_itest2_tx = pm_itest2.transactions.retrieve(dw_id)
pm_itest2_tx = {}
# TODO: REPLACE WITH ASYNC OR POLL
try:
pm_itest2_tx = pm_itest2.transactions.retrieve(dw_id)
except NotFoundError:
print('TOO FAST')
time.sleep(3)
pm_itest2_tx = pm_itest2.transactions.retrieve(dw_id)
# Both retrieved transactions should be the same
assert pm_itest1_tx == pm_itest2_tx
@@ -118,7 +127,14 @@ def test_multiple_owners():
# Retrieve the fulfilled transaction from both nodes
pm_itest1_tx = pm_itest1.transactions.retrieve(fulfilled_transfer_tx['id'])
pm_itest2_tx = pm_itest2.transactions.retrieve(fulfilled_transfer_tx['id'])
pm_itest2_tx
# TODO: REPLACE WITH ASYNC OR POLL
try:
pm_itest2_tx = pm_itest2.transactions.retrieve(fulfilled_transfer_tx['id'])
except NotFoundError:
print('TOO FAST')
time.sleep(3)
pm_itest2_tx = pm_itest2.transactions.retrieve(fulfilled_transfer_tx['id'])
# Now compare if both nodes returned the same transaction
assert pm_itest1_tx == pm_itest2_tx