diff --git a/test/test_opsdb_queries.py b/test/test_opsdb_queries.py new file mode 100644 index 0000000000000000000000000000000000000000..e190904c2e04fdbc43ca50b107c587db200b7948 --- /dev/null +++ b/test/test_opsdb_queries.py @@ -0,0 +1,56 @@ +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') + +DB_PARAMS = { + "hostname": "test-opsdb02.geant.net", + # "hostname": "prod-opsdb01.geant.net", + "dbname": "opsdb", + "username": "opsro", + "password": "opsro" +} + +@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'), + # ('grv2.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) +