docs-linkcheck: install_deps> python -I -m pip install -r docs/requirements.txt docs: install_deps> python -I -m pip install -r docs/requirements.txt buildcontroller: install_deps> python -I -m pip install 'setuptools>=7.0' -r /w/workspace/transportpce-tox-verify-calcium/tests/requirements.txt -r /w/workspace/transportpce-tox-verify-calcium/tests/test-requirements.txt checkbashisms: freeze> python -m pip freeze --all checkbashisms: pip==24.1,setuptools==70.1.0,wheel==0.43.0 checkbashisms: commands[0] /w/workspace/transportpce-tox-verify-calcium/tests> ./fixCIcentOS8reposMirrors.sh checkbashisms: commands[1] /w/workspace/transportpce-tox-verify-calcium/tests> sh -c 'command checkbashisms>/dev/null || sudo yum install -y devscripts-checkbashisms || sudo yum install -y devscripts-minimal || sudo yum install -y devscripts || sudo yum install -y https://archives.fedoraproject.org/pub/archive/fedora/linux/releases/31/Everything/x86_64/os/Packages/d/devscripts-checkbashisms-2.19.6-2.fc31.x86_64.rpm || (echo "checkbashisms command not found - please install it (e.g. sudo apt-get install devscripts | yum install devscripts-minimal )" >&2 && exit 1)' checkbashisms: commands[2] /w/workspace/transportpce-tox-verify-calcium/tests> find . -not -path '*/\.*' -name '*.sh' -exec checkbashisms -f '{}' + checkbashisms: OK ✔ in 3.06 seconds pre-commit: install_deps> python -I -m pip install pre-commit pre-commit: freeze> python -m pip freeze --all pre-commit: cfgv==3.4.0,distlib==0.3.8,filelock==3.15.4,identify==2.6.0,nodeenv==1.9.1,pip==24.1,platformdirs==4.2.2,pre-commit==3.8.0,PyYAML==6.0.2,setuptools==70.1.0,virtualenv==20.26.3,wheel==0.43.0 pre-commit: commands[0] /w/workspace/transportpce-tox-verify-calcium/tests> ./fixCIcentOS8reposMirrors.sh pre-commit: commands[1] /w/workspace/transportpce-tox-verify-calcium/tests> sh -c 'which cpan || sudo yum install -y perl-CPAN || (echo "cpan command not found - please install it (e.g. sudo apt-get install perl-modules | yum install perl-CPAN )" >&2 && exit 1)' /usr/bin/cpan pre-commit: commands[2] /w/workspace/transportpce-tox-verify-calcium/tests> pre-commit run --all-files --show-diff-on-failure [INFO] Initializing environment for https://github.com/pre-commit/pre-commit-hooks. [INFO] Initializing environment for https://github.com/jorisroovers/gitlint. [INFO] Initializing environment for https://github.com/jorisroovers/gitlint:./gitlint-core[trusted-deps]. [INFO] Initializing environment for https://github.com/Lucas-C/pre-commit-hooks. [INFO] Initializing environment for https://github.com/pre-commit/mirrors-autopep8. [INFO] Initializing environment for https://github.com/perltidy/perltidy. [INFO] Installing environment for https://github.com/pre-commit/pre-commit-hooks. [INFO] Once installed this environment will be reused. [INFO] This may take a few minutes... buildcontroller: freeze> python -m pip freeze --all buildcontroller: bcrypt==4.2.0,certifi==2024.8.30,cffi==1.17.0,charset-normalizer==3.3.2,cryptography==43.0.1,dict2xml==1.7.6,idna==3.8,iniconfig==2.0.0,lxml==5.3.0,netconf-client==3.1.1,packaging==24.1,paramiko==3.4.1,pip==24.1,pluggy==1.5.0,psutil==6.0.0,pycparser==2.22,PyNaCl==1.5.0,pytest==8.3.2,requests==2.32.3,setuptools==70.1.0,urllib3==2.2.2,wheel==0.43.0 buildcontroller: commands[0] /w/workspace/transportpce-tox-verify-calcium/tests> ./build_controller.sh java-1.11.0-openjdk-amd64 1111 /usr/lib/jvm/java-1.11.0-openjdk-amd64 java-1.12.0-openjdk-amd64 1211 /usr/lib/jvm/java-1.12.0-openjdk-amd64 java-1.17.0-openjdk-amd64 1711 /usr/lib/jvm/java-1.17.0-openjdk-amd64 java-1.21.0-openjdk-amd64 2111 /usr/lib/jvm/java-1.21.0-openjdk-amd64 java-1.8.0-openjdk-amd64 1081 /usr/lib/jvm/java-1.8.0-openjdk-amd64 21 21 ok, java is 21 or newer [INFO] Installing environment for https://github.com/Lucas-C/pre-commit-hooks. [INFO] Once installed this environment will be reused. [INFO] This may take a few minutes... Apache Maven 3.9.8 (36645f6c9b5079805ea5009217e36f2cffd34256) Maven home: /opt/maven Java version: 21.0.4, vendor: Ubuntu, runtime: /usr/lib/jvm/java-21-openjdk-amd64 Default locale: en, platform encoding: UTF-8 OS name: "linux", version: "5.4.0-190-generic", arch: "amd64", family: "unix" [INFO] Installing environment for https://github.com/pre-commit/mirrors-autopep8. [INFO] Once installed this environment will be reused. [INFO] This may take a few minutes... [INFO] Installing environment for https://github.com/perltidy/perltidy. [INFO] Once installed this environment will be reused. [INFO] This may take a few minutes... trim trailing whitespace.................................................Passed Tabs remover.............................................................Passed autopep8.................................................................Passed perltidy.................................................................Passed pre-commit: commands[3] /w/workspace/transportpce-tox-verify-calcium/tests> pre-commit run gitlint-ci --hook-stage manual [INFO] Installing environment for https://github.com/jorisroovers/gitlint. [INFO] Once installed this environment will be reused. [INFO] This may take a few minutes... docs: freeze> python -m pip freeze --all docs-linkcheck: freeze> python -m pip freeze --all docs: alabaster==0.7.16,attrs==24.2.0,babel==2.16.0,blockdiag==3.0.0,certifi==2024.8.30,charset-normalizer==3.3.2,contourpy==1.3.0,cycler==0.12.1,docutils==0.20.1,fonttools==4.53.1,funcparserlib==2.0.0a0,future==1.0.0,idna==3.8,imagesize==1.4.1,Jinja2==3.1.4,jsonschema==3.2.0,kiwisolver==1.4.7,lfdocs-conf==0.9.0,MarkupSafe==2.1.5,matplotlib==3.9.2,numpy==2.1.1,nwdiag==3.0.0,packaging==24.1,pillow==10.4.0,pip==24.1,Pygments==2.18.0,pyparsing==3.1.4,pyrsistent==0.20.0,python-dateutil==2.9.0.post0,PyYAML==6.0.2,requests==2.32.3,requests-file==1.5.1,seqdiag==3.0.0,setuptools==70.1.0,six==1.16.0,snowballstemmer==2.2.0,Sphinx==7.4.7,sphinx-bootstrap-theme==0.8.1,sphinx-data-viewer==0.1.5,sphinx-rtd-theme==2.0.0,sphinx-tabs==3.4.5,sphinxcontrib-applehelp==2.0.0,sphinxcontrib-blockdiag==3.0.0,sphinxcontrib-devhelp==2.0.0,sphinxcontrib-htmlhelp==2.1.0,sphinxcontrib-jquery==4.1,sphinxcontrib-jsmath==1.0.1,sphinxcontrib-needs==0.7.9,sphinxcontrib-nwdiag==2.0.0,sphinxcontrib-plantuml==0.30,sphinxcontrib-qthelp==2.0.0,sphinxcontrib-seqdiag==3.0.0,sphinxcontrib-serializinghtml==2.0.0,sphinxcontrib-swaggerdoc==0.1.7,urllib3==2.2.2,webcolors==24.8.0,wheel==0.43.0 docs: commands[0] /w/workspace/transportpce-tox-verify-calcium/tests> sphinx-build -q -W --keep-going -b html -n -d /w/workspace/transportpce-tox-verify-calcium/.tox/docs/tmp/doctrees ../docs/ /w/workspace/transportpce-tox-verify-calcium/docs/_build/html docs-linkcheck: alabaster==0.7.16,attrs==24.2.0,babel==2.16.0,blockdiag==3.0.0,certifi==2024.8.30,charset-normalizer==3.3.2,contourpy==1.3.0,cycler==0.12.1,docutils==0.20.1,fonttools==4.53.1,funcparserlib==2.0.0a0,future==1.0.0,idna==3.8,imagesize==1.4.1,Jinja2==3.1.4,jsonschema==3.2.0,kiwisolver==1.4.7,lfdocs-conf==0.9.0,MarkupSafe==2.1.5,matplotlib==3.9.2,numpy==2.1.1,nwdiag==3.0.0,packaging==24.1,pillow==10.4.0,pip==24.1,Pygments==2.18.0,pyparsing==3.1.4,pyrsistent==0.20.0,python-dateutil==2.9.0.post0,PyYAML==6.0.2,requests==2.32.3,requests-file==1.5.1,seqdiag==3.0.0,setuptools==70.1.0,six==1.16.0,snowballstemmer==2.2.0,Sphinx==7.4.7,sphinx-bootstrap-theme==0.8.1,sphinx-data-viewer==0.1.5,sphinx-rtd-theme==2.0.0,sphinx-tabs==3.4.5,sphinxcontrib-applehelp==2.0.0,sphinxcontrib-blockdiag==3.0.0,sphinxcontrib-devhelp==2.0.0,sphinxcontrib-htmlhelp==2.1.0,sphinxcontrib-jquery==4.1,sphinxcontrib-jsmath==1.0.1,sphinxcontrib-needs==0.7.9,sphinxcontrib-nwdiag==2.0.0,sphinxcontrib-plantuml==0.30,sphinxcontrib-qthelp==2.0.0,sphinxcontrib-seqdiag==3.0.0,sphinxcontrib-serializinghtml==2.0.0,sphinxcontrib-swaggerdoc==0.1.7,urllib3==2.2.2,webcolors==24.8.0,wheel==0.43.0 docs-linkcheck: commands[0] /w/workspace/transportpce-tox-verify-calcium/tests> sphinx-build -q -b linkcheck -d /w/workspace/transportpce-tox-verify-calcium/.tox/docs-linkcheck/tmp/doctrees ../docs/ /w/workspace/transportpce-tox-verify-calcium/docs/_build/linkcheck docs: OK ✔ in 1 minute 7.47 seconds pylint: install_deps> python -I -m pip install 'pylint>=2.6.0' gitlint..................................................................Passed docs-linkcheck: OK ✔ in 1 minute 8.37 seconds pre-commit: OK ✔ in 1 minute 51.74 seconds pylint: freeze> python -m pip freeze --all pylint: astroid==3.2.4,dill==0.3.8,isort==5.13.2,mccabe==0.7.0,pip==24.1,platformdirs==4.2.2,pylint==3.2.7,setuptools==70.1.0,tomlkit==0.13.2,wheel==0.43.0 pylint: commands[0] /w/workspace/transportpce-tox-verify-calcium/tests> find transportpce_tests/ -name '*.py' -exec pylint --fail-under=10 --max-line-length=120 --disable=missing-docstring,import-error --disable=fixme --disable=duplicate-code '--module-rgx=([a-z0-9_]+$)|([0-9.]{1,30}$)' '--method-rgx=(([a-z_][a-zA-Z0-9_]{2,})|(_[a-z0-9_]*)|(__[a-zA-Z][a-zA-Z0-9_]+__))$' '--variable-rgx=[a-zA-Z_][a-zA-Z0-9_]{1,30}$' '{}' + ------------------------------------ Your code has been rated at 10.00/10 pylint: OK ✔ in 1 minute 14.66 seconds buildcontroller: OK ✔ in 2 minutes 37.95 seconds build_karaf_tests221: install_deps> python -I -m pip install 'setuptools>=7.0' -r /w/workspace/transportpce-tox-verify-calcium/tests/requirements.txt -r /w/workspace/transportpce-tox-verify-calcium/tests/test-requirements.txt testsPCE: install_deps> python -I -m pip install gnpy4tpce==2.4.7 'setuptools>=7.0' -r /w/workspace/transportpce-tox-verify-calcium/tests/requirements.txt -r /w/workspace/transportpce-tox-verify-calcium/tests/test-requirements.txt build_karaf_tests121: install_deps> python -I -m pip install 'setuptools>=7.0' -r /w/workspace/transportpce-tox-verify-calcium/tests/requirements.txt -r /w/workspace/transportpce-tox-verify-calcium/tests/test-requirements.txt sims: install_deps> python -I -m pip install 'setuptools>=7.0' -r /w/workspace/transportpce-tox-verify-calcium/tests/requirements.txt -r /w/workspace/transportpce-tox-verify-calcium/tests/test-requirements.txt sims: freeze> python -m pip freeze --all build_karaf_tests221: freeze> python -m pip freeze --all build_karaf_tests121: freeze> python -m pip freeze --all sims: bcrypt==4.2.0,certifi==2024.8.30,cffi==1.17.0,charset-normalizer==3.3.2,cryptography==43.0.1,dict2xml==1.7.6,idna==3.8,iniconfig==2.0.0,lxml==5.3.0,netconf-client==3.1.1,packaging==24.1,paramiko==3.4.1,pip==24.1,pluggy==1.5.0,psutil==6.0.0,pycparser==2.22,PyNaCl==1.5.0,pytest==8.3.2,requests==2.32.3,setuptools==70.1.0,urllib3==2.2.2,wheel==0.43.0 sims: commands[0] /w/workspace/transportpce-tox-verify-calcium/tests> ./install_lightynode.sh Using lighynode version 19.1.0.5 Installing lightynode device to ./lightynode/lightynode-openroadm-device directory build_karaf_tests221: bcrypt==4.2.0,certifi==2024.8.30,cffi==1.17.0,charset-normalizer==3.3.2,cryptography==43.0.1,dict2xml==1.7.6,idna==3.8,iniconfig==2.0.0,lxml==5.3.0,netconf-client==3.1.1,packaging==24.1,paramiko==3.4.1,pip==24.1,pluggy==1.5.0,psutil==6.0.0,pycparser==2.22,PyNaCl==1.5.0,pytest==8.3.2,requests==2.32.3,setuptools==70.1.0,urllib3==2.2.2,wheel==0.43.0 build_karaf_tests221: commands[0] /w/workspace/transportpce-tox-verify-calcium/tests> ./build_karaf_for_tests.sh build_karaf_tests121: bcrypt==4.2.0,certifi==2024.8.30,cffi==1.17.0,charset-normalizer==3.3.2,cryptography==43.0.1,dict2xml==1.7.6,idna==3.8,iniconfig==2.0.0,lxml==5.3.0,netconf-client==3.1.1,packaging==24.1,paramiko==3.4.1,pip==24.1,pluggy==1.5.0,psutil==6.0.0,pycparser==2.22,PyNaCl==1.5.0,pytest==8.3.2,requests==2.32.3,setuptools==70.1.0,urllib3==2.2.2,wheel==0.43.0 build_karaf_tests121: commands[0] /w/workspace/transportpce-tox-verify-calcium/tests> ./build_karaf_for_tests.sh sims: OK ✔ in 34.92 seconds build_karaf_tests71: install_deps> python -I -m pip install 'setuptools>=7.0' -r /w/workspace/transportpce-tox-verify-calcium/tests/requirements.txt -r /w/workspace/transportpce-tox-verify-calcium/tests/test-requirements.txt build_karaf_tests71: freeze> python -m pip freeze --all build_karaf_tests71: bcrypt==4.2.0,certifi==2024.8.30,cffi==1.17.0,charset-normalizer==3.3.2,cryptography==43.0.1,dict2xml==1.7.6,idna==3.8,iniconfig==2.0.0,lxml==5.3.0,netconf-client==3.1.1,packaging==24.1,paramiko==3.4.1,pip==24.1,pluggy==1.5.0,psutil==6.0.0,pycparser==2.22,PyNaCl==1.5.0,pytest==8.3.2,requests==2.32.3,setuptools==70.1.0,urllib3==2.2.2,wheel==0.43.0 build_karaf_tests71: commands[0] /w/workspace/transportpce-tox-verify-calcium/tests> ./build_karaf_for_tests.sh build_karaf_tests121: OK ✔ in 1 minute 21.54 seconds build_karaf_tests_hybrid: install_deps> python -I -m pip install 'setuptools>=7.0' -r /w/workspace/transportpce-tox-verify-calcium/tests/requirements.txt -r /w/workspace/transportpce-tox-verify-calcium/tests/test-requirements.txt build_karaf_tests221: OK ✔ in 1 minute 24.86 seconds tests_tapi: install_deps> python -I -m pip install 'setuptools>=7.0' -r /w/workspace/transportpce-tox-verify-calcium/tests/requirements.txt -r /w/workspace/transportpce-tox-verify-calcium/tests/test-requirements.txt build_karaf_tests_hybrid: freeze> python -m pip freeze --all tests_tapi: freeze> python -m pip freeze --all build_karaf_tests_hybrid: bcrypt==4.2.0,certifi==2024.8.30,cffi==1.17.0,charset-normalizer==3.3.2,cryptography==43.0.1,dict2xml==1.7.6,idna==3.8,iniconfig==2.0.0,lxml==5.3.0,netconf-client==3.1.1,packaging==24.1,paramiko==3.4.1,pip==24.1,pluggy==1.5.0,psutil==6.0.0,pycparser==2.22,PyNaCl==1.5.0,pytest==8.3.2,requests==2.32.3,setuptools==70.1.0,urllib3==2.2.2,wheel==0.43.0 build_karaf_tests_hybrid: commands[0] /w/workspace/transportpce-tox-verify-calcium/tests> ./build_karaf_for_tests.sh tests_tapi: bcrypt==4.2.0,certifi==2024.8.30,cffi==1.17.0,charset-normalizer==3.3.2,cryptography==43.0.1,dict2xml==1.7.6,idna==3.8,iniconfig==2.0.0,lxml==5.3.0,netconf-client==3.1.1,packaging==24.1,paramiko==3.4.1,pip==24.1,pluggy==1.5.0,psutil==6.0.0,pycparser==2.22,PyNaCl==1.5.0,pytest==8.3.2,requests==2.32.3,setuptools==70.1.0,urllib3==2.2.2,wheel==0.43.0 tests_tapi: commands[0] /w/workspace/transportpce-tox-verify-calcium/tests> ./launch_tests.sh tapi using environment variables from ./karaf221.env pytest -q transportpce_tests/tapi/test01_abstracted_topology.py build_karaf_tests71: OK ✔ in 1 minute 45.76 seconds build_karaf_tests_hybrid: OK ✔ in 1 minute 13.29 seconds testsPCE: freeze> python -m pip freeze --all testsPCE: bcrypt==4.2.0,certifi==2024.8.30,cffi==1.17.0,charset-normalizer==3.3.2,click==8.1.7,contourpy==1.3.0,cryptography==3.3.2,cycler==0.12.1,dict2xml==1.7.6,Flask==2.1.3,Flask-Injector==0.14.0,fonttools==4.53.1,gnpy4tpce==2.4.7,idna==3.8,iniconfig==2.0.0,injector==0.22.0,itsdangerous==2.2.0,Jinja2==3.1.4,kiwisolver==1.4.7,lxml==5.3.0,MarkupSafe==2.1.5,matplotlib==3.9.2,netconf-client==3.1.1,networkx==2.8.8,numpy==1.26.4,packaging==24.1,pandas==1.5.3,paramiko==3.4.1,pbr==5.11.1,pillow==10.4.0,pip==24.1,pluggy==1.5.0,psutil==6.0.0,pycparser==2.22,PyNaCl==1.5.0,pyparsing==3.1.4,pytest==8.3.2,python-dateutil==2.9.0.post0,pytz==2024.1,requests==2.32.3,scipy==1.14.1,setuptools==50.3.2,six==1.16.0,urllib3==2.2.2,Werkzeug==2.0.3,wheel==0.43.0,xlrd==1.2.0 testsPCE: commands[0] /w/workspace/transportpce-tox-verify-calcium/tests> ./launch_tests.sh pce pytest -q transportpce_tests/pce/test01_pce.py .................................................. [100%] 20 passed in 114.14s (0:01:54) pytest -q transportpce_tests/pce/test02_pce_400G.py ................ [100%] 9 passed in 38.57s pytest -q transportpce_tests/pce/test03_gnpy.py ................... [100%] 50 passed in 247.83s (0:04:07) pytest -q transportpce_tests/tapi/test02_full_topology.py .. [100%] 8 passed in 38.69s pytest -q transportpce_tests/pce/test04_pce_bug_fix.py ... [100%] 3 passed in 43.36s testsPCE: OK ✔ in 6 minutes 34.45 seconds tests121: install_deps> python -I -m pip install 'setuptools>=7.0' -r /w/workspace/transportpce-tox-verify-calcium/tests/requirements.txt -r /w/workspace/transportpce-tox-verify-calcium/tests/test-requirements.txt tests121: freeze> python -m pip freeze --all tests121: bcrypt==4.2.0,certifi==2024.8.30,cffi==1.17.0,charset-normalizer==3.3.2,cryptography==43.0.1,dict2xml==1.7.6,idna==3.8,iniconfig==2.0.0,lxml==5.3.0,netconf-client==3.1.1,packaging==24.1,paramiko==3.4.1,pip==24.1,pluggy==1.5.0,psutil==6.0.0,pycparser==2.22,PyNaCl==1.5.0,pytest==8.3.2,requests==2.32.3,setuptools==70.1.0,urllib3==2.2.2,wheel==0.43.0 tests121: commands[0] /w/workspace/transportpce-tox-verify-calcium/tests> ./launch_tests.sh 1.2.1 using environment variables from ./karaf121.env pytest -q transportpce_tests/1.2.1/test01_portmapping.py ............................... [100%] 30 passed in 279.06s (0:04:39) pytest -q transportpce_tests/tapi/test03_tapi_device_change_notifications.py .................... [100%] 21 passed in 264.15s (0:04:24) pytest -q transportpce_tests/1.2.1/test02_topo_portmapping.py ........................................................................ [100%] 6 passed in 227.61s (0:03:47) pytest -q transportpce_tests/1.2.1/test03_topology.py .... [100%] 70 passed in 277.98s (0:04:37) tests_tapi: OK ✔ in 13 minutes 36.61 seconds tests71: install_deps> python -I -m pip install 'setuptools>=7.0' -r /w/workspace/transportpce-tox-verify-calcium/tests/requirements.txt -r /w/workspace/transportpce-tox-verify-calcium/tests/test-requirements.txt tests71: freeze> python -m pip freeze --all tests71: bcrypt==4.2.0,certifi==2024.8.30,cffi==1.17.0,charset-normalizer==3.3.2,cryptography==43.0.1,dict2xml==1.7.6,idna==3.8,iniconfig==2.0.0,lxml==5.3.0,netconf-client==3.1.1,packaging==24.1,paramiko==3.4.1,pip==24.1,pluggy==1.5.0,psutil==6.0.0,pycparser==2.22,PyNaCl==1.5.0,pytest==8.3.2,requests==2.32.3,setuptools==70.1.0,urllib3==2.2.2,wheel==0.43.0 tests71: commands[0] /w/workspace/transportpce-tox-verify-calcium/tests> ./launch_tests.sh 7.1 using environment variables from ./karaf71.env pytest -q transportpce_tests/7.1/test01_portmapping.py ...FF.FF.FFF.FF......FFF [100%] =================================== FAILURES =================================== ______ TransportPCE400GPortMappingTesting.test_01_xpdr_device_connection _______ self = def test_01_xpdr_device_connection(self): response = test_utils.mount_device("XPDR-A2", ('xpdra2', self.NODE_VERSION)) > self.assertEqual(response.status_code, requests.codes.created, test_utils.CODE_SHOULD_BE_201) E AssertionError: 401 != 201 : Http status code should be 201 transportpce_tests/7.1/test01_portmapping.py:50: AssertionError ---------------------------- Captured stdout setup ----------------------------- starting OpenDaylight... starting KARAF TransportPCE build... Searching for pattern 'Transportpce controller started' in karaf.log... Pattern found! OpenDaylight started ! starting simulator xpdra2 in OpenROADM device version 7.1... Searching for pattern 'Data tree change listeners registered' in xpdra2-71.log... Pattern found! simulator for xpdra2 started ----------------------------- Captured stdout call ----------------------------- execution of test_01_xpdr_device_connection Searching for pattern 'Triggering notification stream NETCONF for node XPDR-A2' in karaf.log... Pattern not found after 180 seconds! Node XPDR-A2 still not added to tpce topology... _______ TransportPCE400GPortMappingTesting.test_02_xpdr_device_connected _______ self = def test_02_xpdr_device_connected(self): > response = test_utils.check_device_connection("XPDR-A2") transportpce_tests/7.1/test01_portmapping.py:55: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ node = 'XPDR-A2' def check_device_connection(node: str): url = {'rfc8040': '{}/data/network-topology:network-topology/topology=topology-netconf/node={}?content=nonconfig', 'draft-bierman02': '{}/operational/network-topology:network-topology/topology/topology-netconf/node/{}'} response = get_request(url[RESTCONF_VERSION].format('{}', node)) res = response.json() return_key = {'rfc8040': 'network-topology:node', 'draft-bierman02': 'node'} if return_key[RESTCONF_VERSION] in res.keys(): connection_status = res[return_key[RESTCONF_VERSION]][0]['netconf-node-topology:connection-status'] else: > connection_status = res['errors']['error'][0] E KeyError: 'errors' transportpce_tests/common/test_utils.py:376: KeyError ----------------------------- Captured stdout call ----------------------------- execution of test_02_xpdr_device_connected _______ TransportPCE400GPortMappingTesting.test_03_xpdr_portmapping_info _______ self = def test_03_xpdr_portmapping_info(self): > response = test_utils.get_portmapping_node_attr("XPDR-A2", "node-info", None) transportpce_tests/7.1/test01_portmapping.py:61: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ node = 'XPDR-A2', attr = 'node-info', value = None def get_portmapping_node_attr(node: str, attr: str, value: str): # pylint: disable=consider-using-f-string url = {'rfc8040': '{}/data/transportpce-portmapping:network/nodes={}', 'draft-bierman02': '{}/config/transportpce-portmapping:network/nodes/{}'} target_url = url[RESTCONF_VERSION].format('{}', node) if attr is not None: target_url = (target_url + '/{}').format('{}', attr) if value is not None: suffix = {'rfc8040': '={}', 'draft-bierman02': '/{}'} target_url = (target_url + suffix[RESTCONF_VERSION]).format('{}', value) else: attr = 'nodes' response = get_request(target_url) res = response.json() return_key = {'rfc8040': 'transportpce-portmapping:' + attr, 'draft-bierman02': attr} if return_key[RESTCONF_VERSION] in res.keys(): return_output = res[return_key[RESTCONF_VERSION]] else: > return_output = res['errors']['error'][0] E KeyError: 'errors' transportpce_tests/common/test_utils.py:477: KeyError ----------------------------- Captured stdout call ----------------------------- execution of test_03_xpdr_portmapping_info _____ TransportPCE400GPortMappingTesting.test_04_tpdr_portmapping_NETWORK1 _____ self = def test_04_tpdr_portmapping_NETWORK1(self): > response = test_utils.get_portmapping_node_attr("XPDR-A2", "mapping", "XPDR1-NETWORK1") transportpce_tests/7.1/test01_portmapping.py:74: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ node = 'XPDR-A2', attr = 'mapping', value = 'XPDR1-NETWORK1' def get_portmapping_node_attr(node: str, attr: str, value: str): # pylint: disable=consider-using-f-string url = {'rfc8040': '{}/data/transportpce-portmapping:network/nodes={}', 'draft-bierman02': '{}/config/transportpce-portmapping:network/nodes/{}'} target_url = url[RESTCONF_VERSION].format('{}', node) if attr is not None: target_url = (target_url + '/{}').format('{}', attr) if value is not None: suffix = {'rfc8040': '={}', 'draft-bierman02': '/{}'} target_url = (target_url + suffix[RESTCONF_VERSION]).format('{}', value) else: attr = 'nodes' response = get_request(target_url) res = response.json() return_key = {'rfc8040': 'transportpce-portmapping:' + attr, 'draft-bierman02': attr} if return_key[RESTCONF_VERSION] in res.keys(): return_output = res[return_key[RESTCONF_VERSION]] else: > return_output = res['errors']['error'][0] E KeyError: 'errors' transportpce_tests/common/test_utils.py:477: KeyError ----------------------------- Captured stdout call ----------------------------- execution of test_04_tpdr_portmapping_NETWORK1 _____ TransportPCE400GPortMappingTesting.test_05_tpdr_portmapping_CLIENT1 ______ self = def test_05_tpdr_portmapping_CLIENT1(self): > response = test_utils.get_portmapping_node_attr("XPDR-A2", "mapping", "XPDR1-CLIENT1") transportpce_tests/7.1/test01_portmapping.py:93: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ node = 'XPDR-A2', attr = 'mapping', value = 'XPDR1-CLIENT1' def get_portmapping_node_attr(node: str, attr: str, value: str): # pylint: disable=consider-using-f-string url = {'rfc8040': '{}/data/transportpce-portmapping:network/nodes={}', 'draft-bierman02': '{}/config/transportpce-portmapping:network/nodes/{}'} target_url = url[RESTCONF_VERSION].format('{}', node) if attr is not None: target_url = (target_url + '/{}').format('{}', attr) if value is not None: suffix = {'rfc8040': '={}', 'draft-bierman02': '/{}'} target_url = (target_url + suffix[RESTCONF_VERSION]).format('{}', value) else: attr = 'nodes' response = get_request(target_url) res = response.json() return_key = {'rfc8040': 'transportpce-portmapping:' + attr, 'draft-bierman02': attr} if return_key[RESTCONF_VERSION] in res.keys(): return_output = res[return_key[RESTCONF_VERSION]] else: > return_output = res['errors']['error'][0] E KeyError: 'errors' transportpce_tests/common/test_utils.py:477: KeyError ----------------------------- Captured stdout call ----------------------------- execution of test_05_tpdr_portmapping_CLIENT1 _____ TransportPCE400GPortMappingTesting.test_06_mpdr_portmapping_NETWORK1 _____ self = def test_06_mpdr_portmapping_NETWORK1(self): > response = test_utils.get_portmapping_node_attr("XPDR-A2", "mapping", "XPDR2-NETWORK1") transportpce_tests/7.1/test01_portmapping.py:113: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ node = 'XPDR-A2', attr = 'mapping', value = 'XPDR2-NETWORK1' def get_portmapping_node_attr(node: str, attr: str, value: str): # pylint: disable=consider-using-f-string url = {'rfc8040': '{}/data/transportpce-portmapping:network/nodes={}', 'draft-bierman02': '{}/config/transportpce-portmapping:network/nodes/{}'} target_url = url[RESTCONF_VERSION].format('{}', node) if attr is not None: target_url = (target_url + '/{}').format('{}', attr) if value is not None: suffix = {'rfc8040': '={}', 'draft-bierman02': '/{}'} target_url = (target_url + suffix[RESTCONF_VERSION]).format('{}', value) else: attr = 'nodes' response = get_request(target_url) res = response.json() return_key = {'rfc8040': 'transportpce-portmapping:' + attr, 'draft-bierman02': attr} if return_key[RESTCONF_VERSION] in res.keys(): return_output = res[return_key[RESTCONF_VERSION]] else: > return_output = res['errors']['error'][0] E KeyError: 'errors' transportpce_tests/common/test_utils.py:477: KeyError ----------------------------- Captured stdout call ----------------------------- execution of test_06_mpdr_portmapping_NETWORK1 _____ TransportPCE400GPortMappingTesting.test_07_mpdr_portmapping_CLIENT1 ______ self = def test_07_mpdr_portmapping_CLIENT1(self): > res = test_utils.get_portmapping_node_attr("XPDR-A2", "mapping", "XPDR2-CLIENT1") transportpce_tests/7.1/test01_portmapping.py:131: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ node = 'XPDR-A2', attr = 'mapping', value = 'XPDR2-CLIENT1' def get_portmapping_node_attr(node: str, attr: str, value: str): # pylint: disable=consider-using-f-string url = {'rfc8040': '{}/data/transportpce-portmapping:network/nodes={}', 'draft-bierman02': '{}/config/transportpce-portmapping:network/nodes/{}'} target_url = url[RESTCONF_VERSION].format('{}', node) if attr is not None: target_url = (target_url + '/{}').format('{}', attr) if value is not None: suffix = {'rfc8040': '={}', 'draft-bierman02': '/{}'} target_url = (target_url + suffix[RESTCONF_VERSION]).format('{}', value) else: attr = 'nodes' response = get_request(target_url) res = response.json() return_key = {'rfc8040': 'transportpce-portmapping:' + attr, 'draft-bierman02': attr} if return_key[RESTCONF_VERSION] in res.keys(): return_output = res[return_key[RESTCONF_VERSION]] else: > return_output = res['errors']['error'][0] E KeyError: 'errors' transportpce_tests/common/test_utils.py:477: KeyError ----------------------------- Captured stdout call ----------------------------- execution of test_07_mpdr_portmapping_CLIENT1 ________ TransportPCE400GPortMappingTesting.test_08_check_mccapprofile _________ self = def test_08_check_mccapprofile(self): > res = test_utils.get_portmapping_node_attr("XPDR-A2", "mc-capabilities", "XPDR-mcprofile") transportpce_tests/7.1/test01_portmapping.py:151: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ node = 'XPDR-A2', attr = 'mc-capabilities', value = 'XPDR-mcprofile' def get_portmapping_node_attr(node: str, attr: str, value: str): # pylint: disable=consider-using-f-string url = {'rfc8040': '{}/data/transportpce-portmapping:network/nodes={}', 'draft-bierman02': '{}/config/transportpce-portmapping:network/nodes/{}'} target_url = url[RESTCONF_VERSION].format('{}', node) if attr is not None: target_url = (target_url + '/{}').format('{}', attr) if value is not None: suffix = {'rfc8040': '={}', 'draft-bierman02': '/{}'} target_url = (target_url + suffix[RESTCONF_VERSION]).format('{}', value) else: attr = 'nodes' response = get_request(target_url) res = response.json() return_key = {'rfc8040': 'transportpce-portmapping:' + attr, 'draft-bierman02': attr} if return_key[RESTCONF_VERSION] in res.keys(): return_output = res[return_key[RESTCONF_VERSION]] else: > return_output = res['errors']['error'][0] E KeyError: 'errors' transportpce_tests/common/test_utils.py:477: KeyError ----------------------------- Captured stdout call ----------------------------- execution of test_08_check_mccapprofile ________ TransportPCE400GPortMappingTesting.test_09_mpdr_switching_pool ________ self = def test_09_mpdr_switching_pool(self): > response = test_utils.get_portmapping_node_attr("XPDR-A2", "switching-pool-lcp", "1") transportpce_tests/7.1/test01_portmapping.py:158: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ node = 'XPDR-A2', attr = 'switching-pool-lcp', value = '1' def get_portmapping_node_attr(node: str, attr: str, value: str): # pylint: disable=consider-using-f-string url = {'rfc8040': '{}/data/transportpce-portmapping:network/nodes={}', 'draft-bierman02': '{}/config/transportpce-portmapping:network/nodes/{}'} target_url = url[RESTCONF_VERSION].format('{}', node) if attr is not None: target_url = (target_url + '/{}').format('{}', attr) if value is not None: suffix = {'rfc8040': '={}', 'draft-bierman02': '/{}'} target_url = (target_url + suffix[RESTCONF_VERSION]).format('{}', value) else: attr = 'nodes' response = get_request(target_url) res = response.json() return_key = {'rfc8040': 'transportpce-portmapping:' + attr, 'draft-bierman02': attr} if return_key[RESTCONF_VERSION] in res.keys(): return_output = res[return_key[RESTCONF_VERSION]] else: > return_output = res['errors']['error'][0] E KeyError: 'errors' transportpce_tests/common/test_utils.py:477: KeyError ----------------------------- Captured stdout call ----------------------------- execution of test_09_mpdr_switching_pool _____ TransportPCE400GPortMappingTesting.test_10_xpdr_device_disconnection _____ self = def test_10_xpdr_device_disconnection(self): response = test_utils.unmount_device("XPDR-A2") > self.assertIn(response.status_code, (requests.codes.ok, requests.codes.no_content)) E AssertionError: 401 not found in (200, 204) transportpce_tests/7.1/test01_portmapping.py:172: AssertionError ----------------------------- Captured stdout call ----------------------------- execution of test_10_xpdr_device_disconnection Searching for pattern 'onDeviceDisConnected:\ XPDR\-A2' in karaf.log... Pattern not found after 180 seconds! Node XPDR-A2 still not deleted from tpce topology... _____ TransportPCE400GPortMappingTesting.test_11_xpdr_device_disconnected ______ self = def test_11_xpdr_device_disconnected(self): > response = test_utils.check_device_connection("XPDR-A2") transportpce_tests/7.1/test01_portmapping.py:175: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ node = 'XPDR-A2' def check_device_connection(node: str): url = {'rfc8040': '{}/data/network-topology:network-topology/topology=topology-netconf/node={}?content=nonconfig', 'draft-bierman02': '{}/operational/network-topology:network-topology/topology/topology-netconf/node/{}'} response = get_request(url[RESTCONF_VERSION].format('{}', node)) res = response.json() return_key = {'rfc8040': 'network-topology:node', 'draft-bierman02': 'node'} if return_key[RESTCONF_VERSION] in res.keys(): connection_status = res[return_key[RESTCONF_VERSION]][0]['netconf-node-topology:connection-status'] else: > connection_status = res['errors']['error'][0] E KeyError: 'errors' transportpce_tests/common/test_utils.py:376: KeyError ----------------------------- Captured stdout call ----------------------------- execution of test_11_xpdr_device_disconnected _____ TransportPCE400GPortMappingTesting.test_12_xpdr_device_not_connected _____ self = def test_12_xpdr_device_not_connected(self): > response = test_utils.get_portmapping_node_attr("XPDR-A2", "node-info", None) transportpce_tests/7.1/test01_portmapping.py:183: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ node = 'XPDR-A2', attr = 'node-info', value = None def get_portmapping_node_attr(node: str, attr: str, value: str): # pylint: disable=consider-using-f-string url = {'rfc8040': '{}/data/transportpce-portmapping:network/nodes={}', 'draft-bierman02': '{}/config/transportpce-portmapping:network/nodes/{}'} target_url = url[RESTCONF_VERSION].format('{}', node) if attr is not None: target_url = (target_url + '/{}').format('{}', attr) if value is not None: suffix = {'rfc8040': '={}', 'draft-bierman02': '/{}'} target_url = (target_url + suffix[RESTCONF_VERSION]).format('{}', value) else: attr = 'nodes' response = get_request(target_url) res = response.json() return_key = {'rfc8040': 'transportpce-portmapping:' + attr, 'draft-bierman02': attr} if return_key[RESTCONF_VERSION] in res.keys(): return_output = res[return_key[RESTCONF_VERSION]] else: > return_output = res['errors']['error'][0] E KeyError: 'errors' transportpce_tests/common/test_utils.py:477: KeyError ----------------------------- Captured stdout call ----------------------------- execution of test_12_xpdr_device_not_connected --------------------------- Captured stdout teardown --------------------------- all processes killed =========================== short test summary info ============================ FAILED transportpce_tests/7.1/test01_portmapping.py::TransportPCE400GPortMappingTesting::test_01_xpdr_device_connection FAILED transportpce_tests/7.1/test01_portmapping.py::TransportPCE400GPortMappingTesting::test_02_xpdr_device_connected FAILED transportpce_tests/7.1/test01_portmapping.py::TransportPCE400GPortMappingTesting::test_03_xpdr_portmapping_info FAILED transportpce_tests/7.1/test01_portmapping.py::TransportPCE400GPortMappingTesting::test_04_tpdr_portmapping_NETWORK1 FAILED transportpce_tests/7.1/test01_portmapping.py::TransportPCE400GPortMappingTesting::test_05_tpdr_portmapping_CLIENT1 FAILED transportpce_tests/7.1/test01_portmapping.py::TransportPCE400GPortMappingTesting::test_06_mpdr_portmapping_NETWORK1 FAILED transportpce_tests/7.1/test01_portmapping.py::TransportPCE400GPortMappingTesting::test_07_mpdr_portmapping_CLIENT1 FAILED transportpce_tests/7.1/test01_portmapping.py::TransportPCE400GPortMappingTesting::test_08_check_mccapprofile FAILED transportpce_tests/7.1/test01_portmapping.py::TransportPCE400GPortMappingTesting::test_09_mpdr_switching_pool FAILED transportpce_tests/7.1/test01_portmapping.py::TransportPCE400GPortMappingTesting::test_10_xpdr_device_disconnection FAILED transportpce_tests/7.1/test01_portmapping.py::TransportPCE400GPortMappingTesting::test_11_xpdr_device_disconnected FAILED transportpce_tests/7.1/test01_portmapping.py::TransportPCE400GPortMappingTesting::test_12_xpdr_device_not_connected 12 failed in 406.41s (0:06:46) tests71: exit 1 (406.65 seconds) /w/workspace/transportpce-tox-verify-calcium/tests> ./launch_tests.sh 7.1 pid=40920 tests71: FAIL ✖ in 6 minutes 54.48 seconds tests221: install_deps> python -I -m pip install 'setuptools>=7.0' -r /w/workspace/transportpce-tox-verify-calcium/tests/requirements.txt -r /w/workspace/transportpce-tox-verify-calcium/tests/test-requirements.txt tests221: freeze> python -m pip freeze --all tests221: bcrypt==4.2.0,certifi==2024.8.30,cffi==1.17.0,charset-normalizer==3.3.2,cryptography==43.0.1,dict2xml==1.7.6,idna==3.8,iniconfig==2.0.0,lxml==5.3.0,netconf-client==3.1.1,packaging==24.1,paramiko==3.4.1,pip==24.1,pluggy==1.5.0,psutil==6.0.0,pycparser==2.22,PyNaCl==1.5.0,pytest==8.3.2,requests==2.32.3,setuptools==70.1.0,urllib3==2.2.2,wheel==0.43.0 tests221: commands[0] /w/workspace/transportpce-tox-verify-calcium/tests> ./launch_tests.sh 2.2.1 using environment variables from ./karaf221.env pytest -q transportpce_tests/2.2.1/test01_portmapping.py .................................................................. [100%] 44 passed in 677.02s (0:11:17) pytest -q transportpce_tests/1.2.1/test04_renderer_service_path_nominal.py . [100%] 35 passed in 250.58s (0:04:10) pytest -q transportpce_tests/2.2.1/test02_topo_portmapping.py ...... [100%] 6 passed in 55.27s pytest -q transportpce_tests/2.2.1/test03_topology.py ............................................ [100%] 44 passed in 130.23s (0:02:10) pytest -q transportpce_tests/2.2.1/test04_otn_topology.py .......................... [100%] 12 passed in 58.32s pytest -q transportpce_tests/2.2.1/test05_flex_grid.py .......... [100%] 24 passed in 269.35s (0:04:29) pytest -q transportpce_tests/1.2.1/test05_olm.py .................................. [100%] 16 passed in 113.16s (0:01:53) pytest -q transportpce_tests/2.2.1/test06_renderer_service_path_nominal.py ................................................... [100%] 40 passed in 177.98s (0:02:57) pytest -q transportpce_tests/1.2.1/test06_end2end.py .............................. [100%] 31 passed in 213.21s (0:03:33) pytest -q transportpce_tests/2.2.1/test07_otn_renderer.py ........................................ [100%] 26 passed in 91.65s (0:01:31) pytest -q transportpce_tests/2.2.1/test08_otn_sh_renderer.py ............................ [100%] 22 passed in 98.14s (0:01:38) pytest -q transportpce_tests/2.2.1/test09_olm.py ......................................... [100%] 40 passed in 176.60s (0:02:56) pytest -q transportpce_tests/2.2.1/test11_otn_end2end.py ..... [100%] 54 passed in 526.23s (0:08:46) ........................................................................ [ 74%] ......................... [100%] 97 passed in 484.54s (0:08:04) pytest -q transportpce_tests/2.2.1/test12_end2end.py ...................................................... [100%] 54 passed in 619.95s (0:10:19) pytest -q transportpce_tests/2.2.1/test14_otn_switch_end2end.py ........................................................................ [ 71%] ............................. [100%] 101 passed in 483.28s (0:08:03) pytest -q transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py ..........FFFF.....FF.F..FF.FF.FFFFFFFF.FFFFFFFFFFFFF....FFFF....F..FFF. [ 67%] FFF.FFFFFFFF....FFFFFFF....FF...... [100%] =================================== FAILURES =================================== ________ TransportPCEtesting.test_011_connect_sprdB_2_N1_to_roadmB_PP1 _________ self = def test_011_connect_sprdB_2_N1_to_roadmB_PP1(self): response = test_utils.transportpce_api_rpc_request( 'transportpce-networkutils', 'init-xpdr-rdm-links', {'links-input': {'xpdr-node': 'SPDR-SB1', 'xpdr-num': '2', 'network-num': '1', 'rdm-node': 'ROADM-B1', 'srg-num': '1', 'termination-point-num': 'SRG1-PP1-TXRX'}}) > self.assertEqual(response['status_code'], requests.codes.ok) E AssertionError: 204 != 200 transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:227: AssertionError ________ TransportPCEtesting.test_012_connect_roadmB_PP1_to_spdrB_2_N1 _________ self = def test_012_connect_roadmB_PP1_to_spdrB_2_N1(self): response = test_utils.transportpce_api_rpc_request( 'transportpce-networkutils', 'init-rdm-xpdr-links', {'links-input': {'xpdr-node': 'SPDR-SB1', 'xpdr-num': '2', 'network-num': '1', 'rdm-node': 'ROADM-B1', 'srg-num': '1', 'termination-point-num': 'SRG1-PP1-TXRX'}}) > self.assertEqual(response['status_code'], requests.codes.ok) E AssertionError: 204 != 200 transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:236: AssertionError ________ TransportPCEtesting.test_013_connect_sprdB_2_N2_to_roadmB_PP2 _________ self = def test_013_connect_sprdB_2_N2_to_roadmB_PP2(self): response = test_utils.transportpce_api_rpc_request( 'transportpce-networkutils', 'init-xpdr-rdm-links', {'links-input': {'xpdr-node': 'SPDR-SB1', 'xpdr-num': '2', 'network-num': '2', 'rdm-node': 'ROADM-B1', 'srg-num': '1', 'termination-point-num': 'SRG1-PP2-TXRX'}}) > self.assertEqual(response['status_code'], requests.codes.ok) E AssertionError: 204 != 200 transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:245: AssertionError ________ TransportPCEtesting.test_014_connect_roadmB_PP2_to_spdrB_2_N2 _________ self = def test_014_connect_roadmB_PP2_to_spdrB_2_N2(self): response = test_utils.transportpce_api_rpc_request( 'transportpce-networkutils', 'init-rdm-xpdr-links', {'links-input': {'xpdr-node': 'SPDR-SB1', 'xpdr-num': '2', 'network-num': '2', 'rdm-node': 'ROADM-B1', 'srg-num': '1', 'termination-point-num': 'SRG1-PP2-TXRX'}}) > self.assertEqual(response['status_code'], requests.codes.ok) E AssertionError: 204 != 200 transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:254: AssertionError _____________ TransportPCEtesting.test_020_create_OTS_ROADMB_DEG1 ______________ self = def test_020_create_OTS_ROADMB_DEG1(self): response = test_utils.transportpce_api_rpc_request( 'transportpce-device-renderer', 'create-ots-oms', { 'node-id': 'ROADM-B1', 'logical-connection-point': 'DEG1-TTP-TXRX' }) self.assertEqual(response['status_code'], requests.codes.ok) > self.assertIn('Interfaces OTS-DEG1-TTP-TXRX - OMS-DEG1-TTP-TXRX successfully created on node ROADM-B1', response["output"]["result"]) E AssertionError: 'Interfaces OTS-DEG1-TTP-TXRX - OMS-DEG1-TTP-TXRX successfully created on node ROADM-B1' not found in 'ROADM-B1 is not mounted on the controller' transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:341: AssertionError _____________ TransportPCEtesting.test_021_create_OTS_ROADMB_DEG2 ______________ self = def test_021_create_OTS_ROADMB_DEG2(self): response = test_utils.transportpce_api_rpc_request( 'transportpce-device-renderer', 'create-ots-oms', { 'node-id': 'ROADM-B1', 'logical-connection-point': 'DEG2-TTP-TXRX' }) self.assertEqual(response['status_code'], requests.codes.ok) > self.assertIn('Interfaces OTS-DEG2-TTP-TXRX - OMS-DEG2-TTP-TXRX successfully created on node ROADM-B1', response["output"]["result"]) E AssertionError: 'Interfaces OTS-DEG2-TTP-TXRX - OMS-DEG2-TTP-TXRX successfully created on node ROADM-B1' not found in 'ROADM-B1 is not mounted on the controller' transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:352: AssertionError __________ TransportPCEtesting.test_023_calculate_span_loss_base_all ___________ self = def test_023_calculate_span_loss_base_all(self): response = test_utils.transportpce_api_rpc_request( 'transportpce-olm', 'calculate-spanloss-base', { 'src-type': 'all' }) self.assertEqual(response['status_code'], requests.codes.ok) self.assertIn('Success', response["output"]["result"]) self.assertIn({ "spanloss": "25.7", "link-id": "ROADM-C1-DEG1-DEG1-TTP-TXRXtoROADM-A1-DEG2-DEG2-TTP-TXRX" }, response["output"]["spans"]) self.assertIn({ "spanloss": "17.6", "link-id": "ROADM-A1-DEG2-DEG2-TTP-TXRXtoROADM-C1-DEG1-DEG1-TTP-TXRX" }, response["output"]["spans"]) > self.assertIn({ "spanloss": "23.6", "link-id": "ROADM-B1-DEG1-DEG1-TTP-TXRXtoROADM-A1-DEG1-DEG1-TTP-TXRX" }, response["output"]["spans"]) E AssertionError: {'spanloss': '23.6', 'link-id': 'ROADM-B1-DEG1-DEG1-TTP-TXRXtoROADM-A1-DEG1-DEG1-TTP-TXRX'} not found in [{'spanloss': '25.7', 'link-id': 'ROADM-C1-DEG1-DEG1-TTP-TXRXtoROADM-A1-DEG2-DEG2-TTP-TXRX'}, {'spanloss': '17.6', 'link-id': 'ROADM-A1-DEG2-DEG2-TTP-TXRXtoROADM-C1-DEG1-DEG1-TTP-TXRX'}] transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:382: AssertionError _____________ TransportPCEtesting.test_026_get_OCH_OTU4_service_AB _____________ self = def test_026_get_OCH_OTU4_service_AB(self): response = test_utils.get_ordm_serv_list_attr_request("services", "service-OCH-OTU4-AB") > self.assertEqual(response['status_code'], requests.codes.ok) E AssertionError: 409 != 200 transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:419: AssertionError ____________ TransportPCEtesting.test_027_check_otn_topo_otu4_links ____________ self = def test_027_check_otn_topo_otu4_links(self): response = test_utils.get_ietf_network_request('otn-topology', 'config') self.assertEqual(response['status_code'], requests.codes.ok) > self.assertEqual(len(response['network'][0]['ietf-network-topology:link']), 2) E KeyError: 'ietf-network-topology:link' transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:429: KeyError _____________ TransportPCEtesting.test_029_get_OCH_OTU4_service_BC _____________ self = def test_029_get_OCH_OTU4_service_BC(self): response = test_utils.get_ordm_serv_list_attr_request("services", "service-OCH-OTU4-BC") > self.assertEqual(response['status_code'], requests.codes.ok) E AssertionError: 409 != 200 transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:470: AssertionError ____________ TransportPCEtesting.test_030_check_otn_topo_otu4_links ____________ self = def test_030_check_otn_topo_otu4_links(self): response = test_utils.get_ietf_network_request('otn-topology', 'config') self.assertEqual(response['status_code'], requests.codes.ok) > self.assertEqual(len(response['network'][0]['ietf-network-topology:link']), 4) E KeyError: 'ietf-network-topology:link' transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:480: KeyError ______________ TransportPCEtesting.test_032_get_ODU4_service_ABC _______________ self = def test_032_get_ODU4_service_ABC(self): response = test_utils.get_ordm_serv_list_attr_request("services", "service-ODU4-ABC") > self.assertEqual(response['status_code'], requests.codes.ok) E AssertionError: 409 != 200 transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:533: AssertionError ___________ TransportPCEtesting.test_033_check_interface_ODU4_spdra ____________ self = def test_033_check_interface_ODU4_spdra(self): response = test_utils.check_node_attribute_request( 'SPDR-SA1', 'interface', 'XPDR1-NETWORK1-ODU4') > self.assertEqual(response['status_code'], requests.codes.ok) E AssertionError: 409 != 200 transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:543: AssertionError ___________ TransportPCEtesting.test_034_check_interface_ODU4_spdrc ____________ self = def test_034_check_interface_ODU4_spdrc(self): response = test_utils.check_node_attribute_request( 'SPDR-SC1', 'interface', 'XPDR1-NETWORK1-ODU4') > self.assertEqual(response['status_code'], requests.codes.ok) E AssertionError: 409 != 200 transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:576: AssertionError _______ TransportPCEtesting.test_035_check_interface_ODU4_NETWORK1_spdrb _______ self = def test_035_check_interface_ODU4_NETWORK1_spdrb(self): response = test_utils.check_node_attribute_request( 'SPDR-SB1', 'interface', 'XPDR2-NETWORK1-ODU4') > self.assertEqual(response['status_code'], requests.codes.ok) E AssertionError: 409 != 200 transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:608: AssertionError _______ TransportPCEtesting.test_036_check_interface_ODU4_NETWORK2_spdrb _______ self = def test_036_check_interface_ODU4_NETWORK2_spdrb(self): response = test_utils.check_node_attribute_request( 'SPDR-SB1', 'interface', 'XPDR2-NETWORK2-ODU4') > self.assertEqual(response['status_code'], requests.codes.ok) E AssertionError: 409 != 200 transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:629: AssertionError ___________ TransportPCEtesting.test_037_check_ODU4_connection_spdrb ___________ self = def test_037_check_ODU4_connection_spdrb(self): response = test_utils.check_node_attribute_request( 'SPDR-SB1', 'odu-connection', 'XPDR2-NETWORK1-ODU4-x-XPDR2-NETWORK2-ODU4') > self.assertEqual(response['status_code'], requests.codes.ok) E AssertionError: 409 != 200 transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:651: AssertionError ______________ TransportPCEtesting.test_038_check_otn_topo_links _______________ self = def test_038_check_otn_topo_links(self): response = test_utils.get_ietf_network_request('otn-topology', 'config') self.assertEqual(response['status_code'], requests.codes.ok) > self.assertEqual(len(response['network'][0]['ietf-network-topology:link']), 6) E KeyError: 'ietf-network-topology:link' transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:667: KeyError ________________ TransportPCEtesting.test_039_check_otn_topo_tp ________________ self = def test_039_check_otn_topo_tp(self): response = test_utils.get_ietf_network_request('otn-topology', 'config') self.assertEqual(response['status_code'], requests.codes.ok) for node in response['network'][0]['node']: if node['node-id'] == 'SPDR-SA1-XPDR1' or node['node-id'] == 'SPDR-SC1-XPDR1': tpList = node['ietf-network-topology:termination-point'] for tp in tpList: if tp['tp-id'] == 'XPDR1-NETWORK1': xpdrTpPortConAt = tp['org-openroadm-otn-network-topology:xpdr-tp-port-connection-attributes'] > self.assertEqual(len(xpdrTpPortConAt['ts-pool']), 80) E KeyError: 'ts-pool' transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:698: KeyError ________________ TransportPCEtesting.test_041_get_10GE_service1 ________________ self = def test_041_get_10GE_service1(self): response = test_utils.get_ordm_serv_list_attr_request("services", "service1-10GE") > self.assertEqual(response['status_code'], requests.codes.ok) E AssertionError: 409 != 200 transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:731: AssertionError ________ TransportPCEtesting.test_042_check_interface_10GE_CLIENT_spdra ________ self = def test_042_check_interface_10GE_CLIENT_spdra(self): response = test_utils.check_node_attribute_request( 'SPDR-SA1', 'interface', 'XPDR1-CLIENT1-ETHERNET10G') > self.assertEqual(response['status_code'], requests.codes.ok) E AssertionError: 409 != 200 transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:741: AssertionError _______ TransportPCEtesting.test_043_check_interface_ODU2E_CLIENT_spdra ________ self = def test_043_check_interface_ODU2E_CLIENT_spdra(self): response = test_utils.check_node_attribute_request( 'SPDR-SA1', 'interface', 'XPDR1-CLIENT1-ODU2e:service1-10GE') > self.assertEqual(response['status_code'], requests.codes.ok) E AssertionError: 409 != 200 transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:755: AssertionError _______ TransportPCEtesting.test_044_check_interface_ODU2E_NETWORK_spdra _______ self = def test_044_check_interface_ODU2E_NETWORK_spdra(self): response = test_utils.check_node_attribute_request( 'SPDR-SA1', 'interface', 'XPDR1-NETWORK1-ODU2e:service1-10GE') > self.assertEqual(response['status_code'], requests.codes.ok) E AssertionError: 409 != 200 transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:796: AssertionError __________ TransportPCEtesting.test_045_check_ODU2E_connection_spdra ___________ self = def test_045_check_ODU2E_connection_spdra(self): response = test_utils.check_node_attribute_request( 'SPDR-SA1', 'odu-connection', 'XPDR1-CLIENT1-ODU2e-x-XPDR1-NETWORK1-ODU2e') > self.assertEqual(response['status_code'], requests.codes.ok) E AssertionError: 409 != 200 transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:825: AssertionError ________ TransportPCEtesting.test_046_check_interface_10GE_CLIENT_spdrc ________ self = def test_046_check_interface_10GE_CLIENT_spdrc(self): response = test_utils.check_node_attribute_request( 'SPDR-SC1', 'interface', 'XPDR1-CLIENT1-ETHERNET10G') > self.assertEqual(response['status_code'], requests.codes.ok) E AssertionError: 409 != 200 transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:841: AssertionError _______ TransportPCEtesting.test_047_check_interface_ODU2E_CLIENT_spdrc ________ self = def test_047_check_interface_ODU2E_CLIENT_spdrc(self): response = test_utils.check_node_attribute_request( 'SPDR-SC1', 'interface', 'XPDR1-CLIENT1-ODU2e:service1-10GE') > self.assertEqual(response['status_code'], requests.codes.ok) E AssertionError: 409 != 200 transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:855: AssertionError _______ TransportPCEtesting.test_048_check_interface_ODU2E_NETWORK_spdrc _______ self = def test_048_check_interface_ODU2E_NETWORK_spdrc(self): response = test_utils.check_node_attribute_request( 'SPDR-SC1', 'interface', 'XPDR1-NETWORK1-ODU2e:service1-10GE') > self.assertEqual(response['status_code'], requests.codes.ok) E AssertionError: 409 != 200 transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:896: AssertionError __________ TransportPCEtesting.test_049_check_ODU2E_connection_spdrc ___________ self = def test_049_check_ODU2E_connection_spdrc(self): response = test_utils.check_node_attribute_request( 'SPDR-SC1', 'odu-connection', 'XPDR1-CLIENT1-ODU2e-x-XPDR1-NETWORK1-ODU2e') > self.assertEqual(response['status_code'], requests.codes.ok) E AssertionError: 409 != 200 transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:925: AssertionError ______________ TransportPCEtesting.test_050_check_otn_topo_links _______________ self = def test_050_check_otn_topo_links(self): response = test_utils.get_ietf_network_request('otn-topology', 'config') self.assertEqual(response['status_code'], requests.codes.ok) > self.assertEqual(len(response['network'][0]['ietf-network-topology:link']), 6) E KeyError: 'ietf-network-topology:link' transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:941: KeyError ________________ TransportPCEtesting.test_051_check_otn_topo_tp ________________ self = def test_051_check_otn_topo_tp(self): response = test_utils.get_ietf_network_request('otn-topology', 'config') self.assertEqual(response['status_code'], requests.codes.ok) for node in response['network'][0]['node']: if node['node-id'] == 'SPDR-SA1-XPDR1' or node['node-id'] == 'SPDR-SC1-XPDR1': tpList = node['ietf-network-topology:termination-point'] for tp in tpList: if tp['tp-id'] == 'XPDR1-NETWORK1': xpdrTpPortConAt = tp['org-openroadm-otn-network-topology:xpdr-tp-port-connection-attributes'] > self.assertEqual(len(xpdrTpPortConAt['ts-pool']), 72) E KeyError: 'ts-pool' transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:960: KeyError _______________ TransportPCEtesting.test_052_delete_10GE_service _______________ self = def test_052_delete_10GE_service(self): self.del_serv_input_data["service-delete-req-info"]["service-name"] = "service1-10GE" response = test_utils.transportpce_api_rpc_request( 'org-openroadm-service', 'service-delete', self.del_serv_input_data) self.assertEqual(response['status_code'], requests.codes.ok) > self.assertIn('Renderer service delete in progress', response['output']['configuration-response-common']['response-message']) E AssertionError: 'Renderer service delete in progress' not found in "Service 'service1-10GE' does not exist in datastore" transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:975: AssertionError _______________ TransportPCEtesting.test_053_check_service_list ________________ self = def test_053_check_service_list(self): response = test_utils.get_ordm_serv_list_request() > self.assertEqual(response['status_code'], requests.codes.ok) E AssertionError: 409 != 200 transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:981: AssertionError ______________ TransportPCEtesting.test_058_check_otn_topo_links _______________ self = def test_058_check_otn_topo_links(self): response = test_utils.get_ietf_network_request('otn-topology', 'config') self.assertEqual(response['status_code'], requests.codes.ok) > self.assertEqual(len(response['network'][0]['ietf-network-topology:link']), 6) E KeyError: 'ietf-network-topology:link' transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:1009: KeyError ________________ TransportPCEtesting.test_059_check_otn_topo_tp ________________ self = def test_059_check_otn_topo_tp(self): response = test_utils.get_ietf_network_request('otn-topology', 'config') self.assertEqual(response['status_code'], requests.codes.ok) for node in response['network'][0]['node']: if (node['node-id'] == 'SPDR-SA1-XPDR1' or node['node-id'] == 'SPDR-SC1-XPDR1'): tpList = node['ietf-network-topology:termination-point'] for tp in tpList: if tp['tp-id'] == 'XPDR1-NETWORK1': xpdrTpPortConAt = tp['org-openroadm-otn-network-topology:xpdr-tp-port-connection-attributes'] > self.assertEqual(len(xpdrTpPortConAt['ts-pool']), 80) E KeyError: 'ts-pool' transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:1028: KeyError _______________ TransportPCEtesting.test_060_delete_ODU4_service _______________ self = def test_060_delete_ODU4_service(self): self.del_serv_input_data["service-delete-req-info"]["service-name"] = "service-ODU4-ABC" response = test_utils.transportpce_api_rpc_request( 'org-openroadm-service', 'service-delete', self.del_serv_input_data) self.assertEqual(response['status_code'], requests.codes.ok) > self.assertIn('Renderer service delete in progress', response['output']['configuration-response-common']['response-message']) E AssertionError: 'Renderer service delete in progress' not found in "Service 'service-ODU4-ABC' does not exist in datastore" transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:1038: AssertionError _______________ TransportPCEtesting.test_061_check_service_list ________________ self = def test_061_check_service_list(self): response = test_utils.get_ordm_serv_list_request() > self.assertEqual(response['status_code'], requests.codes.ok) E AssertionError: 409 != 200 transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:1044: AssertionError ______________ TransportPCEtesting.test_066_check_otn_topo_links _______________ self = def test_066_check_otn_topo_links(self): > self.test_030_check_otn_topo_otu4_links() transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:1073: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = def test_030_check_otn_topo_otu4_links(self): response = test_utils.get_ietf_network_request('otn-topology', 'config') self.assertEqual(response['status_code'], requests.codes.ok) > self.assertEqual(len(response['network'][0]['ietf-network-topology:link']), 4) E KeyError: 'ietf-network-topology:link' transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:480: KeyError _______________ TransportPCEtesting.test_069_get_ODU4_service_AB _______________ self = def test_069_get_ODU4_service_AB(self): response = test_utils.get_ordm_serv_list_attr_request("services", "service-ODU4-AB") > self.assertEqual(response['status_code'], requests.codes.ok) E AssertionError: 409 != 200 transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:1119: AssertionError ___________ TransportPCEtesting.test_070_check_interface_ODU4_spdra ____________ self = def test_070_check_interface_ODU4_spdra(self): response = test_utils.check_node_attribute_request( 'SPDR-SA1', 'interface', 'XPDR1-NETWORK1-ODU4') > self.assertEqual(response['status_code'], requests.codes.ok) E AssertionError: 409 != 200 transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:1129: AssertionError __________ TransportPCEtesting.test_071_check_interface_ODU4_spdrb_N1 __________ self = def test_071_check_interface_ODU4_spdrb_N1(self): response = test_utils.check_node_attribute_request( 'SPDR-SB1', 'interface', 'XPDR2-NETWORK1-ODU4') > self.assertEqual(response['status_code'], requests.codes.ok) E AssertionError: 409 != 200 transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:1168: AssertionError _______________ TransportPCEtesting.test_073_get_ODU4_service_AB _______________ self = def test_073_get_ODU4_service_AB(self): response = test_utils.get_ordm_serv_list_attr_request("services", "service-ODU4-BC") > self.assertEqual(response['status_code'], requests.codes.ok) E AssertionError: 409 != 200 transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:1231: AssertionError __________ TransportPCEtesting.test_074_check_interface_ODU4_spdrb_N2 __________ self = def test_074_check_interface_ODU4_spdrb_N2(self): response = test_utils.check_node_attribute_request( 'SPDR-SB1', 'interface', 'XPDR2-NETWORK2-ODU4') > self.assertEqual(response['status_code'], requests.codes.ok) E AssertionError: 409 != 200 transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:1241: AssertionError ___________ TransportPCEtesting.test_075_check_interface_ODU4_spdrc ____________ self = def test_075_check_interface_ODU4_spdrc(self): response = test_utils.check_node_attribute_request( 'SPDR-SC1', 'interface', 'XPDR1-NETWORK1-ODU4') > self.assertEqual(response['status_code'], requests.codes.ok) E AssertionError: 409 != 200 transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:1279: AssertionError _________ TransportPCEtesting.test_077_check_configuration_spdra_spdrc _________ self = def test_077_check_configuration_spdra_spdrc(self): > self.test_041_get_10GE_service1() transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:1347: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:731: in test_041_get_10GE_service1 self.assertEqual(response['status_code'], requests.codes.ok) E AssertionError: 409 != 200 ______ TransportPCEtesting.test_078_check_interface_ODU2E_NETWORK1_spdrb _______ self = def test_078_check_interface_ODU2E_NETWORK1_spdrb(self): response = test_utils.check_node_attribute_request( 'SPDR-SB1', 'interface', 'XPDR2-NETWORK1-ODU2e:service1-10GE') > self.assertEqual(response['status_code'], requests.codes.ok) E AssertionError: 409 != 200 transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:1359: AssertionError ______ TransportPCEtesting.test_079_check_interface_ODU2E_NETWORK2_spdrb _______ self = def test_079_check_interface_ODU2E_NETWORK2_spdrb(self): response = test_utils.check_node_attribute_request( 'SPDR-SB1', 'interface', 'XPDR2-NETWORK2-ODU2e:service1-10GE') > self.assertEqual(response['status_code'], requests.codes.ok) E AssertionError: 409 != 200 transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:1387: AssertionError __________ TransportPCEtesting.test_080_check_ODU2E_connection_spdrb ___________ self = def test_080_check_ODU2E_connection_spdrb(self): response = test_utils.check_node_attribute_request( 'SPDR-SB1', 'odu-connection', 'XPDR2-NETWORK1-ODU2e-x-XPDR2-NETWORK2-ODU2e') > self.assertEqual(response['status_code'], requests.codes.ok) E AssertionError: 409 != 200 transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:1415: AssertionError ______________ TransportPCEtesting.test_081_check_otn_topo_links _______________ self = def test_081_check_otn_topo_links(self): response = test_utils.get_ietf_network_request('otn-topology', 'config') self.assertEqual(response['status_code'], requests.codes.ok) > self.assertEqual(len(response['network'][0]['ietf-network-topology:link']), 8) E KeyError: 'ietf-network-topology:link' transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:1431: KeyError ________________ TransportPCEtesting.test_082_check_otn_topo_tp ________________ self = def test_082_check_otn_topo_tp(self): > self.test_051_check_otn_topo_tp() transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:1444: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = def test_051_check_otn_topo_tp(self): response = test_utils.get_ietf_network_request('otn-topology', 'config') self.assertEqual(response['status_code'], requests.codes.ok) for node in response['network'][0]['node']: if node['node-id'] == 'SPDR-SA1-XPDR1' or node['node-id'] == 'SPDR-SC1-XPDR1': tpList = node['ietf-network-topology:termination-point'] for tp in tpList: if tp['tp-id'] == 'XPDR1-NETWORK1': xpdrTpPortConAt = tp['org-openroadm-otn-network-topology:xpdr-tp-port-connection-attributes'] > self.assertEqual(len(xpdrTpPortConAt['ts-pool']), 72) E KeyError: 'ts-pool' transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:960: KeyError _______________ TransportPCEtesting.test_083_delete_10GE_service _______________ self = def test_083_delete_10GE_service(self): self.del_serv_input_data["service-delete-req-info"]["service-name"] = "service1-10GE" response = test_utils.transportpce_api_rpc_request( 'org-openroadm-service', 'service-delete', self.del_serv_input_data) self.assertEqual(response['status_code'], requests.codes.ok) > self.assertIn('Renderer service delete in progress', response['output']['configuration-response-common']['response-message']) E AssertionError: 'Renderer service delete in progress' not found in "Service 'service1-10GE' does not exist in datastore" transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:1452: AssertionError _______________ TransportPCEtesting.test_084_check_service_list ________________ self = def test_084_check_service_list(self): response = test_utils.get_ordm_serv_list_request() > self.assertEqual(response['status_code'], requests.codes.ok) E AssertionError: 409 != 200 transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:1458: AssertionError ______________ TransportPCEtesting.test_089_check_otn_topo_links _______________ self = def test_089_check_otn_topo_links(self): response = test_utils.get_ietf_network_request('otn-topology', 'config') self.assertEqual(response['status_code'], requests.codes.ok) > self.assertEqual(len(response['network'][0]['ietf-network-topology:link']), 8) E KeyError: 'ietf-network-topology:link' transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:1487: KeyError ________________ TransportPCEtesting.test_090_check_otn_topo_tp ________________ self = def test_090_check_otn_topo_tp(self): > self.test_059_check_otn_topo_tp() transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:1500: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = def test_059_check_otn_topo_tp(self): response = test_utils.get_ietf_network_request('otn-topology', 'config') self.assertEqual(response['status_code'], requests.codes.ok) for node in response['network'][0]['node']: if (node['node-id'] == 'SPDR-SA1-XPDR1' or node['node-id'] == 'SPDR-SC1-XPDR1'): tpList = node['ietf-network-topology:termination-point'] for tp in tpList: if tp['tp-id'] == 'XPDR1-NETWORK1': xpdrTpPortConAt = tp['org-openroadm-otn-network-topology:xpdr-tp-port-connection-attributes'] > self.assertEqual(len(xpdrTpPortConAt['ts-pool']), 80) E KeyError: 'ts-pool' transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:1028: KeyError _____________ TransportPCEtesting.test_091_delete_ODU4_service_AB ______________ self = def test_091_delete_ODU4_service_AB(self): self.del_serv_input_data["service-delete-req-info"]["service-name"] = "service-ODU4-AB" response = test_utils.transportpce_api_rpc_request( 'org-openroadm-service', 'service-delete', self.del_serv_input_data) self.assertEqual(response['status_code'], requests.codes.ok) > self.assertIn('Renderer service delete in progress', response['output']['configuration-response-common']['response-message']) E AssertionError: 'Renderer service delete in progress' not found in "Service 'service-ODU4-AB' does not exist in datastore" transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:1508: AssertionError _____________ TransportPCEtesting.test_092_delete_ODU4_service_BC ______________ self = def test_092_delete_ODU4_service_BC(self): self.del_serv_input_data["service-delete-req-info"]["service-name"] = "service-ODU4-BC" response = test_utils.transportpce_api_rpc_request( 'org-openroadm-service', 'service-delete', self.del_serv_input_data) self.assertEqual(response['status_code'], requests.codes.ok) > self.assertIn('Renderer service delete in progress', response['output']['configuration-response-common']['response-message']) E AssertionError: 'Renderer service delete in progress' not found in "Service 'service-ODU4-BC' does not exist in datastore" transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:1518: AssertionError _______________ TransportPCEtesting.test_093_check_global_config _______________ self = def test_093_check_global_config(self): > self.test_061_check_service_list() transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:1523: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:1044: in test_061_check_service_list self.assertEqual(response['status_code'], requests.codes.ok) E AssertionError: 409 != 200 ___________ TransportPCEtesting.test_094_delete_OCH_OTU4_service_AB ____________ self = def test_094_delete_OCH_OTU4_service_AB(self): self.del_serv_input_data["service-delete-req-info"]["service-name"] = "service-OCH-OTU4-AB" response = test_utils.transportpce_api_rpc_request( 'org-openroadm-service', 'service-delete', self.del_serv_input_data) self.assertEqual(response['status_code'], requests.codes.ok) > self.assertIn('Renderer service delete in progress', response['output']['configuration-response-common']['response-message']) E AssertionError: 'Renderer service delete in progress' not found in "Service 'service-OCH-OTU4-AB' does not exist in datastore" transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:1537: AssertionError ___________ TransportPCEtesting.test_095_delete_OCH_OTU4_service_BC ____________ self = def test_095_delete_OCH_OTU4_service_BC(self): self.del_serv_input_data["service-delete-req-info"]["service-name"] = "service-OCH-OTU4-BC" response = test_utils.transportpce_api_rpc_request( 'org-openroadm-service', 'service-delete', self.del_serv_input_data) self.assertEqual(response['status_code'], requests.codes.ok) > self.assertIn('Renderer service delete in progress', response['output']['configuration-response-common']['response-message']) E AssertionError: 'Renderer service delete in progress' not found in "Service 'service-OCH-OTU4-BC' does not exist in datastore" transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:1547: AssertionError _________ TransportPCEtesting.test_100_disconnect_xponders_from_roadm __________ self = def test_100_disconnect_xponders_from_roadm(self): response = test_utils.get_ietf_network_request('openroadm-topology', 'config') self.assertEqual(response['status_code'], requests.codes.ok) links = response['network'][0]['ietf-network-topology:link'] for link in links: > if link["org-openroadm-common-network:link-type"] in ('XPONDER-OUTPUT', 'XPONDER-INPUT'): E KeyError: 'org-openroadm-common-network:link-type' transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:1590: KeyError ____________ TransportPCEtesting.test_101_check_openroadm_topology _____________ self = def test_101_check_openroadm_topology(self): response = test_utils.get_ietf_network_request('openroadm-topology', 'config') self.assertEqual(response['status_code'], requests.codes.ok) links = response['network'][0]['ietf-network-topology:link'] > self.assertEqual(28, len(links), 'Topology should contain 28 links') E AssertionError: 28 != 26 : Topology should contain 28 links transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py:1599: AssertionError =========================== short test summary info ============================ FAILED transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py::TransportPCEtesting::test_011_connect_sprdB_2_N1_to_roadmB_PP1 FAILED transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py::TransportPCEtesting::test_012_connect_roadmB_PP1_to_spdrB_2_N1 FAILED transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py::TransportPCEtesting::test_013_connect_sprdB_2_N2_to_roadmB_PP2 FAILED transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py::TransportPCEtesting::test_014_connect_roadmB_PP2_to_spdrB_2_N2 FAILED transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py::TransportPCEtesting::test_020_create_OTS_ROADMB_DEG1 FAILED transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py::TransportPCEtesting::test_021_create_OTS_ROADMB_DEG2 FAILED transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py::TransportPCEtesting::test_023_calculate_span_loss_base_all FAILED transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py::TransportPCEtesting::test_026_get_OCH_OTU4_service_AB FAILED transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py::TransportPCEtesting::test_027_check_otn_topo_otu4_links FAILED transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py::TransportPCEtesting::test_029_get_OCH_OTU4_service_BC FAILED transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py::TransportPCEtesting::test_030_check_otn_topo_otu4_links FAILED transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py::TransportPCEtesting::test_032_get_ODU4_service_ABC FAILED transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py::TransportPCEtesting::test_033_check_interface_ODU4_spdra FAILED transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py::TransportPCEtesting::test_034_check_interface_ODU4_spdrc FAILED transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py::TransportPCEtesting::test_035_check_interface_ODU4_NETWORK1_spdrb FAILED transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py::TransportPCEtesting::test_036_check_interface_ODU4_NETWORK2_spdrb FAILED transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py::TransportPCEtesting::test_037_check_ODU4_connection_spdrb FAILED transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py::TransportPCEtesting::test_038_check_otn_topo_links FAILED transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py::TransportPCEtesting::test_039_check_otn_topo_tp FAILED transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py::TransportPCEtesting::test_041_get_10GE_service1 FAILED transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py::TransportPCEtesting::test_042_check_interface_10GE_CLIENT_spdra FAILED transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py::TransportPCEtesting::test_043_check_interface_ODU2E_CLIENT_spdra FAILED transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py::TransportPCEtesting::test_044_check_interface_ODU2E_NETWORK_spdra FAILED transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py::TransportPCEtesting::test_045_check_ODU2E_connection_spdra FAILED transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py::TransportPCEtesting::test_046_check_interface_10GE_CLIENT_spdrc FAILED transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py::TransportPCEtesting::test_047_check_interface_ODU2E_CLIENT_spdrc FAILED transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py::TransportPCEtesting::test_048_check_interface_ODU2E_NETWORK_spdrc FAILED transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py::TransportPCEtesting::test_049_check_ODU2E_connection_spdrc FAILED transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py::TransportPCEtesting::test_050_check_otn_topo_links FAILED transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py::TransportPCEtesting::test_051_check_otn_topo_tp FAILED transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py::TransportPCEtesting::test_052_delete_10GE_service FAILED transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py::TransportPCEtesting::test_053_check_service_list FAILED transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py::TransportPCEtesting::test_058_check_otn_topo_links FAILED transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py::TransportPCEtesting::test_059_check_otn_topo_tp FAILED transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py::TransportPCEtesting::test_060_delete_ODU4_service FAILED transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py::TransportPCEtesting::test_061_check_service_list FAILED transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py::TransportPCEtesting::test_066_check_otn_topo_links FAILED transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py::TransportPCEtesting::test_069_get_ODU4_service_AB FAILED transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py::TransportPCEtesting::test_070_check_interface_ODU4_spdra FAILED transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py::TransportPCEtesting::test_071_check_interface_ODU4_spdrb_N1 FAILED transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py::TransportPCEtesting::test_073_get_ODU4_service_AB FAILED transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py::TransportPCEtesting::test_074_check_interface_ODU4_spdrb_N2 FAILED transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py::TransportPCEtesting::test_075_check_interface_ODU4_spdrc FAILED transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py::TransportPCEtesting::test_077_check_configuration_spdra_spdrc FAILED transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py::TransportPCEtesting::test_078_check_interface_ODU2E_NETWORK1_spdrb FAILED transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py::TransportPCEtesting::test_079_check_interface_ODU2E_NETWORK2_spdrb FAILED transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py::TransportPCEtesting::test_080_check_ODU2E_connection_spdrb FAILED transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py::TransportPCEtesting::test_081_check_otn_topo_links FAILED transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py::TransportPCEtesting::test_082_check_otn_topo_tp FAILED transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py::TransportPCEtesting::test_083_delete_10GE_service FAILED transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py::TransportPCEtesting::test_084_check_service_list FAILED transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py::TransportPCEtesting::test_089_check_otn_topo_links FAILED transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py::TransportPCEtesting::test_090_check_otn_topo_tp FAILED transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py::TransportPCEtesting::test_091_delete_ODU4_service_AB FAILED transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py::TransportPCEtesting::test_092_delete_ODU4_service_BC FAILED transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py::TransportPCEtesting::test_093_check_global_config FAILED transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py::TransportPCEtesting::test_094_delete_OCH_OTU4_service_AB FAILED transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py::TransportPCEtesting::test_095_delete_OCH_OTU4_service_BC FAILED transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py::TransportPCEtesting::test_100_disconnect_xponders_from_roadm FAILED transportpce_tests/2.2.1/test15_otn_end2end_with_intermediate_switch.py::TransportPCEtesting::test_101_check_openroadm_topology 60 failed, 47 passed in 788.00s (0:13:07) tests121: OK ✔ in 35 minutes 49.75 seconds tests221: exit 1 (3566.09 seconds) /w/workspace/transportpce-tox-verify-calcium/tests> ./launch_tests.sh 2.2.1 pid=41830 tests221: FAIL ✖ in 59 minutes 32.52 seconds tests_hybrid: install_deps> python -I -m pip install 'setuptools>=7.0' -r /w/workspace/transportpce-tox-verify-calcium/tests/requirements.txt -r /w/workspace/transportpce-tox-verify-calcium/tests/test-requirements.txt tests_hybrid: freeze> python -m pip freeze --all tests_hybrid: bcrypt==4.2.0,certifi==2024.8.30,cffi==1.17.0,charset-normalizer==3.3.2,cryptography==43.0.1,dict2xml==1.7.6,idna==3.8,iniconfig==2.0.0,lxml==5.3.0,netconf-client==3.1.1,packaging==24.1,paramiko==3.4.1,pip==24.2,pluggy==1.5.0,psutil==6.0.0,pycparser==2.22,PyNaCl==1.5.0,pytest==8.3.2,requests==2.32.3,setuptools==72.1.0,urllib3==2.2.2,wheel==0.44.0 tests_hybrid: commands[0] /w/workspace/transportpce-tox-verify-calcium/tests> ./launch_tests.sh hybrid using environment variables from ./karaf121.env pytest -q transportpce_tests/hybrid/test01_device_change_notifications.py ................................................... [100%] 51 passed in 324.42s (0:05:24) pytest -q transportpce_tests/hybrid/test02_B100G_end2end.py ........................................................................ [ 66%] ..................................... [100%] 109 passed in 422.72s (0:07:02) pytest -q transportpce_tests/hybrid/test03_autonomous_reroute.py .......FF...F.FF.F..FF.....F..FF.FF.FFFF.FFFFFFF..... [100%] =================================== FAILURES =================================== ________ TransportPCEtesting.test_08_connect_xpdrc2_1_N1_to_roadmc_PP1 _________ self = def test_08_connect_xpdrc2_1_N1_to_roadmc_PP1(self): response = test_utils.transportpce_api_rpc_request( 'transportpce-networkutils', 'init-xpdr-rdm-links', {'links-input': {'xpdr-node': 'XPDR-C2', 'xpdr-num': '1', 'network-num': '1', 'rdm-node': 'ROADM-C1', 'srg-num': '1', 'termination-point-num': 'SRG1-PP1-TXRX'}}) > self.assertEqual(response['status_code'], requests.codes.ok) E AssertionError: 204 != 200 transportpce_tests/hybrid/test03_autonomous_reroute.py:807: AssertionError ________ TransportPCEtesting.test_09_connect_roadmc_PP1_to_xpdrc2_1_N1 _________ self = def test_09_connect_roadmc_PP1_to_xpdrc2_1_N1(self): response = test_utils.transportpce_api_rpc_request( 'transportpce-networkutils', 'init-rdm-xpdr-links', {'links-input': {'xpdr-node': 'XPDR-C2', 'xpdr-num': '1', 'network-num': '1', 'rdm-node': 'ROADM-C1', 'srg-num': '1', 'termination-point-num': 'SRG1-PP1-TXRX'}}) > self.assertEqual(response['status_code'], requests.codes.ok) E AssertionError: 204 != 200 transportpce_tests/hybrid/test03_autonomous_reroute.py:815: AssertionError _________________ TransportPCEtesting.test_13_get_eth_service1 _________________ self = def test_13_get_eth_service1(self): response = test_utils.get_ordm_serv_list_attr_request("services", "service1") > self.assertEqual(response['status_code'], requests.codes.ok) E AssertionError: 409 != 200 transportpce_tests/hybrid/test03_autonomous_reroute.py:860: AssertionError _________________ TransportPCEtesting.test_15_get_eth_service1 _________________ self = def test_15_get_eth_service1(self): response = test_utils.get_ordm_serv_list_attr_request("services", "service1") > self.assertEqual(response['status_code'], requests.codes.ok) E AssertionError: 409 != 200 transportpce_tests/hybrid/test03_autonomous_reroute.py:877: AssertionError _____________ TransportPCEtesting.test_16_service_reroute_service1 _____________ self = def test_16_service_reroute_service1(self): response = test_utils.transportpce_api_rpc_request( 'org-openroadm-service', 'service-reroute', { "sdnc-request-header": { "request-id": "request-1", "rpc-action": "service-reroute", "request-system-id": "appname" }, "service-name": "service1", "service-resiliency": { "resiliency": "org-openroadm-common-service-types:restorable" } }) self.assertEqual(response['status_code'], requests.codes.ok) self.assertIn('500', response['output']['configuration-response-common']['response-code']) > self.assertIn('No path available by PCE', response['output']['configuration-response-common']['response-message']) E AssertionError: 'No path available by PCE' not found in "Service 'service1' does not exist in datastore" transportpce_tests/hybrid/test03_autonomous_reroute.py:903: AssertionError _________________ TransportPCEtesting.test_18_get_eth_service1 _________________ self = def test_18_get_eth_service1(self): > self.test_13_get_eth_service1() transportpce_tests/hybrid/test03_autonomous_reroute.py:914: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ transportpce_tests/hybrid/test03_autonomous_reroute.py:860: in test_13_get_eth_service1 self.assertEqual(response['status_code'], requests.codes.ok) E AssertionError: 409 != 200 ________ TransportPCEtesting.test_21_connect_xpdrc2_3_N1_to_roadmc_PP2 _________ self = def test_21_connect_xpdrc2_3_N1_to_roadmc_PP2(self): response = test_utils.transportpce_api_rpc_request( 'transportpce-networkutils', 'init-xpdr-rdm-links', {'links-input': {'xpdr-node': 'XPDR-C2', 'xpdr-num': '3', 'network-num': '1', 'rdm-node': 'ROADM-C1', 'srg-num': '1', 'termination-point-num': 'SRG1-PP2-TXRX'}}) > self.assertEqual(response['status_code'], requests.codes.ok) E AssertionError: 204 != 200 transportpce_tests/hybrid/test03_autonomous_reroute.py:939: AssertionError ________ TransportPCEtesting.test_22_connect_roadmc_PP2_to_xpdrc2_3_N1 _________ self = def test_22_connect_roadmc_PP2_to_xpdrc2_3_N1(self): response = test_utils.transportpce_api_rpc_request( 'transportpce-networkutils', 'init-rdm-xpdr-links', {'links-input': {'xpdr-node': 'XPDR-C2', 'xpdr-num': '3', 'network-num': '1', 'rdm-node': 'ROADM-C1', 'srg-num': '1', 'termination-point-num': 'SRG1-PP2-TXRX'}}) > self.assertEqual(response['status_code'], requests.codes.ok) E AssertionError: 204 != 200 transportpce_tests/hybrid/test03_autonomous_reroute.py:948: AssertionError ______________ TransportPCEtesting.test_28_create_OTS_ROADMC_DEG2 ______________ self = def test_28_create_OTS_ROADMC_DEG2(self): response = test_utils.transportpce_api_rpc_request( 'transportpce-device-renderer', 'create-ots-oms', { 'node-id': 'ROADM-C1', 'logical-connection-point': 'DEG2-TTP-TXRX' }) self.assertEqual(response['status_code'], requests.codes.ok) > self.assertIn('Interfaces OTS-DEG2-TTP-TXRX - OMS-DEG2-TTP-TXRX successfully created on node ROADM-C1', response["output"]["result"]) E AssertionError: 'Interfaces OTS-DEG2-TTP-TXRX - OMS-DEG2-TTP-TXRX successfully created on node ROADM-C1' not found in 'ROADM-C1 is not mounted on the controller' transportpce_tests/hybrid/test03_autonomous_reroute.py:1031: AssertionError ___________ TransportPCEtesting.test_31_calculate_span_loss_base_all ___________ self = def test_31_calculate_span_loss_base_all(self): response = test_utils.transportpce_api_rpc_request( 'transportpce-olm', 'calculate-spanloss-base', { 'src-type': 'all' }) self.assertEqual(response['status_code'], requests.codes.ok) self.assertIn('Success', response["output"]["result"]) > self.assertIn({ "spanloss": "25.7", "link-id": "ROADM-C1-DEG1-DEG1-TTP-TXRXtoROADM-A1-DEG2-DEG2-TTP-TXRX" }, response["output"]["spans"]) E AssertionError: {'spanloss': '25.7', 'link-id': 'ROADM-C1-DEG1-DEG1-TTP-TXRXtoROADM-A1-DEG2-DEG2-TTP-TXRX'} not found in [{'spanloss': '23.6', 'link-id': 'ROADM-B1-DEG1-DEG1-TTP-TXRXtoROADM-A1-DEG1-DEG1-TTP-TXRX'}, {'spanloss': '23.6', 'link-id': 'ROADM-A1-DEG1-DEG1-TTP-TXRXtoROADM-B1-DEG1-DEG1-TTP-TXRX'}] transportpce_tests/hybrid/test03_autonomous_reroute.py:1064: AssertionError ____________ TransportPCEtesting.test_32_get_service_path_service_1 ____________ self = def test_32_get_service_path_service_1(self): response = test_utils.get_serv_path_list_attr("service-paths", "service1") > self.assertEqual(response['status_code'], requests.codes.ok) E AssertionError: 409 != 200 transportpce_tests/hybrid/test03_autonomous_reroute.py:1092: AssertionError _________________ TransportPCEtesting.test_34_get_eth_service2 _________________ self = def test_34_get_eth_service2(self): response = test_utils.get_ordm_serv_list_attr_request("services", "service2") > self.assertEqual(response['status_code'], requests.codes.ok) E AssertionError: 409 != 200 transportpce_tests/hybrid/test03_autonomous_reroute.py:1109: AssertionError ____________ TransportPCEtesting.test_35_get_service_path_service_2 ____________ self = def test_35_get_service_path_service_2(self): response = test_utils.get_serv_path_list_attr("service-paths", "service2") > self.assertEqual(response['status_code'], requests.codes.ok) E AssertionError: 409 != 200 transportpce_tests/hybrid/test03_autonomous_reroute.py:1120: AssertionError _________________ TransportPCEtesting.test_37_get_eth_service1 _________________ self = def test_37_get_eth_service1(self): > self.test_13_get_eth_service1() transportpce_tests/hybrid/test03_autonomous_reroute.py:1131: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ transportpce_tests/hybrid/test03_autonomous_reroute.py:860: in test_13_get_eth_service1 self.assertEqual(response['status_code'], requests.codes.ok) E AssertionError: 409 != 200 ____________ TransportPCEtesting.test_38_get_service_path_service_1 ____________ self = def test_38_get_service_path_service_1(self): response = test_utils.get_serv_path_list_attr("service-paths", "service1") > self.assertEqual(response['status_code'], requests.codes.ok) E AssertionError: 409 != 200 transportpce_tests/hybrid/test03_autonomous_reroute.py:1135: AssertionError _________________ TransportPCEtesting.test_39_get_eth_service2 _________________ self = def test_39_get_eth_service2(self): response = test_utils.get_ordm_serv_list_attr_request("services", "service2") > self.assertEqual(response['services'][0]['operational-state'], 'outOfService') E KeyError: 0 transportpce_tests/hybrid/test03_autonomous_reroute.py:1142: KeyError ____________ TransportPCEtesting.test_40_get_service_path_service_2 ____________ self = def test_40_get_service_path_service_2(self): response = test_utils.get_serv_path_list_attr("service-paths", "service2") > self.assertEqual(response['status_code'], requests.codes.ok) E AssertionError: 409 != 200 transportpce_tests/hybrid/test03_autonomous_reroute.py:1152: AssertionError _________________ TransportPCEtesting.test_42_get_eth_service1 _________________ self = def test_42_get_eth_service1(self): > self.test_13_get_eth_service1() transportpce_tests/hybrid/test03_autonomous_reroute.py:1194: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ transportpce_tests/hybrid/test03_autonomous_reroute.py:860: in test_13_get_eth_service1 self.assertEqual(response['status_code'], requests.codes.ok) E AssertionError: 409 != 200 ____________ TransportPCEtesting.test_43_get_service_path_service_1 ____________ self = def test_43_get_service_path_service_1(self): > self.test_38_get_service_path_service_1() transportpce_tests/hybrid/test03_autonomous_reroute.py:1197: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ transportpce_tests/hybrid/test03_autonomous_reroute.py:1135: in test_38_get_service_path_service_1 self.assertEqual(response['status_code'], requests.codes.ok) E AssertionError: 409 != 200 _________________ TransportPCEtesting.test_44_get_eth_service2 _________________ self = def test_44_get_eth_service2(self): > self.test_34_get_eth_service2() transportpce_tests/hybrid/test03_autonomous_reroute.py:1200: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ transportpce_tests/hybrid/test03_autonomous_reroute.py:1109: in test_34_get_eth_service2 self.assertEqual(response['status_code'], requests.codes.ok) E AssertionError: 409 != 200 ____________ TransportPCEtesting.test_45_get_service_path_service_2 ____________ self = def test_45_get_service_path_service_2(self): > self.test_35_get_service_path_service_2() transportpce_tests/hybrid/test03_autonomous_reroute.py:1203: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ transportpce_tests/hybrid/test03_autonomous_reroute.py:1120: in test_35_get_service_path_service_2 self.assertEqual(response['status_code'], requests.codes.ok) E AssertionError: 409 != 200 _______________ TransportPCEtesting.test_46_delete_eth_service2 ________________ self = def test_46_delete_eth_service2(self): self.del_serv_input_data["service-delete-req-info"]["service-name"] = "service2" response = test_utils.transportpce_api_rpc_request( 'org-openroadm-service', 'service-delete', self.del_serv_input_data) self.assertEqual(response['status_code'], requests.codes.ok) > self.assertIn('Renderer service delete in progress', response['output']['configuration-response-common']['response-message']) E AssertionError: 'Renderer service delete in progress' not found in "Service 'service2' does not exist in datastore" transportpce_tests/hybrid/test03_autonomous_reroute.py:1211: AssertionError _______________ TransportPCEtesting.test_47_delete_eth_service1 ________________ self = def test_47_delete_eth_service1(self): self.del_serv_input_data["service-delete-req-info"]["service-name"] = "service1" response = test_utils.transportpce_api_rpc_request( 'org-openroadm-service', 'service-delete', self.del_serv_input_data) self.assertEqual(response['status_code'], requests.codes.ok) > self.assertIn('Renderer service delete in progress', response['output']['configuration-response-common']['response-message']) E AssertionError: 'Renderer service delete in progress' not found in "Service 'service1' does not exist in datastore" transportpce_tests/hybrid/test03_autonomous_reroute.py:1221: AssertionError __________ TransportPCEtesting.test_48_disconnect_xponders_from_roadm __________ self = def test_48_disconnect_xponders_from_roadm(self): response = test_utils.get_ietf_network_request('openroadm-topology', 'config') self.assertEqual(response['status_code'], requests.codes.ok) links = response['network'][0]['ietf-network-topology:link'] for link in links: > if link["org-openroadm-common-network:link-type"] in ('XPONDER-OUTPUT', 'XPONDER-INPUT'): E KeyError: 'org-openroadm-common-network:link-type' transportpce_tests/hybrid/test03_autonomous_reroute.py:1230: KeyError =========================== short test summary info ============================ FAILED transportpce_tests/hybrid/test03_autonomous_reroute.py::TransportPCEtesting::test_08_connect_xpdrc2_1_N1_to_roadmc_PP1 FAILED transportpce_tests/hybrid/test03_autonomous_reroute.py::TransportPCEtesting::test_09_connect_roadmc_PP1_to_xpdrc2_1_N1 FAILED transportpce_tests/hybrid/test03_autonomous_reroute.py::TransportPCEtesting::test_13_get_eth_service1 FAILED transportpce_tests/hybrid/test03_autonomous_reroute.py::TransportPCEtesting::test_15_get_eth_service1 FAILED transportpce_tests/hybrid/test03_autonomous_reroute.py::TransportPCEtesting::test_16_service_reroute_service1 FAILED transportpce_tests/hybrid/test03_autonomous_reroute.py::TransportPCEtesting::test_18_get_eth_service1 FAILED transportpce_tests/hybrid/test03_autonomous_reroute.py::TransportPCEtesting::test_21_connect_xpdrc2_3_N1_to_roadmc_PP2 FAILED transportpce_tests/hybrid/test03_autonomous_reroute.py::TransportPCEtesting::test_22_connect_roadmc_PP2_to_xpdrc2_3_N1 FAILED transportpce_tests/hybrid/test03_autonomous_reroute.py::TransportPCEtesting::test_28_create_OTS_ROADMC_DEG2 FAILED transportpce_tests/hybrid/test03_autonomous_reroute.py::TransportPCEtesting::test_31_calculate_span_loss_base_all FAILED transportpce_tests/hybrid/test03_autonomous_reroute.py::TransportPCEtesting::test_32_get_service_path_service_1 FAILED transportpce_tests/hybrid/test03_autonomous_reroute.py::TransportPCEtesting::test_34_get_eth_service2 FAILED transportpce_tests/hybrid/test03_autonomous_reroute.py::TransportPCEtesting::test_35_get_service_path_service_2 FAILED transportpce_tests/hybrid/test03_autonomous_reroute.py::TransportPCEtesting::test_37_get_eth_service1 FAILED transportpce_tests/hybrid/test03_autonomous_reroute.py::TransportPCEtesting::test_38_get_service_path_service_1 FAILED transportpce_tests/hybrid/test03_autonomous_reroute.py::TransportPCEtesting::test_39_get_eth_service2 FAILED transportpce_tests/hybrid/test03_autonomous_reroute.py::TransportPCEtesting::test_40_get_service_path_service_2 FAILED transportpce_tests/hybrid/test03_autonomous_reroute.py::TransportPCEtesting::test_42_get_eth_service1 FAILED transportpce_tests/hybrid/test03_autonomous_reroute.py::TransportPCEtesting::test_43_get_service_path_service_1 FAILED transportpce_tests/hybrid/test03_autonomous_reroute.py::TransportPCEtesting::test_44_get_eth_service2 FAILED transportpce_tests/hybrid/test03_autonomous_reroute.py::TransportPCEtesting::test_45_get_service_path_service_2 FAILED transportpce_tests/hybrid/test03_autonomous_reroute.py::TransportPCEtesting::test_46_delete_eth_service2 FAILED transportpce_tests/hybrid/test03_autonomous_reroute.py::TransportPCEtesting::test_47_delete_eth_service1 FAILED transportpce_tests/hybrid/test03_autonomous_reroute.py::TransportPCEtesting::test_48_disconnect_xponders_from_roadm 24 failed, 29 passed in 554.07s (0:09:14) tests_hybrid: exit 1 (1301.92 seconds) /w/workspace/transportpce-tox-verify-calcium/tests> ./launch_tests.sh hybrid pid=59162 tests_hybrid: FAIL ✖ in 21 minutes 52.34 seconds buildlighty: install_deps> python -I -m pip install 'setuptools>=7.0' -r /w/workspace/transportpce-tox-verify-calcium/tests/requirements.txt -r /w/workspace/transportpce-tox-verify-calcium/tests/test-requirements.txt buildlighty: freeze> python -m pip freeze --all buildlighty: bcrypt==4.2.0,certifi==2024.8.30,cffi==1.17.0,charset-normalizer==3.3.2,cryptography==43.0.1,dict2xml==1.7.6,idna==3.8,iniconfig==2.0.0,lxml==5.3.0,netconf-client==3.1.1,packaging==24.1,paramiko==3.4.1,pip==24.2,pluggy==1.5.0,psutil==6.0.0,pycparser==2.22,PyNaCl==1.5.0,pytest==8.3.2,requests==2.32.3,setuptools==72.1.0,urllib3==2.2.2,wheel==0.44.0 buildlighty: commands[0] /w/workspace/transportpce-tox-verify-calcium/lighty> ./build.sh buildcontroller: OK (157.95=setup[24.61]+cmd[133.35] seconds) testsPCE: OK (394.45=setup[158.59]+cmd[235.86] seconds) sims: OK (34.92=setup[30.33]+cmd[4.59] seconds) build_karaf_tests121: OK (81.54=setup[30.43]+cmd[51.11] seconds) tests121: OK (2149.75=setup[5.88]+cmd[2143.87] seconds) build_karaf_tests221: OK (84.86=setup[30.37]+cmd[54.49] seconds) tests_tapi: OK (816.61=setup[10.92]+cmd[805.70] seconds) tests221: FAIL code 1 (3572.52=setup[6.43]+cmd[3566.09] seconds) build_karaf_tests71: OK (105.76=setup[39.10]+cmd[66.66] seconds) tests71: FAIL code 1 (414.47=setup[7.82]+cmd[406.65] seconds) build_karaf_tests_hybrid: OK (73.29=setup[14.19]+cmd[59.10] seconds) tests_hybrid: FAIL code 1 (1312.34=setup[10.42]+cmd[1301.92] seconds) buildlighty: OK (25.73=setup[5.82]+cmd[19.91] seconds) docs: OK (67.47=setup[64.15]+cmd[3.32] seconds) docs-linkcheck: OK (68.37=setup[64.13]+cmd[4.23] seconds) checkbashisms: OK (3.06=setup[1.61]+cmd[0.01,0.13,1.31] seconds) pre-commit: OK (111.74=setup[16.03]+cmd[0.01,0.01,42.86,52.84] seconds) pylint: OK (74.66=setup[54.71]+cmd[19.95] seconds) evaluation failed :( (6384.57 seconds)