import os import pytest from inventory_provider.db import db from inventory_provider.db import opsdb pytestmark = pytest.mark.skipif( 'TEST_OPSDB_HOSTNAME' not in os.environ, reason='TEST_OPSDB_HOSTNAME environment variable not found') pytestmark = pytest.mark.skipif( 'TEST_OPSDB_DBNAME' not in os.environ, reason='TEST_OPSDB_DBNAME environment variable not found') pytestmark = pytest.mark.skipif( 'TEST_OPSDB_USERNAME' not in os.environ, reason='TEST_OPSDB_USERNAME environment variable not found') pytestmark = pytest.mark.skipif( 'TEST_OPSDB_PASSWORD' not in os.environ, reason='TEST_OPSDB_PASSWORD environment variable not found') @pytest.fixture def db_params(): return { 'hostname': os.environ['TEST_OPSDB_HOSTNAME'], 'dbname': os.environ['TEST_OPSDB_DBNAME'], 'username': os.environ['TEST_OPSDB_USERNAME'], 'password': os.environ['TEST_OPSDB_PASSWORD'], } @pytest.fixture def connection(db_params): with db.connection(db_params) as c: yield c @pytest.mark.parametrize('equipment,card,port', [ ('grv3.lon.uk.geant.net', '1-1', '3'), ('grv3.lon.uk.geant.net', '1-1', '5'), ('grv1.ams.nl.geant.net', '1-1', '1'), ('grv3.lon.uk.geant.net', '1-1', '1'), ]) def test_query(connection, equipment, card, port): circuit = opsdb.get_coriant_path(connection, equipment, card, port) from pprint import pprint pprint(circuit)