Skip to content

Commit 8976209

Browse files
committed
Dropped PCL support for CML versions below 2.6.0
Dropped topology support for versions below 0.1.0
1 parent e2b431b commit 8976209

12 files changed

+241
-194
lines changed

.github/workflows/github-actions.yml

+1
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ jobs:
2525
pip install -U pip
2626
- name: Install dependencies
2727
run: |
28+
pip install -r requirements.txt
2829
pip install -r test-requirements.txt
2930
- name: Execute tests
3031
run: |

Makefile

+6-2
Original file line numberDiff line numberDiff line change
@@ -22,25 +22,29 @@ clean-test: ## remove test and coverage artifacts
2222
rm -f .coverage
2323
rm -fr htmlcov/
2424
rm -f 5f0d96.yaml
25+
rm -f 5f0d96_inventory.ini
26+
rm -f 5f0d96_inventory.yaml
27+
rm -f 5f0d96_testbed.yaml
2528
rm -f default_inventory.ini
2629
rm -f default_inventory.yaml
2730
rm -f default_testbed.yaml
31+
rm -f topology.yaml
2832
rm -f .virl/cached_cml_labs/*
2933
rm -f .virl/current_cml_lab
3034

3135
lint: ## check style with flake8
3236
flake8
3337

3438
coverage:
35-
PYTHONWARNINGS="ignore::DeprecationWarning" coverage run --source=virl setup.py test
39+
coverage run --source=virl -m pytest tests/v2/*
3640

3741
report: coverage
3842
coverage html
3943
coverage report
4044
open htmlcov/index.html
4145

4246
test: ## run tests quickly with the default Python
43-
python -W ignore::DeprecationWarning setup.py test
47+
pytest tests/v2/*
4448

4549
release: dist ## package and upload a release
4650
@echo "*** Uploading virlutils... ***"

README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
[![Coverage Status](https://coveralls.io/repos/github/CiscoDevNet/virlutils/badge.svg?branch=master)](https://coveralls.io/github/CiscoDevNet/virlutils?branch=master)
55
[![PyPI version](https://badge.fury.io/py/virlutils.svg)](https://badge.fury.io/py/virlutils)
66

7-
A collection of utilities for interacting with [Cisco Modeling Labs (CML)](https://developer.cisco.com/modeling-labs) v2.0+.
7+
A collection of utilities for interacting with [Cisco Modeling Labs (CML)](https://developer.cisco.com/modeling-labs) v2.6+.
88

99
## virl up / cml up
1010

requirements.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,4 @@ jinja2
44
libtmux>=0.34.0
55
requests
66
tabulate
7-
virl2-client>=2.2.1
7+
virl2-client>=2.6.0

test-requirements.txt

+3-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
coverage
22
coveralls
3+
flake8
4+
pytest
35
requests_mock
46
respx
5-
flake8
6-
setuptools
7+
setuptools

tests/v2/__init__.py

+6-6
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,7 @@ def get_alt_id(self):
103103
def get_alt_title(self):
104104
return "Other Lab"
105105

106-
def get_cml23_id(self):
106+
def get_cml24_id(self):
107107
return "88119b68-9d08-40c4-90f5-6dc533fd0254"
108108

109109
def prep_respx(self, **kwargs):
@@ -138,22 +138,22 @@ def setup_mocks(self, m):
138138
"populate_lab_tiles": MockCMLServer.get_lab_tiles,
139139
"labs/{}/topology".format(self.get_test_id()): MockCMLServer.get_topology,
140140
"labs/{}/topology".format(self.get_alt_id()): MockCMLServer.get_alt_topology,
141-
"labs/{}/topology".format(self.get_cml23_id()): MockCMLServer.get_topology_23,
141+
"labs/{}/topology".format(self.get_cml24_id()): MockCMLServer.get_topology_24,
142142
"labs/{}/lab_element_state".format(self.get_test_id()): MockCMLServer.get_lab_element_state,
143-
"labs/{}/lab_element_state".format(self.get_cml23_id()): MockCMLServer.get_lab_element_state_23,
143+
"labs/{}/lab_element_state".format(self.get_cml24_id()): MockCMLServer.get_lab_element_state_24,
144144
"system_information": MockCMLServer.get_sys_info,
145145
"labs/{}/state".format(self.get_test_id()): "STARTED",
146-
"labs/{}/state".format(self.get_cml23_id()): "STARTED",
146+
"labs/{}/state".format(self.get_cml24_id()): "STARTED",
147147
"labs/{}/state".format(self.get_alt_id()): "STOPPED",
148148
"labs/{}/check_if_converged".format(self.get_test_id()): True,
149-
"labs/{}/check_if_converged".format(self.get_cml23_id()): True,
149+
"labs/{}/check_if_converged".format(self.get_cml24_id()): True,
150150
"labs/{}/nodes/n1/check_if_converged".format(self.get_test_id()): True,
151151
"users": MockCMLServer.get_users,
152152
}
153153

154154
text_dict = {
155155
"labs/{}/download".format(self.get_test_id()): MockCMLServer.download_lab,
156-
"labs/{}/download".format(self.get_cml23_id()): MockCMLServer.download_lab_23,
156+
"labs/{}/download".format(self.get_cml24_id()): MockCMLServer.download_lab_24,
157157
"labs/{}/download".format(self.get_alt_id()): MockCMLServer.download_alt_lab,
158158
"labs/{}/pyats_testbed".format(self.get_test_id()): MockCMLServer.get_pyats_testbed,
159159
"authok": MockCMLServer.auth_ok,

tests/v2/cluster.py

+1-10
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,8 @@
1-
import unittest
2-
31
from click.testing import CliRunner
42

5-
from . import CLIENT_VERSION, BaseCMLTest
6-
from .mocks.github import MockGitHub # noqa
7-
8-
try:
9-
from unittest.mock import patch
10-
except ImportError:
11-
from mock import patch # noqa
3+
from . import BaseCMLTest
124

135

14-
@unittest.skipIf(CLIENT_VERSION < CLIENT_VERSION.__class__("2.4.0"), "supported since 2.4.0")
156
class TestCMLCluster(BaseCMLTest):
167
def setup_mocks(self, m):
178
super().setup_mocks(m)

tests/v2/console.py

+3-3
Original file line numberDiff line numberDiff line change
@@ -29,12 +29,12 @@ def test_cml_console_connect(self, call_mock):
2929
call_mock.assert_called_once_with(["ssh", "-t", "admin@localhost", "open", "/5f0d96/n1/0"])
3030

3131
@patch("virl.cli.console.commands.call", autospec=False)
32-
def test_cml_console_connect_23(self, call_mock):
32+
def test_cml_console_connect_24(self, call_mock):
3333
with self.get_context() as m:
3434
# Mock the request to return what we expect from the API.
3535
self.setup_mocks(m)
3636
virl = self.get_virl()
3737
runner = CliRunner()
38-
runner.invoke(virl, ["use", "--id", self.get_cml23_id()])
38+
runner.invoke(virl, ["use", "--id", self.get_cml24_id()])
3939
runner.invoke(virl, ["console", "rtr-1"])
40-
call_mock.assert_called_once_with(["ssh", "-t", "admin@localhost", "open", "/Mock", "Test", "2.3/rtr-1/0"])
40+
call_mock.assert_called_once_with(["ssh", "-t", "admin@localhost", "open", "/Mock", "Test", "2.4/rtr-1/0"])

0 commit comments

Comments
 (0)