Open brandomando opened 3 months ago
Since we don't have CI setup, here are the test results:
(pynautobot-py3.11) ➜ pynautobot git:(lazy_load_api_version) ✗ invoke tests
DOCKER - Running command: black --check --diff . service: pynautobot-dev
[+] Creating 1/0
✔ Network pynautobot_default Created 0.0s
All done! ✨ 🍰 ✨
43 files would be left unchanged.
DOCKER - Running command: flake8 . service: pynautobot-dev
DOCKER - Running command: yamllint . service: pynautobot-dev
DOCKER - Running command: bandit --recursive ./ --configfile .bandit.yml service: pynautobot-dev
[main] INFO profile include tests: None
[main] INFO profile exclude tests: None
[main] INFO cli include tests: None
[main] INFO cli exclude tests: None
[main] INFO using config: .bandit.yml
[main] INFO running on Python 3.8.19
Run started:2024-07-26 17:40:00.491717
Test results:
No issues identified.
Code scanned:
Total lines of code: 2332
Total lines skipped (#nosec): 0
Run metrics:
Total issues (by severity):
Undefined: 0
Low: 0
Medium: 0
High: 0
Total issues (by confidence):
Undefined: 0
Low: 0
Medium: 0
High: 0
Files skipped (0):
DOCKER - Running command: pytest -vv service: pynautobot-dev-tests
[+] Creating 3/0
✔ Container pynautobot-postgres-1 Created 0.0s
✔ Container pynautobot-redis-1 Created 0.0s
✔ Container pynautobot-nautobot-1 Created 0.0s
[+] Running 3/3
✔ Container pynautobot-postgres-1 Started 0.1s
✔ Container pynautobot-redis-1 Started 0.1s
✔ Container pynautobot-nautobot-1 Started 0.1s
===================================================================================================================================== test session starts =====================================================================================================================================
platform linux -- Python 3.8.19, pytest-8.2.2, pluggy-1.5.0 -- /usr/local/bin/python3.8
cachedir: .pytest_cache
rootdir: /source
configfile: pyproject.toml
testpaths: tests/
plugins: requests-mock-1.12.1
collected 487 items
tests/integration/test_api_version.py::TestAPIVersioning::test_invalid_api_version PASSED [ 0%]
tests/integration/test_api_version.py::TestAPIVersioning::test_tag_content_types PASSED [ 0%]
tests/integration/test_app.py::test_app_get_api_endpoints[dcim] PASSED [ 0%]
tests/integration/test_app.py::test_app_get_api_endpoints[ipam] PASSED [ 0%]
tests/integration/test_app.py::test_app_get_api_endpoints[circuits] PASSED [ 1%]
tests/integration/test_app.py::test_app_get_api_endpoints[virtualization] PASSED [ 1%]
tests/integration/test_app.py::test_app_get_api_endpoints[tenancy] PASSED [ 1%]
tests/integration/test_app.py::test_app_get_api_endpoints[extras] PASSED [ 1%]
tests/integration/test_app.py::test_app_dir[dcim] PASSED [ 1%]
tests/integration/test_app.py::test_app_dir[ipam] PASSED [ 2%]
tests/integration/test_app.py::test_app_dir[circuits] PASSED [ 2%]
tests/integration/test_app.py::test_app_dir[virtualization] PASSED [ 2%]
tests/integration/test_app.py::test_app_dir[tenancy] PASSED [ 2%]
tests/integration/test_app.py::test_app_dir[extras] PASSED [ 2%]
tests/integration/test_dcim.py::test_create_manufacturer PASSED [ 3%]
tests/integration/test_dcim.py::TestSimpleServerRackingAndConnecting::test_racking_server PASSED [ 3%]
tests/integration/test_dcim.py::TestSimpleServerRackingAndConnecting::test_string_represention PASSED [ 3%]
tests/integration/test_dcim.py::TestSimpleServerRackingAndConnecting::test_fetching_vc_success PASSED [ 3%]
tests/integration/test_extras.py::TestCustomField::test_custom_field PASSED [ 3%]
tests/integration/test_extras.py::TestCustomField::test_custom_field_choice PASSED [ 4%]
tests/integration/test_extras.py::TestCustomField::test_custom_field_choice_to_cf PASSED [ 4%]
tests/integration/test_extras.py::TestNotes::test_create_object_note PASSED [ 4%]
tests/integration/test_extras.py::TestNotes::test_get_object_note PASSED [ 4%]
tests/integration/test_extras.py::TestNotes::test_get_note_on_invalid_object PASSED [ 4%]
tests/integration/test_ipam.py::test_ip_address_nat_inside_outside_correct_objects PASSED [ 5%]
tests/integration/test_ipam.py::test_prefixes_successfully_stringify_tags PASSED [ 5%]
tests/test_api.py::ApiTestCase::test_get PASSED [ 5%]
tests/test_api.py::ApiTestCase::test_sanitize_url PASSED [ 5%]
tests/test_api.py::ApiTestCase::test_useragent_set PASSED [ 5%]
tests/test_api.py::ApiTestCase::test_verify_false PASSED [ 6%]
tests/test_api.py::ApiTestCase::test_verify_true PASSED [ 6%]
tests/test_api.py::ApiVersionTestCase::test_api_version PASSED [ 6%]
tests/test_api.py::ApiVersionTestCase::test_api_version_2 PASSED [ 6%]
tests/test_api.py::ApiVersionTestCase::test_api_version_not_found PASSED [ 6%]
tests/test_api.py::ApiStatusTestCase::test_api_status PASSED [ 7%]
tests/test_api.py::ApiLazyLoadVersionTestCase::test_lazy_load_version PASSED [ 7%]
tests/test_api.py::ApiRetryTestCase::test_api_retry PASSED [ 7%]
tests/test_api.py::ApiRetryTestCase::test_api_retry_fails PASSED [ 7%]
tests/test_app.py::AppCustomFieldsTestCase::test_custom_fields PASSED [ 8%]
tests/test_app.py::AppCustomFieldChoicesTestCase::test_custom_field_choices PASSED [ 8%]
tests/test_app.py::AppConfigTestCase::test_config PASSED [ 8%]
tests/test_app.py::PluginAppCustomChoicesTestCase::test_custom_fields PASSED [ 8%]
tests/test_app.py::PluginAppCustomChoicesTestCase::test_installed_plugins PASSED [ 8%]
tests/test_circuits.py::CircuitsTestCase::test_delete <- tests/__init__.py PASSED [ 9%]
tests/test_circuits.py::CircuitsTestCase::test_diff <- tests/__init__.py PASSED [ 9%]
tests/test_circuits.py::CircuitsTestCase::test_endpoint_update <- tests/__init__.py PASSED [ 9%]
tests/test_circuits.py::CircuitsTestCase::test_filter <- tests/__init__.py PASSED [ 9%]
tests/test_circuits.py::CircuitsTestCase::test_get <- tests/__init__.py PASSED [ 9%]
tests/test_circuits.py::CircuitsTestCase::test_get_all <- tests/__init__.py PASSED [ 10%]
tests/test_circuits.py::CircuitsTestCase::test_repr PASSED [ 10%]
tests/test_circuits.py::CircuitsTestCase::test_serialize <- tests/__init__.py PASSED [ 10%]
tests/test_circuits.py::ProviderTestCase::test_delete <- tests/__init__.py PASSED [ 10%]
tests/test_circuits.py::ProviderTestCase::test_diff <- tests/__init__.py PASSED [ 10%]
tests/test_circuits.py::ProviderTestCase::test_endpoint_update <- tests/__init__.py PASSED [ 11%]
tests/test_circuits.py::ProviderTestCase::test_filter <- tests/__init__.py PASSED [ 11%]
tests/test_circuits.py::ProviderTestCase::test_get <- tests/__init__.py PASSED [ 11%]
tests/test_circuits.py::ProviderTestCase::test_get_all <- tests/__init__.py PASSED [ 11%]
tests/test_circuits.py::ProviderTestCase::test_serialize <- tests/__init__.py PASSED [ 11%]
tests/test_circuits.py::CircuitTypeTestCase::test_delete <- tests/__init__.py PASSED [ 12%]
tests/test_circuits.py::CircuitTypeTestCase::test_diff <- tests/__init__.py PASSED [ 12%]
tests/test_circuits.py::CircuitTypeTestCase::test_endpoint_update <- tests/__init__.py PASSED [ 12%]
tests/test_circuits.py::CircuitTypeTestCase::test_filter <- tests/__init__.py PASSED [ 12%]
tests/test_circuits.py::CircuitTypeTestCase::test_get <- tests/__init__.py PASSED [ 12%]
tests/test_circuits.py::CircuitTypeTestCase::test_get_all <- tests/__init__.py PASSED [ 13%]
tests/test_circuits.py::CircuitTypeTestCase::test_serialize <- tests/__init__.py PASSED [ 13%]
tests/test_circuits.py::CircuitTerminationsTestCase::test_delete <- tests/__init__.py PASSED [ 13%]
tests/test_circuits.py::CircuitTerminationsTestCase::test_diff <- tests/__init__.py PASSED [ 13%]
tests/test_circuits.py::CircuitTerminationsTestCase::test_endpoint_update <- tests/__init__.py PASSED [ 13%]
tests/test_circuits.py::CircuitTerminationsTestCase::test_filter <- tests/__init__.py PASSED [ 14%]
tests/test_circuits.py::CircuitTerminationsTestCase::test_get <- tests/__init__.py PASSED [ 14%]
tests/test_circuits.py::CircuitTerminationsTestCase::test_get_all <- tests/__init__.py PASSED [ 14%]
tests/test_circuits.py::CircuitTerminationsTestCase::test_repr PASSED [ 14%]
tests/test_circuits.py::CircuitTerminationsTestCase::test_serialize <- tests/__init__.py PASSED [ 14%]
tests/test_dcim.py::DeviceTestCase::test_create PASSED [ 15%]
tests/test_dcim.py::DeviceTestCase::test_create_device_bulk PASSED [ 15%]
tests/test_dcim.py::DeviceTestCase::test_delete <- tests/__init__.py PASSED [ 15%]
tests/test_dcim.py::DeviceTestCase::test_diff <- tests/__init__.py PASSED [ 15%]
tests/test_dcim.py::DeviceTestCase::test_endpoint_update <- tests/__init__.py PASSED [ 16%]
tests/test_dcim.py::DeviceTestCase::test_filter <- tests/__init__.py PASSED [ 16%]
tests/test_dcim.py::DeviceTestCase::test_get PASSED [ 16%]
tests/test_dcim.py::DeviceTestCase::test_get_all <- tests/__init__.py PASSED [ 16%]
tests/test_dcim.py::DeviceTestCase::test_get_by_id PASSED [ 16%]
tests/test_dcim.py::DeviceTestCase::test_get_napalm PASSED [ 17%]
tests/test_dcim.py::DeviceTestCase::test_get_recurse PASSED [ 17%]
tests/test_dcim.py::DeviceTestCase::test_modify PASSED [ 17%]
tests/test_dcim.py::DeviceTestCase::test_multi_filter PASSED [ 17%]
tests/test_dcim.py::DeviceTestCase::test_serialize <- tests/__init__.py PASSED [ 17%]
tests/test_dcim.py::SiteTestCase::test_create PASSED [ 18%]
tests/test_dcim.py::SiteTestCase::test_custom_field_json PASSED [ 18%]
tests/test_dcim.py::SiteTestCase::test_delete <- tests/__init__.py PASSED [ 18%]
tests/test_dcim.py::SiteTestCase::test_diff <- tests/__init__.py PASSED [ 18%]
tests/test_dcim.py::SiteTestCase::test_endpoint_update <- tests/__init__.py PASSED [ 18%]
tests/test_dcim.py::SiteTestCase::test_filter <- tests/__init__.py PASSED [ 19%]
tests/test_dcim.py::SiteTestCase::test_get <- tests/__init__.py PASSED [ 19%]
tests/test_dcim.py::SiteTestCase::test_get_all <- tests/__init__.py PASSED [ 19%]
tests/test_dcim.py::SiteTestCase::test_modify_custom PASSED [ 19%]
tests/test_dcim.py::SiteTestCase::test_serialize <- tests/__init__.py PASSED [ 19%]
tests/test_dcim.py::InterfaceTestCase::test_delete <- tests/__init__.py PASSED [ 20%]
tests/test_dcim.py::InterfaceTestCase::test_diff <- tests/__init__.py PASSED [ 20%]
tests/test_dcim.py::InterfaceTestCase::test_endpoint_update <- tests/__init__.py PASSED [ 20%]
tests/test_dcim.py::InterfaceTestCase::test_filter <- tests/__init__.py PASSED [ 20%]
tests/test_dcim.py::InterfaceTestCase::test_get <- tests/__init__.py PASSED [ 20%]
tests/test_dcim.py::InterfaceTestCase::test_get_all PASSED [ 21%]
tests/test_dcim.py::InterfaceTestCase::test_modify PASSED [ 21%]
tests/test_dcim.py::InterfaceTestCase::test_serialize <- tests/__init__.py PASSED [ 21%]
tests/test_dcim.py::InterfaceTestCase::test_trace PASSED [ 21%]
tests/test_dcim.py::RackTestCase::test_delete <- tests/__init__.py PASSED [ 21%]
tests/test_dcim.py::RackTestCase::test_diff <- tests/__init__.py PASSED [ 22%]
tests/test_dcim.py::RackTestCase::test_endpoint_update <- tests/__init__.py PASSED [ 22%]
tests/test_dcim.py::RackTestCase::test_filter <- tests/__init__.py PASSED [ 22%]
tests/test_dcim.py::RackTestCase::test_get <- tests/__init__.py PASSED [ 22%]
tests/test_dcim.py::RackTestCase::test_get_all <- tests/__init__.py PASSED [ 22%]
tests/test_dcim.py::RackTestCase::test_get_elevation PASSED [ 23%]
tests/test_dcim.py::RackTestCase::test_get_units PASSED [ 23%]
tests/test_dcim.py::RackTestCase::test_serialize <- tests/__init__.py PASSED [ 23%]
tests/test_dcim.py::RackRoleTestCase::test_delete <- tests/__init__.py PASSED [ 23%]
tests/test_dcim.py::RackRoleTestCase::test_diff <- tests/__init__.py PASSED [ 24%]
tests/test_dcim.py::RackRoleTestCase::test_endpoint_update <- tests/__init__.py PASSED [ 24%]
tests/test_dcim.py::RackRoleTestCase::test_filter <- tests/__init__.py PASSED [ 24%]
tests/test_dcim.py::RackRoleTestCase::test_get <- tests/__init__.py PASSED [ 24%]
tests/test_dcim.py::RackRoleTestCase::test_get_all <- tests/__init__.py PASSED [ 24%]
tests/test_dcim.py::RackRoleTestCase::test_serialize <- tests/__init__.py PASSED [ 25%]
tests/test_dcim.py::RegionTestCase::test_delete <- tests/__init__.py PASSED [ 25%]
tests/test_dcim.py::RegionTestCase::test_diff <- tests/__init__.py PASSED [ 25%]
tests/test_dcim.py::RegionTestCase::test_endpoint_update <- tests/__init__.py PASSED [ 25%]
tests/test_dcim.py::RegionTestCase::test_filter <- tests/__init__.py PASSED [ 25%]
tests/test_dcim.py::RegionTestCase::test_get <- tests/__init__.py PASSED [ 26%]
tests/test_dcim.py::RegionTestCase::test_get_all <- tests/__init__.py PASSED [ 26%]
tests/test_dcim.py::RegionTestCase::test_serialize <- tests/__init__.py PASSED [ 26%]
tests/test_dcim.py::RackGroupsTestCase::test_delete <- tests/__init__.py PASSED [ 26%]
tests/test_dcim.py::RackGroupsTestCase::test_diff <- tests/__init__.py PASSED [ 26%]
tests/test_dcim.py::RackGroupsTestCase::test_endpoint_update <- tests/__init__.py PASSED [ 27%]
tests/test_dcim.py::RackGroupsTestCase::test_filter <- tests/__init__.py PASSED [ 27%]
tests/test_dcim.py::RackGroupsTestCase::test_get <- tests/__init__.py PASSED [ 27%]
tests/test_dcim.py::RackGroupsTestCase::test_get_all <- tests/__init__.py PASSED [ 27%]
tests/test_dcim.py::RackGroupsTestCase::test_serialize <- tests/__init__.py PASSED [ 27%]
tests/test_dcim.py::RackReservationsTestCase::test_delete <- tests/__init__.py PASSED [ 28%]
tests/test_dcim.py::RackReservationsTestCase::test_diff <- tests/__init__.py PASSED [ 28%]
tests/test_dcim.py::RackReservationsTestCase::test_endpoint_update <- tests/__init__.py PASSED [ 28%]
tests/test_dcim.py::RackReservationsTestCase::test_filter <- tests/__init__.py PASSED [ 28%]
tests/test_dcim.py::RackReservationsTestCase::test_get <- tests/__init__.py PASSED [ 28%]
tests/test_dcim.py::RackReservationsTestCase::test_get_all <- tests/__init__.py PASSED [ 29%]
tests/test_dcim.py::RackReservationsTestCase::test_serialize <- tests/__init__.py PASSED [ 29%]
tests/test_dcim.py::ManufacturersTestCase::test_delete <- tests/__init__.py PASSED [ 29%]
tests/test_dcim.py::ManufacturersTestCase::test_diff <- tests/__init__.py PASSED [ 29%]
tests/test_dcim.py::ManufacturersTestCase::test_endpoint_update <- tests/__init__.py PASSED [ 29%]
tests/test_dcim.py::ManufacturersTestCase::test_filter <- tests/__init__.py PASSED [ 30%]
tests/test_dcim.py::ManufacturersTestCase::test_get <- tests/__init__.py PASSED [ 30%]
tests/test_dcim.py::ManufacturersTestCase::test_get_all <- tests/__init__.py PASSED [ 30%]
tests/test_dcim.py::ManufacturersTestCase::test_serialize <- tests/__init__.py PASSED [ 30%]
tests/test_dcim.py::DeviceTypeTestCase::test_delete <- tests/__init__.py PASSED [ 31%]
tests/test_dcim.py::DeviceTypeTestCase::test_diff <- tests/__init__.py PASSED [ 31%]
tests/test_dcim.py::DeviceTypeTestCase::test_endpoint_update <- tests/__init__.py PASSED [ 31%]
tests/test_dcim.py::DeviceTypeTestCase::test_filter <- tests/__init__.py PASSED [ 31%]
tests/test_dcim.py::DeviceTypeTestCase::test_get <- tests/__init__.py PASSED [ 31%]
tests/test_dcim.py::DeviceTypeTestCase::test_get_all <- tests/__init__.py PASSED [ 32%]
tests/test_dcim.py::DeviceTypeTestCase::test_serialize <- tests/__init__.py PASSED [ 32%]
tests/test_dcim.py::ConsolePortTemplateTestCase::test_delete <- tests/__init__.py PASSED [ 32%]
tests/test_dcim.py::ConsolePortTemplateTestCase::test_diff <- tests/__init__.py PASSED [ 32%]
tests/test_dcim.py::ConsolePortTemplateTestCase::test_endpoint_update <- tests/__init__.py PASSED [ 32%]
tests/test_dcim.py::ConsolePortTemplateTestCase::test_filter <- tests/__init__.py PASSED [ 33%]
tests/test_dcim.py::ConsolePortTemplateTestCase::test_get <- tests/__init__.py PASSED [ 33%]
tests/test_dcim.py::ConsolePortTemplateTestCase::test_get_all <- tests/__init__.py PASSED [ 33%]
tests/test_dcim.py::ConsolePortTemplateTestCase::test_serialize <- tests/__init__.py PASSED [ 33%]
tests/test_dcim.py::ConsoleServerPortTemplateTestCase::test_delete <- tests/__init__.py PASSED [ 33%]
tests/test_dcim.py::ConsoleServerPortTemplateTestCase::test_diff <- tests/__init__.py PASSED [ 34%]
tests/test_dcim.py::ConsoleServerPortTemplateTestCase::test_endpoint_update <- tests/__init__.py PASSED [ 34%]
tests/test_dcim.py::ConsoleServerPortTemplateTestCase::test_filter <- tests/__init__.py PASSED [ 34%]
tests/test_dcim.py::ConsoleServerPortTemplateTestCase::test_get <- tests/__init__.py PASSED [ 34%]
tests/test_dcim.py::ConsoleServerPortTemplateTestCase::test_get_all <- tests/__init__.py PASSED [ 34%]
tests/test_dcim.py::ConsoleServerPortTemplateTestCase::test_serialize <- tests/__init__.py PASSED [ 35%]
tests/test_dcim.py::PowerPortTemplateTestCase::test_delete <- tests/__init__.py PASSED [ 35%]
tests/test_dcim.py::PowerPortTemplateTestCase::test_diff <- tests/__init__.py PASSED [ 35%]
tests/test_dcim.py::PowerPortTemplateTestCase::test_endpoint_update <- tests/__init__.py PASSED [ 35%]
tests/test_dcim.py::PowerPortTemplateTestCase::test_filter <- tests/__init__.py PASSED [ 35%]
tests/test_dcim.py::PowerPortTemplateTestCase::test_get <- tests/__init__.py PASSED [ 36%]
tests/test_dcim.py::PowerPortTemplateTestCase::test_get_all <- tests/__init__.py PASSED [ 36%]
tests/test_dcim.py::PowerPortTemplateTestCase::test_serialize <- tests/__init__.py PASSED [ 36%]
tests/test_dcim.py::PowerOutletTemplateTestCase::test_delete <- tests/__init__.py PASSED [ 36%]
tests/test_dcim.py::PowerOutletTemplateTestCase::test_diff <- tests/__init__.py PASSED [ 36%]
tests/test_dcim.py::PowerOutletTemplateTestCase::test_endpoint_update <- tests/__init__.py PASSED [ 37%]
tests/test_dcim.py::PowerOutletTemplateTestCase::test_filter <- tests/__init__.py PASSED [ 37%]
tests/test_dcim.py::PowerOutletTemplateTestCase::test_get <- tests/__init__.py PASSED [ 37%]
tests/test_dcim.py::PowerOutletTemplateTestCase::test_get_all <- tests/__init__.py PASSED [ 37%]
tests/test_dcim.py::PowerOutletTemplateTestCase::test_serialize <- tests/__init__.py PASSED [ 37%]
tests/test_dcim.py::InterfaceTemplateTestCase::test_delete <- tests/__init__.py PASSED [ 38%]
tests/test_dcim.py::InterfaceTemplateTestCase::test_diff <- tests/__init__.py PASSED [ 38%]
tests/test_dcim.py::InterfaceTemplateTestCase::test_endpoint_update <- tests/__init__.py PASSED [ 38%]
tests/test_dcim.py::InterfaceTemplateTestCase::test_filter <- tests/__init__.py PASSED [ 38%]
tests/test_dcim.py::InterfaceTemplateTestCase::test_get <- tests/__init__.py PASSED [ 39%]
tests/test_dcim.py::InterfaceTemplateTestCase::test_get_all <- tests/__init__.py PASSED [ 39%]
tests/test_dcim.py::InterfaceTemplateTestCase::test_serialize <- tests/__init__.py PASSED [ 39%]
tests/test_dcim.py::DeviceBayTemplateTestCase::test_delete <- tests/__init__.py PASSED [ 39%]
tests/test_dcim.py::DeviceBayTemplateTestCase::test_diff <- tests/__init__.py PASSED [ 39%]
tests/test_dcim.py::DeviceBayTemplateTestCase::test_endpoint_update <- tests/__init__.py PASSED [ 40%]
tests/test_dcim.py::DeviceBayTemplateTestCase::test_filter <- tests/__init__.py PASSED [ 40%]
tests/test_dcim.py::DeviceBayTemplateTestCase::test_get <- tests/__init__.py PASSED [ 40%]
tests/test_dcim.py::DeviceBayTemplateTestCase::test_get_all <- tests/__init__.py PASSED [ 40%]
tests/test_dcim.py::DeviceBayTemplateTestCase::test_serialize <- tests/__init__.py PASSED [ 40%]
tests/test_dcim.py::DeviceRolesTestCase::test_delete <- tests/__init__.py PASSED [ 41%]
tests/test_dcim.py::DeviceRolesTestCase::test_diff <- tests/__init__.py PASSED [ 41%]
tests/test_dcim.py::DeviceRolesTestCase::test_endpoint_update <- tests/__init__.py PASSED [ 41%]
tests/test_dcim.py::DeviceRolesTestCase::test_filter <- tests/__init__.py PASSED [ 41%]
tests/test_dcim.py::DeviceRolesTestCase::test_get <- tests/__init__.py PASSED [ 41%]
tests/test_dcim.py::DeviceRolesTestCase::test_get_all <- tests/__init__.py PASSED [ 42%]
tests/test_dcim.py::DeviceRolesTestCase::test_serialize <- tests/__init__.py PASSED [ 42%]
tests/test_dcim.py::PlatformsTestCase::test_delete <- tests/__init__.py PASSED [ 42%]
tests/test_dcim.py::PlatformsTestCase::test_diff <- tests/__init__.py PASSED [ 42%]
tests/test_dcim.py::PlatformsTestCase::test_endpoint_update <- tests/__init__.py PASSED [ 42%]
tests/test_dcim.py::PlatformsTestCase::test_filter <- tests/__init__.py PASSED [ 43%]
tests/test_dcim.py::PlatformsTestCase::test_get <- tests/__init__.py PASSED [ 43%]
tests/test_dcim.py::PlatformsTestCase::test_get_all <- tests/__init__.py PASSED [ 43%]
tests/test_dcim.py::PlatformsTestCase::test_serialize <- tests/__init__.py PASSED [ 43%]
tests/test_dcim.py::ConsolePortsTestCase::test_delete <- tests/__init__.py PASSED [ 43%]
tests/test_dcim.py::ConsolePortsTestCase::test_diff <- tests/__init__.py PASSED [ 44%]
tests/test_dcim.py::ConsolePortsTestCase::test_endpoint_update <- tests/__init__.py PASSED [ 44%]
tests/test_dcim.py::ConsolePortsTestCase::test_filter <- tests/__init__.py PASSED [ 44%]
tests/test_dcim.py::ConsolePortsTestCase::test_get <- tests/__init__.py PASSED [ 44%]
tests/test_dcim.py::ConsolePortsTestCase::test_get_all <- tests/__init__.py PASSED [ 44%]
tests/test_dcim.py::ConsolePortsTestCase::test_serialize <- tests/__init__.py PASSED [ 45%]
tests/test_dcim.py::ConsoleServerPortsTestCase::test_delete <- tests/__init__.py PASSED [ 45%]
tests/test_dcim.py::ConsoleServerPortsTestCase::test_diff <- tests/__init__.py PASSED [ 45%]
tests/test_dcim.py::ConsoleServerPortsTestCase::test_endpoint_update <- tests/__init__.py PASSED [ 45%]
tests/test_dcim.py::ConsoleServerPortsTestCase::test_filter <- tests/__init__.py PASSED [ 45%]
tests/test_dcim.py::ConsoleServerPortsTestCase::test_get <- tests/__init__.py PASSED [ 46%]
tests/test_dcim.py::ConsoleServerPortsTestCase::test_get_all <- tests/__init__.py PASSED [ 46%]
tests/test_dcim.py::ConsoleServerPortsTestCase::test_serialize <- tests/__init__.py PASSED [ 46%]
tests/test_dcim.py::PowerPortsTestCase::test_delete <- tests/__init__.py PASSED [ 46%]
tests/test_dcim.py::PowerPortsTestCase::test_diff <- tests/__init__.py PASSED [ 47%]
tests/test_dcim.py::PowerPortsTestCase::test_endpoint_update <- tests/__init__.py PASSED [ 47%]
tests/test_dcim.py::PowerPortsTestCase::test_filter <- tests/__init__.py PASSED [ 47%]
tests/test_dcim.py::PowerPortsTestCase::test_get <- tests/__init__.py PASSED [ 47%]
tests/test_dcim.py::PowerPortsTestCase::test_get_all <- tests/__init__.py PASSED [ 47%]
tests/test_dcim.py::PowerPortsTestCase::test_serialize <- tests/__init__.py PASSED [ 48%]
tests/test_dcim.py::PowerOutletsTestCase::test_delete <- tests/__init__.py PASSED [ 48%]
tests/test_dcim.py::PowerOutletsTestCase::test_diff <- tests/__init__.py PASSED [ 48%]
tests/test_dcim.py::PowerOutletsTestCase::test_endpoint_update <- tests/__init__.py PASSED [ 48%]
tests/test_dcim.py::PowerOutletsTestCase::test_filter <- tests/__init__.py PASSED [ 48%]
tests/test_dcim.py::PowerOutletsTestCase::test_get <- tests/__init__.py PASSED [ 49%]
tests/test_dcim.py::PowerOutletsTestCase::test_get_all <- tests/__init__.py PASSED [ 49%]
tests/test_dcim.py::PowerOutletsTestCase::test_serialize <- tests/__init__.py PASSED [ 49%]
tests/test_dcim.py::DeviceBaysTestCase::test_delete <- tests/__init__.py PASSED [ 49%]
tests/test_dcim.py::DeviceBaysTestCase::test_diff <- tests/__init__.py PASSED [ 49%]
tests/test_dcim.py::DeviceBaysTestCase::test_endpoint_update <- tests/__init__.py PASSED [ 50%]
tests/test_dcim.py::DeviceBaysTestCase::test_filter <- tests/__init__.py PASSED [ 50%]
tests/test_dcim.py::DeviceBaysTestCase::test_get <- tests/__init__.py PASSED [ 50%]
tests/test_dcim.py::DeviceBaysTestCase::test_get_all <- tests/__init__.py PASSED [ 50%]
tests/test_dcim.py::DeviceBaysTestCase::test_serialize <- tests/__init__.py PASSED [ 50%]
tests/test_dcim.py::InterfaceConnectionsTestCase::test_delete <- tests/__init__.py PASSED [ 51%]
tests/test_dcim.py::InterfaceConnectionsTestCase::test_diff <- tests/__init__.py PASSED [ 51%]
tests/test_dcim.py::InterfaceConnectionsTestCase::test_endpoint_update <- tests/__init__.py PASSED [ 51%]
tests/test_dcim.py::InterfaceConnectionsTestCase::test_filter <- tests/__init__.py PASSED [ 51%]
tests/test_dcim.py::InterfaceConnectionsTestCase::test_get <- tests/__init__.py PASSED [ 51%]
tests/test_dcim.py::InterfaceConnectionsTestCase::test_get_all <- tests/__init__.py PASSED [ 52%]
tests/test_dcim.py::InterfaceConnectionsTestCase::test_serialize <- tests/__init__.py PASSED [ 52%]
tests/test_dcim.py::VirtualChassisTestCase::test_delete <- tests/__init__.py PASSED [ 52%]
tests/test_dcim.py::VirtualChassisTestCase::test_diff <- tests/__init__.py PASSED [ 52%]
tests/test_dcim.py::VirtualChassisTestCase::test_endpoint_update <- tests/__init__.py PASSED [ 52%]
tests/test_dcim.py::VirtualChassisTestCase::test_filter <- tests/__init__.py PASSED [ 53%]
tests/test_dcim.py::VirtualChassisTestCase::test_get <- tests/__init__.py PASSED [ 53%]
tests/test_dcim.py::VirtualChassisTestCase::test_get_all <- tests/__init__.py PASSED [ 53%]
tests/test_dcim.py::VirtualChassisTestCase::test_serialize <- tests/__init__.py PASSED [ 53%]
tests/test_dcim.py::Choices::test_get PASSED [ 54%]
tests/test_dcim.py::CablesTestCase::test_delete <- tests/__init__.py PASSED [ 54%]
tests/test_dcim.py::CablesTestCase::test_diff <- tests/__init__.py PASSED [ 54%]
tests/test_dcim.py::CablesTestCase::test_endpoint_update <- tests/__init__.py PASSED [ 54%]
tests/test_dcim.py::CablesTestCase::test_filter <- tests/__init__.py PASSED [ 54%]
tests/test_dcim.py::CablesTestCase::test_get <- tests/__init__.py PASSED [ 55%]
tests/test_dcim.py::CablesTestCase::test_get_all <- tests/__init__.py PASSED [ 55%]
tests/test_dcim.py::CablesTestCase::test_get_circuit PASSED [ 55%]
tests/test_dcim.py::CablesTestCase::test_serialize <- tests/__init__.py PASSED [ 55%]
tests/test_extras.py::DynamicGroupTestCase::test_delete <- tests/__init__.py PASSED [ 55%]
tests/test_extras.py::DynamicGroupTestCase::test_diff <- tests/__init__.py PASSED [ 56%]
tests/test_extras.py::DynamicGroupTestCase::test_endpoint_update <- tests/__init__.py PASSED [ 56%]
tests/test_extras.py::DynamicGroupTestCase::test_filter <- tests/__init__.py PASSED [ 56%]
tests/test_extras.py::DynamicGroupTestCase::test_get <- tests/__init__.py PASSED [ 56%]
tests/test_extras.py::DynamicGroupTestCase::test_get_all <- tests/__init__.py PASSED [ 56%]
tests/test_extras.py::DynamicGroupTestCase::test_get_members PASSED [ 57%]
tests/test_extras.py::DynamicGroupTestCase::test_serialize <- tests/__init__.py PASSED [ 57%]
tests/test_graphql.py::test_setup PASSED [ 57%]
tests/test_graphql.py::test_get_basic_string PASSED [ 57%]
tests/test_graphql.py::test_get_string_with_id PASSED [ 57%]
tests/test_graphql.py::test_get_invalid_query_data PASSED [ 58%]
tests/test_graphql.py::test_get_id_no_result PASSED [ 58%]
tests/test_graphql.py::test_get_string_with_variables PASSED [ 58%]
tests/test_graphql.py::test_get_string_with_incorrect_variables_datatype PASSED [ 58%]
tests/test_graphql.py::test_get_string_with_variables_no_result PASSED [ 58%]
tests/test_graphql.py::test_get_invalid_query_string PASSED [ 59%]
tests/test_graphql.py::test_get_multiple_invalid_query_string PASSED [ 59%]
tests/test_ipam.py::PrefixTestCase::test_create_available_ips PASSED [ 59%]
tests/test_ipam.py::PrefixTestCase::test_create_available_prefixes PASSED [ 59%]
tests/test_ipam.py::PrefixTestCase::test_delete <- tests/__init__.py PASSED [ 59%]
tests/test_ipam.py::PrefixTestCase::test_diff <- tests/__init__.py PASSED [ 60%]
tests/test_ipam.py::PrefixTestCase::test_endpoint_update <- tests/__init__.py PASSED [ 60%]
tests/test_ipam.py::PrefixTestCase::test_filter <- tests/__init__.py PASSED [ 60%]
tests/test_ipam.py::PrefixTestCase::test_get <- tests/__init__.py PASSED [ 60%]
tests/test_ipam.py::PrefixTestCase::test_get_all <- tests/__init__.py PASSED [ 60%]
tests/test_ipam.py::PrefixTestCase::test_get_available_ips PASSED [ 61%]
tests/test_ipam.py::PrefixTestCase::test_get_available_prefixes PASSED [ 61%]
tests/test_ipam.py::PrefixTestCase::test_idempotence PASSED [ 61%]
tests/test_ipam.py::PrefixTestCase::test_modify PASSED [ 61%]
tests/test_ipam.py::PrefixTestCase::test_namespace_in_prefix PASSED [ 62%]
tests/test_ipam.py::PrefixTestCase::test_serialize <- tests/__init__.py PASSED [ 62%]
tests/test_ipam.py::IPAddressTestCase::test_delete <- tests/__init__.py PASSED [ 62%]
tests/test_ipam.py::IPAddressTestCase::test_diff <- tests/__init__.py PASSED [ 62%]
tests/test_ipam.py::IPAddressTestCase::test_endpoint_update <- tests/__init__.py PASSED [ 62%]
tests/test_ipam.py::IPAddressTestCase::test_filter <- tests/__init__.py PASSED [ 63%]
tests/test_ipam.py::IPAddressTestCase::test_get <- tests/__init__.py PASSED [ 63%]
tests/test_ipam.py::IPAddressTestCase::test_get_all <- tests/__init__.py PASSED [ 63%]
tests/test_ipam.py::IPAddressTestCase::test_modify PASSED [ 63%]
tests/test_ipam.py::IPAddressTestCase::test_serialize <- tests/__init__.py PASSED [ 63%]
tests/test_ipam.py::RoleTestCase::test_delete <- tests/__init__.py PASSED [ 64%]
tests/test_ipam.py::RoleTestCase::test_diff <- tests/__init__.py PASSED [ 64%]
tests/test_ipam.py::RoleTestCase::test_endpoint_update <- tests/__init__.py PASSED [ 64%]
tests/test_ipam.py::RoleTestCase::test_filter <- tests/__init__.py PASSED [ 64%]
tests/test_ipam.py::RoleTestCase::test_get <- tests/__init__.py PASSED [ 64%]
tests/test_ipam.py::RoleTestCase::test_get_all <- tests/__init__.py PASSED [ 65%]
tests/test_ipam.py::RoleTestCase::test_serialize <- tests/__init__.py PASSED [ 65%]
tests/test_ipam.py::RIRTestCase::test_delete <- tests/__init__.py PASSED [ 65%]
tests/test_ipam.py::RIRTestCase::test_diff <- tests/__init__.py PASSED [ 65%]
tests/test_ipam.py::RIRTestCase::test_endpoint_update <- tests/__init__.py PASSED [ 65%]
tests/test_ipam.py::RIRTestCase::test_filter <- tests/__init__.py PASSED [ 66%]
tests/test_ipam.py::RIRTestCase::test_get <- tests/__init__.py PASSED [ 66%]
tests/test_ipam.py::RIRTestCase::test_get_all <- tests/__init__.py PASSED [ 66%]
tests/test_ipam.py::RIRTestCase::test_serialize <- tests/__init__.py PASSED [ 66%]
tests/test_ipam.py::AggregatesTestCase::test_delete <- tests/__init__.py PASSED [ 66%]
tests/test_ipam.py::AggregatesTestCase::test_diff <- tests/__init__.py PASSED [ 67%]
tests/test_ipam.py::AggregatesTestCase::test_endpoint_update <- tests/__init__.py PASSED [ 67%]
tests/test_ipam.py::AggregatesTestCase::test_filter <- tests/__init__.py PASSED [ 67%]
tests/test_ipam.py::AggregatesTestCase::test_get <- tests/__init__.py PASSED [ 67%]
tests/test_ipam.py::AggregatesTestCase::test_get_aggregate_stringify PASSED [ 67%]
tests/test_ipam.py::AggregatesTestCase::test_get_all <- tests/__init__.py PASSED [ 68%]
tests/test_ipam.py::AggregatesTestCase::test_serialize <- tests/__init__.py PASSED [ 68%]
tests/test_ipam.py::VlanTestCase::test_delete <- tests/__init__.py PASSED [ 68%]
tests/test_ipam.py::VlanTestCase::test_diff <- tests/__init__.py PASSED [ 68%]
tests/test_ipam.py::VlanTestCase::test_endpoint_update <- tests/__init__.py PASSED [ 68%]
tests/test_ipam.py::VlanTestCase::test_filter <- tests/__init__.py PASSED [ 69%]
tests/test_ipam.py::VlanTestCase::test_get <- tests/__init__.py PASSED [ 69%]
tests/test_ipam.py::VlanTestCase::test_get_all <- tests/__init__.py PASSED [ 69%]
tests/test_ipam.py::VlanTestCase::test_serialize <- tests/__init__.py PASSED [ 69%]
tests/test_ipam.py::VlanTestCase::test_vlan_in_interface PASSED [ 70%]
tests/test_ipam.py::VlanGroupsTestCase::test_delete <- tests/__init__.py PASSED [ 70%]
tests/test_ipam.py::VlanGroupsTestCase::test_diff <- tests/__init__.py PASSED [ 70%]
tests/test_ipam.py::VlanGroupsTestCase::test_endpoint_update <- tests/__init__.py PASSED [ 70%]
tests/test_ipam.py::VlanGroupsTestCase::test_filter <- tests/__init__.py PASSED [ 70%]
tests/test_ipam.py::VlanGroupsTestCase::test_get <- tests/__init__.py PASSED [ 71%]
tests/test_ipam.py::VlanGroupsTestCase::test_get_all <- tests/__init__.py PASSED [ 71%]
tests/test_ipam.py::VlanGroupsTestCase::test_serialize <- tests/__init__.py PASSED [ 71%]
tests/test_ipam.py::VRFTestCase::test_delete <- tests/__init__.py PASSED [ 71%]
tests/test_ipam.py::VRFTestCase::test_diff <- tests/__init__.py PASSED [ 71%]
tests/test_ipam.py::VRFTestCase::test_endpoint_update <- tests/__init__.py PASSED [ 72%]
tests/test_ipam.py::VRFTestCase::test_filter <- tests/__init__.py PASSED [ 72%]
tests/test_ipam.py::VRFTestCase::test_get <- tests/__init__.py PASSED [ 72%]
tests/test_ipam.py::VRFTestCase::test_get_all <- tests/__init__.py PASSED [ 72%]
tests/test_ipam.py::VRFTestCase::test_namespace_in_vrf PASSED [ 72%]
tests/test_ipam.py::VRFTestCase::test_serialize <- tests/__init__.py PASSED [ 73%]
tests/test_ipam.py::NameSpaceTestCase::test_delete <- tests/__init__.py PASSED [ 73%]
tests/test_ipam.py::NameSpaceTestCase::test_diff <- tests/__init__.py PASSED [ 73%]
tests/test_ipam.py::NameSpaceTestCase::test_endpoint_update <- tests/__init__.py PASSED [ 73%]
tests/test_ipam.py::NameSpaceTestCase::test_filter <- tests/__init__.py PASSED [ 73%]
tests/test_ipam.py::NameSpaceTestCase::test_get <- tests/__init__.py PASSED [ 74%]
tests/test_ipam.py::NameSpaceTestCase::test_get_all <- tests/__init__.py PASSED [ 74%]
tests/test_ipam.py::NameSpaceTestCase::test_serialize <- tests/__init__.py PASSED [ 74%]
tests/test_tenancy.py::TenantsTestCase::test_delete <- tests/__init__.py PASSED [ 74%]
tests/test_tenancy.py::TenantsTestCase::test_diff <- tests/__init__.py PASSED [ 74%]
tests/test_tenancy.py::TenantsTestCase::test_endpoint_update <- tests/__init__.py PASSED [ 75%]
tests/test_tenancy.py::TenantsTestCase::test_filter <- tests/__init__.py PASSED [ 75%]
tests/test_tenancy.py::TenantsTestCase::test_get <- tests/__init__.py PASSED [ 75%]
tests/test_tenancy.py::TenantsTestCase::test_get_all <- tests/__init__.py PASSED [ 75%]
tests/test_tenancy.py::TenantsTestCase::test_serialize <- tests/__init__.py PASSED [ 75%]
tests/test_tenancy.py::TenantGroupsTestCase::test_delete <- tests/__init__.py PASSED [ 76%]
tests/test_tenancy.py::TenantGroupsTestCase::test_diff <- tests/__init__.py PASSED [ 76%]
tests/test_tenancy.py::TenantGroupsTestCase::test_endpoint_update <- tests/__init__.py PASSED [ 76%]
tests/test_tenancy.py::TenantGroupsTestCase::test_filter <- tests/__init__.py PASSED [ 76%]
tests/test_tenancy.py::TenantGroupsTestCase::test_get <- tests/__init__.py PASSED [ 77%]
tests/test_tenancy.py::TenantGroupsTestCase::test_get_all <- tests/__init__.py PASSED [ 77%]
tests/test_tenancy.py::TenantGroupsTestCase::test_serialize <- tests/__init__.py PASSED [ 77%]
tests/test_users.py::UsersTestCase::test_delete <- tests/__init__.py PASSED [ 77%]
tests/test_users.py::UsersTestCase::test_diff <- tests/__init__.py PASSED [ 77%]
tests/test_users.py::UsersTestCase::test_endpoint_update <- tests/__init__.py PASSED [ 78%]
tests/test_users.py::UsersTestCase::test_filter <- tests/__init__.py PASSED [ 78%]
tests/test_users.py::UsersTestCase::test_get <- tests/__init__.py PASSED [ 78%]
tests/test_users.py::UsersTestCase::test_get_all <- tests/__init__.py PASSED [ 78%]
tests/test_users.py::UsersTestCase::test_repr PASSED [ 78%]
tests/test_users.py::UsersTestCase::test_serialize <- tests/__init__.py PASSED [ 79%]
tests/test_users.py::GroupsTestCase::test_delete <- tests/__init__.py PASSED [ 79%]
tests/test_users.py::GroupsTestCase::test_diff <- tests/__init__.py PASSED [ 79%]
tests/test_users.py::GroupsTestCase::test_endpoint_update <- tests/__init__.py PASSED [ 79%]
tests/test_users.py::GroupsTestCase::test_filter <- tests/__init__.py PASSED [ 79%]
tests/test_users.py::GroupsTestCase::test_get <- tests/__init__.py PASSED [ 80%]
tests/test_users.py::GroupsTestCase::test_get_all <- tests/__init__.py PASSED [ 80%]
tests/test_users.py::GroupsTestCase::test_serialize <- tests/__init__.py PASSED [ 80%]
tests/test_users.py::PermissionsTestCase::test_delete <- tests/__init__.py PASSED [ 80%]
tests/test_users.py::PermissionsTestCase::test_diff <- tests/__init__.py PASSED [ 80%]
tests/test_users.py::PermissionsTestCase::test_endpoint_update <- tests/__init__.py PASSED [ 81%]
tests/test_users.py::PermissionsTestCase::test_filter <- tests/__init__.py PASSED [ 81%]
tests/test_users.py::PermissionsTestCase::test_get <- tests/__init__.py PASSED [ 81%]
tests/test_users.py::PermissionsTestCase::test_get_all <- tests/__init__.py PASSED [ 81%]
tests/test_users.py::PermissionsTestCase::test_serialize <- tests/__init__.py PASSED [ 81%]
tests/test_virtualization.py::ClusterTypesTestCase::test_delete <- tests/__init__.py PASSED [ 82%]
tests/test_virtualization.py::ClusterTypesTestCase::test_diff <- tests/__init__.py PASSED [ 82%]
tests/test_virtualization.py::ClusterTypesTestCase::test_endpoint_update <- tests/__init__.py PASSED [ 82%]
tests/test_virtualization.py::ClusterTypesTestCase::test_filter <- tests/__init__.py PASSED [ 82%]
tests/test_virtualization.py::ClusterTypesTestCase::test_get <- tests/__init__.py PASSED [ 82%]
tests/test_virtualization.py::ClusterTypesTestCase::test_get_all <- tests/__init__.py PASSED [ 83%]
tests/test_virtualization.py::ClusterTypesTestCase::test_serialize <- tests/__init__.py PASSED [ 83%]
tests/test_virtualization.py::ClusterGroupsTestCase::test_delete <- tests/__init__.py PASSED [ 83%]
tests/test_virtualization.py::ClusterGroupsTestCase::test_diff <- tests/__init__.py PASSED [ 83%]
tests/test_virtualization.py::ClusterGroupsTestCase::test_endpoint_update <- tests/__init__.py PASSED [ 83%]
tests/test_virtualization.py::ClusterGroupsTestCase::test_filter <- tests/__init__.py PASSED [ 84%]
tests/test_virtualization.py::ClusterGroupsTestCase::test_get <- tests/__init__.py PASSED [ 84%]
tests/test_virtualization.py::ClusterGroupsTestCase::test_get_all <- tests/__init__.py PASSED [ 84%]
tests/test_virtualization.py::ClusterGroupsTestCase::test_serialize <- tests/__init__.py PASSED [ 84%]
tests/test_virtualization.py::ClustersTestCase::test_delete <- tests/__init__.py PASSED [ 85%]
tests/test_virtualization.py::ClustersTestCase::test_diff <- tests/__init__.py PASSED [ 85%]
tests/test_virtualization.py::ClustersTestCase::test_endpoint_update <- tests/__init__.py PASSED [ 85%]
tests/test_virtualization.py::ClustersTestCase::test_filter <- tests/__init__.py PASSED [ 85%]
tests/test_virtualization.py::ClustersTestCase::test_get <- tests/__init__.py PASSED [ 85%]
tests/test_virtualization.py::ClustersTestCase::test_get_all <- tests/__init__.py PASSED [ 86%]
tests/test_virtualization.py::ClustersTestCase::test_serialize <- tests/__init__.py PASSED [ 86%]
tests/test_virtualization.py::VirtualMachinesTestCase::test_delete <- tests/__init__.py PASSED [ 86%]
tests/test_virtualization.py::VirtualMachinesTestCase::test_diff <- tests/__init__.py PASSED [ 86%]
tests/test_virtualization.py::VirtualMachinesTestCase::test_endpoint_update <- tests/__init__.py PASSED [ 86%]
tests/test_virtualization.py::VirtualMachinesTestCase::test_filter <- tests/__init__.py PASSED [ 87%]
tests/test_virtualization.py::VirtualMachinesTestCase::test_get <- tests/__init__.py PASSED [ 87%]
tests/test_virtualization.py::VirtualMachinesTestCase::test_get_all <- tests/__init__.py PASSED [ 87%]
tests/test_virtualization.py::VirtualMachinesTestCase::test_serialize <- tests/__init__.py PASSED [ 87%]
tests/test_virtualization.py::InterfacesTestCase::test_delete <- tests/__init__.py PASSED [ 87%]
tests/test_virtualization.py::InterfacesTestCase::test_diff <- tests/__init__.py PASSED [ 88%]
tests/test_virtualization.py::InterfacesTestCase::test_endpoint_update <- tests/__init__.py PASSED [ 88%]
tests/test_virtualization.py::InterfacesTestCase::test_filter <- tests/__init__.py PASSED [ 88%]
tests/test_virtualization.py::InterfacesTestCase::test_get <- tests/__init__.py PASSED [ 88%]
tests/test_virtualization.py::InterfacesTestCase::test_get_all <- tests/__init__.py PASSED [ 88%]
tests/test_virtualization.py::InterfacesTestCase::test_serialize <- tests/__init__.py PASSED [ 89%]
tests/unit/test_api_version.py::APIVersionTestCase::test_api_versioning_at_api_level PASSED [ 89%]
tests/unit/test_api_version.py::APIVersionTestCase::test_api_versioning_at_per_request_level PASSED [ 89%]
tests/unit/test_endpoint.py::EndPointTestCase::test_choices PASSED [ 89%]
tests/unit/test_endpoint.py::EndPointTestCase::test_delete_with_ids PASSED [ 89%]
tests/unit/test_endpoint.py::EndPointTestCase::test_delete_with_invalid_id_type PASSED [ 90%]
tests/unit/test_endpoint.py::EndPointTestCase::test_delete_with_invalid_object PASSED [ 90%]
tests/unit/test_endpoint.py::EndPointTestCase::test_delete_with_invalid_uuid PASSED [ 90%]
tests/unit/test_endpoint.py::EndPointTestCase::test_delete_with_objects PASSED [ 90%]
tests/unit/test_endpoint.py::EndPointTestCase::test_filter PASSED [ 90%]
tests/unit/test_endpoint.py::EndPointTestCase::test_filter_empty_kwargs PASSED [ 91%]
tests/unit/test_endpoint.py::EndPointTestCase::test_filter_reserved_kwargs PASSED [ 91%]
tests/unit/test_endpoint.py::EndPointTestCase::test_update_with_dict PASSED [ 91%]
tests/unit/test_endpoint.py::EndPointTestCase::test_update_with_id_and_data PASSED [ 91%]
tests/unit/test_endpoint.py::EndPointTestCase::test_update_with_id_and_data_args PASSED [ 91%]
tests/unit/test_endpoint.py::EndPointTestCase::test_update_with_id_and_data_args_kwargs PASSED [ 92%]
tests/unit/test_endpoint.py::EndPointTestCase::test_update_with_invalid_input PASSED [ 92%]
tests/unit/test_endpoint.py::EndPointTestCase::test_update_with_invalid_objects_type PASSED [ 92%]
tests/unit/test_endpoint.py::EndPointTestCase::test_update_with_invalid_type_in_objects PASSED [ 92%]
tests/unit/test_endpoint.py::EndPointTestCase::test_update_with_missing_id_attribute PASSED [ 93%]
tests/unit/test_endpoint.py::EndPointTestCase::test_update_with_objects PASSED [ 93%]
tests/unit/test_endpoint.py::JobEndPointTestCase::test_invalid_arg_greater_v1_3 PASSED [ 93%]
tests/unit/test_endpoint.py::JobEndPointTestCase::test_invalid_arg_less_v1_3 PASSED [ 93%]
tests/unit/test_endpoint.py::JobEndPointTestCase::test_run_greater_v1_3 PASSED [ 93%]
tests/unit/test_endpoint.py::JobEndPointTestCase::test_run_less_v1_3 PASSED [ 94%]
tests/unit/test_query.py::RequestTestCase::test_get_count PASSED [ 94%]
tests/unit/test_query.py::RequestTestCase::test_get_count_no_filters PASSED [ 94%]
tests/unit/test_request.py::RequestTestCase::test_get_openapi PASSED [ 94%]
tests/unit/test_response.py::RecordTestCase::test_attribute_access PASSED [ 94%]
tests/unit/test_response.py::RecordTestCase::test_choices_idempotence_prev27 PASSED [ 95%]
tests/unit/test_response.py::RecordTestCase::test_choices_idempotence_v27 PASSED [ 95%]
tests/unit/test_response.py::RecordTestCase::test_choices_idempotence_v28 PASSED [ 95%]
tests/unit/test_response.py::RecordTestCase::test_compare PASSED [ 95%]
tests/unit/test_response.py::RecordTestCase::test_dict PASSED [ 95%]
tests/unit/test_response.py::RecordTestCase::test_dict_access PASSED [ 96%]
tests/unit/test_response.py::RecordTestCase::test_diff PASSED [ 96%]
tests/unit/test_response.py::RecordTestCase::test_diff_append_records_list PASSED [ 96%]
tests/unit/test_response.py::RecordTestCase::test_endpoint_from_url PASSED [ 96%]
tests/unit/test_response.py::RecordTestCase::test_endpoint_from_url_with_directory_in_base_url PASSED [ 96%]
tests/unit/test_response.py::RecordTestCase::test_endpoint_from_url_with_plugin_nested_endpoints PASSED [ 97%]
tests/unit/test_response.py::RecordTestCase::test_endpoint_from_url_with_plugins PASSED [ 97%]
tests/unit/test_response.py::RecordTestCase::test_endpoint_from_url_with_plugins_and_directory_in_base_url PASSED [ 97%]
tests/unit/test_response.py::RecordTestCase::test_hash PASSED [ 97%]
tests/unit/test_response.py::RecordTestCase::test_hash_diff PASSED [ 97%]
tests/unit/test_response.py::RecordTestCase::test_nested_write PASSED [ 98%]
tests/unit/test_response.py::RecordTestCase::test_nested_write_with_directory_in_base_url PASSED [ 98%]
tests/unit/test_response.py::RecordTestCase::test_notes_property_exists PASSED [ 98%]
tests/unit/test_response.py::RecordTestCase::test_serialize_dict_tag_set PASSED [ 98%]
tests/unit/test_response.py::RecordTestCase::test_serialize_list_of_ints PASSED [ 98%]
tests/unit/test_response.py::RecordTestCase::test_serialize_list_of_records PASSED [ 99%]
tests/unit/test_response.py::RecordTestCase::test_serialize_string_tag_set PASSED [ 99%]
tests/unit/test_response.py::RecordTestCase::test_serialize_tag_list_order PASSED [ 99%]
tests/unit/test_response.py::RecordTestCase::test_updates_with_changes PASSED [ 99%]
tests/unit/test_response.py::RecordTestCase::test_updates_with_no_changes PASSED [100%]
==================================================================================================================================== 487 passed in 45.13s =====================================================================================================================================
All tests have passed!
(pynautobot-py3.11) ➜ pynautobot git:(lazy_load_api_version) ✗
Fixes #201
With this change, the API version check will not run until the first API call, rather than at instantiation. This allows the user to manipulate the underlying HTTP session before the first API call is made. In #201 , the use case is to apply a proxy configuration prior to making the first call.