nautobot 2.3.16__py3-none-any.whl → 2.4.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of nautobot might be problematic. Click here for more details.
- nautobot/__init__.py +15 -0
- nautobot/apps/__init__.py +1 -1
- nautobot/apps/api.py +8 -10
- nautobot/apps/change_logging.py +2 -2
- nautobot/apps/choices.py +4 -4
- nautobot/apps/config.py +32 -3
- nautobot/apps/events.py +19 -0
- nautobot/apps/exceptions.py +0 -2
- nautobot/apps/factory.py +2 -2
- nautobot/apps/filters.py +1 -1
- nautobot/apps/forms.py +20 -20
- nautobot/apps/graphql.py +2 -2
- nautobot/apps/jobs.py +8 -8
- nautobot/apps/models.py +19 -19
- nautobot/apps/tables.py +1 -1
- nautobot/apps/testing.py +10 -10
- nautobot/apps/ui.py +44 -9
- nautobot/apps/utils.py +7 -15
- nautobot/apps/views.py +8 -6
- nautobot/circuits/api/serializers.py +1 -0
- nautobot/circuits/api/views.py +4 -8
- nautobot/circuits/navigation.py +0 -57
- nautobot/circuits/templates/circuits/circuit_create.html +1 -7
- nautobot/circuits/templates/circuits/circuit_retrieve.html +0 -71
- nautobot/circuits/templates/circuits/inc/circuit_termination.html +6 -64
- nautobot/circuits/templates/circuits/inc/circuit_termination_cable_fragment.html +40 -0
- nautobot/circuits/templates/circuits/inc/circuit_termination_header_extra_content.html +26 -0
- nautobot/circuits/templates/circuits/provider_retrieve.html +0 -76
- nautobot/circuits/tests/integration/test_relationships.py +33 -24
- nautobot/circuits/tests/test_filters.py +4 -8
- nautobot/circuits/views.py +140 -23
- nautobot/cloud/api/views.py +6 -10
- nautobot/cloud/factory.py +4 -1
- nautobot/cloud/tests/test_filters.py +5 -4
- nautobot/cloud/views.py +0 -16
- nautobot/core/api/constants.py +11 -0
- nautobot/core/api/filter_backends.py +3 -9
- nautobot/core/api/metadata.py +28 -256
- nautobot/core/api/pagination.py +3 -2
- nautobot/core/api/renderers.py +3 -0
- nautobot/core/api/schema.py +13 -2
- nautobot/core/api/serializers.py +45 -259
- nautobot/core/api/urls.py +3 -4
- nautobot/core/api/utils.py +0 -62
- nautobot/core/api/views.py +99 -157
- nautobot/core/apps/__init__.py +22 -578
- nautobot/core/celery/__init__.py +13 -0
- nautobot/core/celery/schedulers.py +47 -2
- nautobot/core/choices.py +2 -2
- nautobot/core/cli/__init__.py +8 -0
- nautobot/core/constants.py +7 -0
- nautobot/core/events/__init__.py +116 -0
- nautobot/core/events/base.py +27 -0
- nautobot/core/events/exceptions.py +10 -0
- nautobot/core/events/redis_broker.py +48 -0
- nautobot/core/events/syslog_broker.py +19 -0
- nautobot/core/exceptions.py +0 -6
- nautobot/core/forms/__init__.py +19 -19
- nautobot/core/forms/fields.py +57 -9
- nautobot/core/forms/forms.py +33 -2
- nautobot/core/forms/utils.py +2 -1
- nautobot/core/graphql/schema.py +3 -1
- nautobot/core/jobs/__init__.py +24 -3
- nautobot/core/jobs/bulk_actions.py +248 -0
- nautobot/core/jobs/cleanup.py +1 -1
- nautobot/core/management/commands/generate_test_data.py +21 -0
- nautobot/core/middleware.py +16 -0
- nautobot/core/models/fields.py +11 -7
- nautobot/core/settings.py +68 -4
- nautobot/core/settings.yaml +99 -0
- nautobot/core/tables.py +10 -46
- nautobot/core/tasks.py +1 -1
- nautobot/core/templates/about.html +67 -0
- nautobot/core/templates/components/button/default.html +7 -0
- nautobot/core/templates/components/button/dropdown.html +20 -0
- nautobot/core/templates/components/layout/one_over_two.html +19 -0
- nautobot/core/templates/components/layout/two_over_one.html +19 -0
- nautobot/core/templates/components/panel/body_content_data_table.html +27 -0
- nautobot/core/templates/components/panel/body_content_objects_table.html +4 -0
- nautobot/core/templates/components/panel/body_content_tags.html +6 -0
- nautobot/core/templates/components/panel/body_content_text.html +12 -0
- nautobot/core/templates/components/panel/body_wrapper_generic.html +3 -0
- nautobot/core/templates/components/panel/body_wrapper_key_value_table.html +3 -0
- nautobot/core/templates/components/panel/body_wrapper_table.html +3 -0
- nautobot/core/templates/components/panel/footer_contacts_table.html +20 -0
- nautobot/core/templates/components/panel/footer_content_table.html +14 -0
- nautobot/core/templates/components/panel/grouping_toggle.html +14 -0
- nautobot/core/templates/components/panel/header_extra_content_table.html +3 -0
- nautobot/core/templates/components/panel/panel.html +16 -0
- nautobot/core/templates/components/panel/stats_panel_body.html +8 -0
- nautobot/core/templates/components/tab/content_wrapper.html +3 -0
- nautobot/core/templates/components/tab/label_wrapper.html +5 -0
- nautobot/core/templates/components/tab/label_wrapper_distinct_view.html +3 -0
- nautobot/core/templates/generic/object_retrieve.html +28 -17
- nautobot/core/templates/inc/computed_fields/panel_data.html +4 -7
- nautobot/core/templates/inc/custom_fields/panel.html +2 -2
- nautobot/core/templates/inc/custom_fields/panel_data.html +4 -7
- nautobot/core/templates/inc/footer.html +1 -0
- nautobot/core/templates/inc/nav_menu.html +2 -1
- nautobot/core/templates/inc/relationships_panel.html +1 -1
- nautobot/core/templates/inc/tenancy_form_panel.html +9 -0
- nautobot/core/templates/inc/tenant_table_row.html +11 -0
- nautobot/core/templates/nautobot_config.py.j2 +13 -0
- nautobot/core/templates/panel_table.html +12 -0
- nautobot/core/templates/utilities/render_jinja2.html +117 -0
- nautobot/core/templates/utilities/templatetags/tag.html +1 -1
- nautobot/core/templates/utilities/theme_preview.html +7 -0
- nautobot/core/templatetags/helpers.py +104 -6
- nautobot/core/templatetags/ui_framework.py +40 -0
- nautobot/core/testing/__init__.py +8 -8
- nautobot/core/testing/api.py +187 -137
- nautobot/core/testing/context.py +18 -0
- nautobot/core/testing/filters.py +41 -35
- nautobot/core/testing/forms.py +2 -0
- nautobot/core/testing/views.py +65 -148
- nautobot/core/tests/integration/test_view_authentication.py +1 -1
- nautobot/core/tests/nautobot_config.py +198 -0
- nautobot/core/tests/runner.py +2 -2
- nautobot/core/tests/test_api.py +154 -176
- nautobot/core/tests/test_events.py +214 -0
- nautobot/core/tests/test_forms.py +1 -0
- nautobot/core/tests/test_jinja_filters.py +1 -0
- nautobot/core/tests/test_jobs.py +387 -14
- nautobot/core/tests/test_navigations.py +7 -241
- nautobot/core/tests/test_settings_schema.py +7 -0
- nautobot/core/tests/test_tables.py +100 -0
- nautobot/core/tests/test_templatetags_helpers.py +16 -0
- nautobot/core/tests/test_ui.py +150 -0
- nautobot/core/tests/test_utils.py +55 -18
- nautobot/core/tests/test_views.py +124 -5
- nautobot/core/ui/__init__.py +0 -0
- nautobot/core/ui/base.py +11 -0
- nautobot/core/ui/choices.py +44 -0
- nautobot/core/ui/homepage.py +167 -0
- nautobot/core/ui/nav.py +280 -0
- nautobot/core/ui/object_detail.py +1855 -0
- nautobot/core/ui/utils.py +36 -0
- nautobot/core/urls.py +6 -0
- nautobot/core/utils/config.py +30 -3
- nautobot/core/utils/lookup.py +12 -2
- nautobot/core/utils/querysets.py +64 -0
- nautobot/core/utils/requests.py +24 -9
- nautobot/core/views/__init__.py +48 -1
- nautobot/core/views/generic.py +37 -140
- nautobot/core/views/mixins.py +82 -32
- nautobot/core/views/paginator.py +8 -5
- nautobot/core/views/renderers.py +9 -9
- nautobot/core/views/utils.py +11 -0
- nautobot/core/wsgi.py +3 -3
- nautobot/dcim/api/serializers.py +34 -141
- nautobot/dcim/api/urls.py +5 -0
- nautobot/dcim/api/views.py +57 -110
- nautobot/dcim/apps.py +1 -0
- nautobot/dcim/choices.py +28 -0
- nautobot/dcim/factory.py +58 -0
- nautobot/dcim/filters/__init__.py +204 -2
- nautobot/dcim/forms.py +219 -9
- nautobot/dcim/migrations/0063_interfacevdcassignment_virtualdevicecontext_and_more.py +165 -0
- nautobot/dcim/migrations/0064_virtualdevicecontext_status_data_migration.py +28 -0
- nautobot/dcim/migrations/0065_controller_capabilities_and_more.py +29 -0
- nautobot/dcim/migrations/0066_controllermanageddevicegroup_radio_profiles_and_more.py +33 -0
- nautobot/dcim/migrations/0067_controllermanageddevicegroup_tenant.py +25 -0
- nautobot/dcim/models/__init__.py +5 -1
- nautobot/dcim/models/devices.py +180 -2
- nautobot/dcim/models/racks.py +2 -2
- nautobot/dcim/navigation.py +25 -224
- nautobot/dcim/signals.py +44 -0
- nautobot/dcim/tables/__init__.py +2 -0
- nautobot/dcim/tables/devices.py +103 -7
- nautobot/dcim/tables/racks.py +1 -1
- nautobot/dcim/templates/dcim/controller/base.html +10 -0
- nautobot/dcim/templates/dcim/controller_create.html +2 -7
- nautobot/dcim/templates/dcim/controller_retrieve.html +6 -10
- nautobot/dcim/templates/dcim/controller_wirelessnetworks.html +25 -0
- nautobot/dcim/templates/dcim/controllermanageddevicegroup_create.html +68 -0
- nautobot/dcim/templates/dcim/controllermanageddevicegroup_retrieve.html +51 -0
- nautobot/dcim/templates/dcim/device/base.html +6 -42
- nautobot/dcim/templates/dcim/device/wireless.html +73 -0
- nautobot/dcim/templates/dcim/device.html +4 -10
- nautobot/dcim/templates/dcim/device_edit.html +36 -37
- nautobot/dcim/templates/dcim/interface.html +1 -0
- nautobot/dcim/templates/dcim/interface_edit.html +1 -0
- nautobot/dcim/templates/dcim/location.html +1 -9
- nautobot/dcim/templates/dcim/location_edit.html +1 -7
- nautobot/dcim/templates/dcim/locationtype.html +0 -107
- nautobot/dcim/templates/dcim/locationtype_retrieve.html +8 -0
- nautobot/dcim/templates/dcim/rack.html +1 -9
- nautobot/dcim/templates/dcim/rack_edit.html +1 -7
- nautobot/dcim/templates/dcim/rackreservation.html +1 -9
- nautobot/dcim/templates/dcim/virtualdevicecontext_retrieve.html +68 -0
- nautobot/dcim/templates/dcim/virtualdevicecontext_update.html +28 -0
- nautobot/dcim/tests/integration/test_controller.py +62 -0
- nautobot/dcim/tests/integration/test_controller_managed_device_group.py +71 -0
- nautobot/dcim/tests/test_api.py +188 -64
- nautobot/dcim/tests/test_filters.py +171 -76
- nautobot/dcim/tests/test_jobs.py +118 -0
- nautobot/dcim/tests/test_models.py +157 -6
- nautobot/dcim/tests/test_signals.py +1 -0
- nautobot/dcim/tests/test_views.py +118 -88
- nautobot/dcim/urls.py +72 -27
- nautobot/dcim/utils.py +2 -2
- nautobot/dcim/views.py +356 -61
- nautobot/extras/api/serializers.py +39 -18
- nautobot/extras/api/urls.py +4 -0
- nautobot/extras/api/views.py +89 -31
- nautobot/extras/choices.py +13 -0
- nautobot/extras/constants.py +2 -1
- nautobot/extras/context_managers.py +23 -6
- nautobot/extras/datasources/git.py +4 -1
- nautobot/extras/factory.py +27 -0
- nautobot/extras/filters/__init__.py +66 -5
- nautobot/extras/forms/base.py +2 -2
- nautobot/extras/forms/forms.py +262 -59
- nautobot/extras/forms/mixins.py +2 -2
- nautobot/extras/graphql/types.py +25 -1
- nautobot/extras/jobs.py +109 -15
- nautobot/extras/management/__init__.py +1 -0
- nautobot/extras/management/commands/runjob.py +7 -79
- nautobot/extras/management/commands/runjob_with_job_result.py +46 -0
- nautobot/extras/management/utils.py +87 -0
- nautobot/extras/migrations/0117_create_job_queue_model.py +129 -0
- nautobot/extras/migrations/0118_task_queue_to_job_queue_migration.py +78 -0
- nautobot/extras/migrations/0119_remove_task_queues_from_job_and_queue_from_scheduled_job.py +28 -0
- nautobot/extras/migrations/0120_job_is_singleton_job_is_singleton_override.py +22 -0
- nautobot/extras/migrations/0121_alter_team_contacts.py +17 -0
- nautobot/extras/models/__init__.py +5 -1
- nautobot/extras/models/change_logging.py +7 -3
- nautobot/extras/models/contacts.py +1 -1
- nautobot/extras/models/groups.py +0 -2
- nautobot/extras/models/jobs.py +233 -33
- nautobot/extras/models/relationships.py +69 -1
- nautobot/extras/models/secrets.py +5 -0
- nautobot/extras/navigation.py +20 -262
- nautobot/extras/plugins/__init__.py +54 -19
- nautobot/extras/plugins/marketplace_manifest.yml +455 -0
- nautobot/extras/plugins/tables.py +16 -14
- nautobot/extras/plugins/urls.py +1 -0
- nautobot/extras/plugins/views.py +103 -60
- nautobot/extras/registry.py +1 -1
- nautobot/extras/secrets/__init__.py +2 -2
- nautobot/extras/signals.py +39 -1
- nautobot/extras/tables.py +37 -1
- nautobot/extras/templates/extras/dynamicgroup.html +1 -9
- nautobot/extras/templates/extras/externalintegration_retrieve.html +0 -47
- nautobot/extras/templates/extras/inc/tags_panel.html +1 -5
- nautobot/extras/templates/extras/job_bulk_edit.html +2 -1
- nautobot/extras/templates/extras/job_detail.html +52 -6
- nautobot/extras/templates/extras/job_edit.html +6 -2
- nautobot/extras/templates/extras/job_list.html +2 -7
- nautobot/extras/templates/extras/jobqueue_retrieve.html +36 -0
- nautobot/extras/templates/extras/marketplace.html +296 -0
- nautobot/extras/templates/extras/plugin_detail.html +32 -15
- nautobot/extras/templates/extras/plugins_list.html +35 -1
- nautobot/extras/templates/extras/plugins_tiles.html +90 -0
- nautobot/extras/templates/extras/role_retrieve.html +16 -0
- nautobot/extras/templates/extras/secret.html +0 -65
- nautobot/extras/templates/extras/secret_check.js +16 -0
- nautobot/extras/templates/extras/secret_create.html +114 -0
- nautobot/extras/templates/extras/secret_edit.html +1 -114
- nautobot/extras/templates/extras/secretsgroup_edit.html +1 -1
- nautobot/extras/templates/extras/templatetags/plugin_object_detail_tabs.html +2 -0
- nautobot/extras/templatetags/job_buttons.py +5 -4
- nautobot/extras/templatetags/plugins.py +69 -6
- nautobot/extras/test_jobs/singleton.py +16 -0
- nautobot/extras/tests/test_api.py +145 -43
- nautobot/extras/tests/test_context_managers.py +4 -1
- nautobot/extras/tests/test_filters.py +213 -529
- nautobot/extras/tests/test_job_variables.py +73 -152
- nautobot/extras/tests/test_jobs.py +181 -51
- nautobot/extras/tests/test_models.py +61 -6
- nautobot/extras/tests/test_plugins.py +62 -9
- nautobot/extras/tests/test_relationships.py +123 -9
- nautobot/extras/tests/test_utils.py +23 -2
- nautobot/extras/tests/test_views.py +146 -145
- nautobot/extras/tests/test_webhooks.py +2 -1
- nautobot/extras/urls.py +2 -20
- nautobot/extras/utils.py +119 -4
- nautobot/extras/views.py +168 -125
- nautobot/extras/webhooks.py +5 -2
- nautobot/ipam/api/serializers.py +10 -103
- nautobot/ipam/api/views.py +31 -49
- nautobot/ipam/factory.py +1 -1
- nautobot/ipam/filters.py +3 -2
- nautobot/ipam/models.py +10 -12
- nautobot/ipam/navigation.py +0 -90
- nautobot/ipam/tables.py +3 -1
- nautobot/ipam/templates/ipam/ipaddress.html +1 -9
- nautobot/ipam/templates/ipam/ipaddress_bulk_add.html +1 -7
- nautobot/ipam/templates/ipam/ipaddress_edit.html +1 -7
- nautobot/ipam/templates/ipam/prefix.html +1 -9
- nautobot/ipam/templates/ipam/prefix_edit.html +1 -7
- nautobot/ipam/templates/ipam/routetarget.html +0 -28
- nautobot/ipam/templates/ipam/vlan.html +1 -9
- nautobot/ipam/templates/ipam/vlan_edit.html +1 -7
- nautobot/ipam/templates/ipam/vrf.html +0 -47
- nautobot/ipam/templates/ipam/vrf_edit.html +1 -7
- nautobot/ipam/tests/test_api.py +7 -5
- nautobot/ipam/tests/test_filters.py +39 -119
- nautobot/ipam/tests/test_forms.py +0 -2
- nautobot/ipam/tests/test_models.py +56 -36
- nautobot/ipam/tests/test_views.py +3 -0
- nautobot/ipam/urls.py +3 -69
- nautobot/ipam/utils/__init__.py +16 -10
- nautobot/ipam/views.py +91 -162
- nautobot/project-static/bootstrap-3.4.1-dist/css/bootstrap-theme.css.map +1 -1
- nautobot/project-static/bootstrap-3.4.1-dist/css/bootstrap-theme.min.css.map +1 -1
- nautobot/project-static/bootstrap-3.4.1-dist/css/bootstrap.css +40 -2
- nautobot/project-static/bootstrap-3.4.1-dist/css/bootstrap.css.map +1 -1
- nautobot/project-static/bootstrap-3.4.1-dist/css/bootstrap.min.css +1 -1
- nautobot/project-static/bootstrap-3.4.1-dist/css/bootstrap.min.css.map +1 -1
- nautobot/project-static/css/base.css +38 -3
- nautobot/project-static/docs/404.html +461 -17
- nautobot/project-static/docs/apps/index.html +461 -17
- nautobot/project-static/docs/apps/nautobot-apps.html +462 -19
- nautobot/project-static/docs/assets/_mkdocstrings.css +25 -1
- nautobot/project-static/docs/assets/extra.css +5 -1
- nautobot/project-static/docs/code-reference/nautobot/apps/__init__.html +477 -23
- nautobot/project-static/docs/code-reference/nautobot/apps/admin.html +474 -20
- nautobot/project-static/docs/code-reference/nautobot/apps/api.html +790 -289
- nautobot/project-static/docs/code-reference/nautobot/apps/change_logging.html +505 -31
- nautobot/project-static/docs/code-reference/nautobot/apps/choices.html +510 -34
- nautobot/project-static/docs/code-reference/nautobot/apps/config.html +471 -20
- nautobot/project-static/docs/code-reference/nautobot/apps/constants.html +467 -18
- nautobot/project-static/docs/code-reference/nautobot/apps/datasources.html +497 -33
- nautobot/project-static/docs/code-reference/nautobot/apps/events.html +9883 -0
- nautobot/project-static/docs/code-reference/nautobot/apps/exceptions.html +523 -75
- nautobot/project-static/docs/code-reference/nautobot/apps/factory.html +546 -51
- nautobot/project-static/docs/code-reference/nautobot/apps/filters.html +670 -94
- nautobot/project-static/docs/code-reference/nautobot/apps/forms.html +1030 -177
- nautobot/project-static/docs/code-reference/nautobot/apps/graphql.html +524 -49
- nautobot/project-static/docs/code-reference/nautobot/apps/jobs.html +874 -188
- nautobot/project-static/docs/code-reference/nautobot/apps/models.html +955 -235
- nautobot/project-static/docs/code-reference/nautobot/apps/querysets.html +475 -21
- nautobot/project-static/docs/code-reference/nautobot/apps/secrets.html +486 -28
- nautobot/project-static/docs/code-reference/nautobot/apps/tables.html +661 -99
- nautobot/project-static/docs/code-reference/nautobot/apps/testing.html +947 -479
- nautobot/project-static/docs/code-reference/nautobot/apps/ui.html +6425 -1234
- nautobot/project-static/docs/code-reference/nautobot/apps/urls.html +474 -20
- nautobot/project-static/docs/code-reference/nautobot/apps/utils.html +877 -344
- nautobot/project-static/docs/code-reference/nautobot/apps/views.html +828 -171
- nautobot/project-static/docs/development/apps/api/configuration-view.html +461 -17
- nautobot/project-static/docs/development/apps/api/database-backend-config.html +461 -17
- nautobot/project-static/docs/development/apps/api/models/django-admin.html +461 -17
- nautobot/project-static/docs/development/apps/api/models/global-search.html +461 -17
- nautobot/project-static/docs/development/apps/api/models/graphql.html +461 -17
- nautobot/project-static/docs/development/apps/api/models/index.html +461 -17
- nautobot/project-static/docs/development/apps/api/nautobot-app-config.html +461 -17
- nautobot/project-static/docs/development/apps/api/platform-features/custom-validators.html +461 -17
- nautobot/project-static/docs/development/apps/api/platform-features/filter-extensions.html +461 -17
- nautobot/project-static/docs/development/apps/api/platform-features/git-repository-content.html +461 -17
- nautobot/project-static/docs/development/apps/api/platform-features/index.html +461 -17
- nautobot/project-static/docs/development/apps/api/platform-features/jinja2-filters.html +461 -17
- nautobot/project-static/docs/development/apps/api/platform-features/jobs.html +461 -17
- nautobot/project-static/docs/development/apps/api/platform-features/populating-extensibility-features.html +461 -17
- nautobot/project-static/docs/development/apps/api/platform-features/secrets-providers.html +461 -17
- nautobot/project-static/docs/development/apps/api/platform-features/table-extensions.html +461 -17
- nautobot/project-static/docs/development/apps/api/platform-features/uniquely-identify-objects.html +461 -17
- nautobot/project-static/docs/development/apps/api/prometheus.html +461 -17
- nautobot/project-static/docs/development/apps/api/setup.html +465 -153
- nautobot/project-static/docs/development/apps/api/testing.html +461 -17
- nautobot/project-static/docs/development/apps/api/ui-extensions/banners.html +461 -17
- nautobot/project-static/docs/development/apps/api/ui-extensions/home-page.html +461 -17
- nautobot/project-static/docs/development/apps/api/ui-extensions/index.html +461 -17
- nautobot/project-static/docs/development/apps/api/ui-extensions/navigation.html +461 -17
- nautobot/project-static/docs/development/apps/api/ui-extensions/object-views.html +741 -128
- nautobot/project-static/docs/development/apps/api/views/base-template.html +461 -17
- nautobot/project-static/docs/development/apps/api/views/core-view-overrides.html +461 -17
- nautobot/project-static/docs/development/apps/api/views/django-generic-views.html +461 -17
- nautobot/project-static/docs/development/apps/api/views/help-documentation.html +461 -17
- nautobot/project-static/docs/development/apps/api/views/index.html +463 -18
- nautobot/project-static/docs/development/apps/api/views/nautobot-generic-views.html +465 -17
- nautobot/project-static/docs/development/apps/api/views/nautobotuiviewset.html +491 -17
- nautobot/project-static/docs/development/apps/api/views/nautobotuiviewsetrouter.html +461 -17
- nautobot/project-static/docs/development/apps/api/views/notes.html +461 -17
- nautobot/project-static/docs/development/apps/api/views/rest-api.html +467 -19
- nautobot/project-static/docs/development/apps/api/views/urls.html +461 -17
- nautobot/project-static/docs/development/apps/index.html +461 -17
- nautobot/project-static/docs/development/apps/migration/code-updates.html +462 -50
- nautobot/project-static/docs/development/apps/migration/dependency-updates.html +462 -18
- nautobot/project-static/docs/development/apps/migration/from-v1.html +461 -17
- nautobot/project-static/docs/development/apps/migration/model-updates/dcim.html +461 -17
- nautobot/project-static/docs/development/apps/migration/model-updates/extras.html +461 -17
- nautobot/project-static/docs/development/apps/migration/model-updates/global.html +461 -17
- nautobot/project-static/docs/development/apps/migration/model-updates/ipam.html +464 -20
- nautobot/project-static/docs/development/apps/migration/ui-component-framework/best-practices.html +9261 -0
- nautobot/project-static/docs/development/apps/migration/ui-component-framework/custom-content.html +9375 -0
- nautobot/project-static/docs/development/apps/migration/ui-component-framework/index.html +9671 -0
- nautobot/project-static/docs/development/apps/migration/ui-component-framework/migration-steps.html +9559 -0
- nautobot/project-static/docs/development/apps/porting-from-netbox.html +464 -20
- nautobot/project-static/docs/development/core/application-registry.html +461 -17
- nautobot/project-static/docs/development/core/best-practices.html +461 -17
- nautobot/project-static/docs/development/core/bootstrap-ui.html +461 -17
- nautobot/project-static/docs/development/core/caching.html +461 -17
- nautobot/project-static/docs/development/core/controllers.html +463 -17
- nautobot/project-static/docs/development/core/docker-compose-advanced-use-cases.html +464 -20
- nautobot/project-static/docs/development/core/generic-views.html +461 -17
- nautobot/project-static/docs/development/core/getting-started.html +539 -127
- nautobot/project-static/docs/development/core/homepage.html +472 -28
- nautobot/project-static/docs/development/core/index.html +461 -17
- nautobot/project-static/docs/development/core/minikube-dev-environment-for-k8s-jobs.html +9754 -0
- nautobot/project-static/docs/development/core/model-checklist.html +471 -25
- nautobot/project-static/docs/development/core/model-features.html +461 -17
- nautobot/project-static/docs/development/core/natural-keys.html +461 -17
- nautobot/project-static/docs/development/core/navigation-menu.html +478 -24
- nautobot/project-static/docs/development/core/release-checklist.html +478 -46
- nautobot/project-static/docs/development/core/role-internals.html +461 -17
- nautobot/project-static/docs/development/core/settings.html +461 -17
- nautobot/project-static/docs/development/core/style-guide.html +464 -20
- nautobot/project-static/docs/development/core/templates.html +471 -20
- nautobot/project-static/docs/development/core/testing.html +461 -17
- nautobot/project-static/docs/development/core/ui-component-framework.html +11116 -0
- nautobot/project-static/docs/development/core/user-preferences.html +464 -20
- nautobot/project-static/docs/development/index.html +461 -17
- nautobot/project-static/docs/development/jobs/index.html +499 -19
- nautobot/project-static/docs/development/jobs/migration/from-v1.html +461 -17
- nautobot/project-static/docs/index.html +469 -36
- nautobot/project-static/docs/media/development/core/kubernetes/k8s_job_edit.png +0 -0
- nautobot/project-static/docs/media/development/core/kubernetes/k8s_job_edit_button.png +0 -0
- nautobot/project-static/docs/media/development/core/kubernetes/k8s_job_list_nav.png +0 -0
- nautobot/project-static/docs/media/development/core/kubernetes/k8s_job_list_view.png +0 -0
- nautobot/project-static/docs/media/development/core/kubernetes/k8s_job_queue.png +0 -0
- nautobot/project-static/docs/media/development/core/kubernetes/k8s_job_queue_add.png +0 -0
- nautobot/project-static/docs/media/development/core/kubernetes/k8s_job_queue_config.png +0 -0
- nautobot/project-static/docs/media/development/core/kubernetes/k8s_job_result_completed.png +0 -0
- nautobot/project-static/docs/media/development/core/kubernetes/k8s_job_result_nav.png +0 -0
- nautobot/project-static/docs/media/development/core/kubernetes/k8s_job_result_pending.png +0 -0
- nautobot/project-static/docs/media/development/core/kubernetes/k8s_job_run_form.png +0 -0
- nautobot/project-static/docs/media/development/core/kubernetes/k8s_nautobot_login.png +0 -0
- nautobot/project-static/docs/media/development/core/kubernetes/k8s_run_job.png +0 -0
- nautobot/project-static/docs/media/development/core/kubernetes/k8s_run_scheduled_job_form.png +0 -0
- nautobot/project-static/docs/media/development/core/kubernetes/k8s_scheduled_job_result.png +0 -0
- nautobot/project-static/docs/media/development/core/ui-component-framework/basic-panel-layout.png +0 -0
- nautobot/project-static/docs/media/development/core/ui-component-framework/button-example.png +0 -0
- nautobot/project-static/docs/media/development/core/ui-component-framework/buttons-example.png +0 -0
- nautobot/project-static/docs/media/development/core/ui-component-framework/cluster-type-before-after-example.png +0 -0
- nautobot/project-static/docs/media/development/core/ui-component-framework/dropdown-button-example.png +0 -0
- nautobot/project-static/docs/media/development/core/ui-component-framework/grouped-key-value-table-panel-example-1.png +0 -0
- nautobot/project-static/docs/media/development/core/ui-component-framework/grouped-key-value-table-panel-example-2.png +0 -0
- nautobot/project-static/docs/media/development/core/ui-component-framework/object-fields-panel-example.png +0 -0
- nautobot/project-static/docs/media/development/core/ui-component-framework/object-fields-panel-example_2.png +0 -0
- nautobot/project-static/docs/media/development/core/ui-component-framework/stats-panel-example-code.png +0 -0
- nautobot/project-static/docs/media/development/core/ui-component-framework/stats-panel-example.png +0 -0
- nautobot/project-static/docs/media/development/core/ui-component-framework/table-panels-family.png +0 -0
- nautobot/project-static/docs/media/development/core/ui-component-framework/text-panels-family.png +0 -0
- nautobot/project-static/docs/media/development/core/ui-component-framework/ui-framework-example.png +0 -0
- nautobot/project-static/docs/media/models/virtual_device_context_overview.drawio +73 -0
- nautobot/project-static/docs/media/models/virtual_device_context_overview.png +0 -0
- nautobot/project-static/docs/models/dcim/virtualdevicecontext.html +14 -0
- nautobot/project-static/docs/models/extras/jobqueue.html +14 -0
- nautobot/project-static/docs/models/wireless/radioprofile.html +14 -0
- nautobot/project-static/docs/models/wireless/supporteddatarate.html +14 -0
- nautobot/project-static/docs/models/wireless/wirelessnetwork.html +14 -0
- nautobot/project-static/docs/objects.inv +0 -0
- nautobot/project-static/docs/overview/application_stack.html +467 -21
- nautobot/project-static/docs/overview/design_philosophy.html +461 -17
- nautobot/project-static/docs/release-notes/index.html +483 -20
- nautobot/project-static/docs/release-notes/version-1.0.html +649 -206
- nautobot/project-static/docs/release-notes/version-1.1.html +646 -203
- nautobot/project-static/docs/release-notes/version-1.2.html +721 -278
- nautobot/project-static/docs/release-notes/version-1.3.html +747 -304
- nautobot/project-static/docs/release-notes/version-1.4.html +832 -390
- nautobot/project-static/docs/release-notes/version-1.5.html +1020 -579
- nautobot/project-static/docs/release-notes/version-1.6.html +940 -516
- nautobot/project-static/docs/release-notes/version-2.0.html +943 -502
- nautobot/project-static/docs/release-notes/version-2.1.html +778 -337
- nautobot/project-static/docs/release-notes/version-2.2.html +771 -330
- nautobot/project-static/docs/release-notes/version-2.3.html +914 -471
- nautobot/project-static/docs/release-notes/version-2.4.html +10323 -0
- nautobot/project-static/docs/search/search_index.json +1 -1
- nautobot/project-static/docs/sitemap.xml +342 -270
- nautobot/project-static/docs/sitemap.xml.gz +0 -0
- nautobot/project-static/docs/user-guide/administration/configuration/authentication/ldap.html +461 -17
- nautobot/project-static/docs/user-guide/administration/configuration/authentication/remote.html +461 -17
- nautobot/project-static/docs/user-guide/administration/configuration/authentication/sso.html +461 -17
- nautobot/project-static/docs/user-guide/administration/configuration/index.html +473 -30
- nautobot/project-static/docs/user-guide/administration/configuration/redis.html +461 -17
- nautobot/project-static/docs/user-guide/administration/configuration/settings.html +842 -155
- nautobot/project-static/docs/user-guide/administration/configuration/time-zones.html +461 -17
- nautobot/project-static/docs/user-guide/administration/guides/celery-queues.html +461 -17
- nautobot/project-static/docs/user-guide/administration/guides/docker.html +474 -27
- nautobot/project-static/docs/user-guide/administration/guides/health-checks.html +461 -17
- nautobot/project-static/docs/user-guide/administration/guides/permissions.html +461 -17
- nautobot/project-static/docs/user-guide/administration/guides/prometheus-metrics.html +461 -17
- nautobot/project-static/docs/user-guide/administration/guides/replicating-nautobot.html +461 -17
- nautobot/project-static/docs/user-guide/administration/guides/request-profiling.html +461 -17
- nautobot/project-static/docs/user-guide/administration/guides/s3-django-storage.html +463 -19
- nautobot/project-static/docs/user-guide/administration/guides/selinux-troubleshooting.html +461 -17
- nautobot/project-static/docs/user-guide/administration/installation/app-install.html +461 -17
- nautobot/project-static/docs/user-guide/administration/installation/external-authentication.html +461 -17
- nautobot/project-static/docs/user-guide/administration/installation/http-server.html +481 -21
- nautobot/project-static/docs/user-guide/administration/installation/index.html +466 -18
- nautobot/project-static/docs/user-guide/administration/installation/install_system.html +462 -18
- nautobot/project-static/docs/user-guide/administration/installation/nautobot.html +461 -17
- nautobot/project-static/docs/user-guide/administration/installation/services.html +461 -17
- nautobot/project-static/docs/user-guide/administration/migration/migrating-from-netbox.html +461 -17
- nautobot/project-static/docs/user-guide/administration/migration/migrating-from-postgresql.html +482 -39
- nautobot/project-static/docs/user-guide/administration/tools/nautobot-server.html +475 -64
- nautobot/project-static/docs/user-guide/administration/tools/nautobot-shell.html +475 -64
- nautobot/project-static/docs/user-guide/administration/upgrading/database-backup.html +461 -17
- nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/ipam/after-you-upgrade.html +461 -17
- nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/ipam/before-you-upgrade.html +461 -17
- nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/ipam/for-developers.html +461 -17
- nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/ipam/index.html +461 -17
- nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/ipam/whats-changed.html +464 -21
- nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/region-and-site-data-migration-guide.html +461 -17
- nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/tables/v2-code-nautobot-app-location.yaml +0 -16
- nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/upgrading-from-nautobot-v1.html +461 -17
- nautobot/project-static/docs/user-guide/administration/upgrading/upgrading.html +467 -19
- nautobot/project-static/docs/user-guide/core-data-model/circuits/circuit.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/circuits/circuittermination.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/circuits/circuittype.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/circuits/provider.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/circuits/providernetwork.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/cloud/cloud.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/cloud/cloudaccount.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/cloud/cloudnetwork.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/cloud/cloudnetworkprefixassignment.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/cloud/cloudresourcetype.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/cloud/cloudservice.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/cloud/cloudservicenetworkassignment.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/dcim/cable.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/dcim/consoleport.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/dcim/consoleporttemplate.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/dcim/consoleserverport.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/dcim/consoleserverporttemplate.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/dcim/controller.html +497 -18
- nautobot/project-static/docs/user-guide/core-data-model/dcim/controllermanageddevicegroup.html +487 -20
- nautobot/project-static/docs/user-guide/core-data-model/dcim/device.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/dcim/devicebay.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/dcim/devicebaytemplate.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/dcim/devicefamily.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/dcim/deviceredundancygroup.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/dcim/devicetype.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/dcim/frontport.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/dcim/frontporttemplate.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/dcim/interface.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/dcim/interfaceredundancygroup.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/dcim/interfacetemplate.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/dcim/inventoryitem.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/dcim/location.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/dcim/locationtype.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/dcim/manufacturer.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/dcim/module.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/dcim/modulebay.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/dcim/modulebaytemplate.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/dcim/moduletype.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/dcim/platform.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/dcim/powerfeed.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/dcim/poweroutlet.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/dcim/poweroutlettemplate.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/dcim/powerpanel.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/dcim/powerport.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/dcim/powerporttemplate.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/dcim/rack.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/dcim/rackgroup.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/dcim/rackreservation.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/dcim/rearport.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/dcim/rearporttemplate.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/dcim/softwareimagefile.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/dcim/softwareversion.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/dcim/virtualchassis.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/dcim/virtualdevicecontext.html +9375 -0
- nautobot/project-static/docs/user-guide/core-data-model/extras/configcontext.html +468 -28
- nautobot/project-static/docs/user-guide/core-data-model/extras/configcontextschema.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/extras/contact.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/extras/team.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/ipam/ipaddress.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/ipam/namespace.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/ipam/prefix.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/ipam/rir.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/ipam/routetarget.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/ipam/service.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/ipam/vlan.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/ipam/vlangroup.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/ipam/vrf.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/overview/introduction.html +464 -20
- nautobot/project-static/docs/user-guide/core-data-model/tenancy/tenant.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/tenancy/tenantgroup.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/virtualization/cluster.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/virtualization/clustergroup.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/virtualization/clustertype.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/virtualization/virtualmachine.html +461 -17
- nautobot/project-static/docs/user-guide/core-data-model/virtualization/vminterface.html +464 -20
- nautobot/project-static/docs/user-guide/core-data-model/wireless/index.html +9313 -0
- nautobot/project-static/docs/user-guide/core-data-model/wireless/radioprofile.html +9217 -0
- nautobot/project-static/docs/user-guide/core-data-model/wireless/supporteddatarate.html +9211 -0
- nautobot/project-static/docs/user-guide/core-data-model/wireless/wirelessnetwork.html +9277 -0
- nautobot/project-static/docs/user-guide/feature-guides/contacts-and-teams.html +461 -17
- nautobot/project-static/docs/user-guide/feature-guides/custom-fields.html +461 -17
- nautobot/project-static/docs/user-guide/feature-guides/getting-started/creating-devices.html +461 -17
- nautobot/project-static/docs/user-guide/feature-guides/getting-started/creating-location-types-and-locations.html +461 -17
- nautobot/project-static/docs/user-guide/feature-guides/getting-started/index.html +461 -17
- nautobot/project-static/docs/user-guide/feature-guides/getting-started/interfaces.html +461 -17
- nautobot/project-static/docs/user-guide/feature-guides/getting-started/ipam.html +461 -17
- nautobot/project-static/docs/user-guide/feature-guides/getting-started/platforms.html +461 -17
- nautobot/project-static/docs/user-guide/feature-guides/getting-started/search-bar.html +461 -17
- nautobot/project-static/docs/user-guide/feature-guides/getting-started/tenants.html +461 -17
- nautobot/project-static/docs/user-guide/feature-guides/getting-started/vlans-and-vlan-groups.html +461 -17
- nautobot/project-static/docs/user-guide/feature-guides/git-data-source.html +466 -20
- nautobot/project-static/docs/user-guide/feature-guides/graphql.html +461 -17
- nautobot/project-static/docs/user-guide/feature-guides/images/wireless/central-mode.png +0 -0
- nautobot/project-static/docs/user-guide/feature-guides/images/wireless/device-group-add.png +0 -0
- nautobot/project-static/docs/user-guide/feature-guides/images/wireless/device-group-create-1.png +0 -0
- nautobot/project-static/docs/user-guide/feature-guides/images/wireless/device-group-create-2.png +0 -0
- nautobot/project-static/docs/user-guide/feature-guides/images/wireless/radio-profile-add.png +0 -0
- nautobot/project-static/docs/user-guide/feature-guides/images/wireless/radio-profile-create.png +0 -0
- nautobot/project-static/docs/user-guide/feature-guides/images/wireless/supported-data-rate-add.png +0 -0
- nautobot/project-static/docs/user-guide/feature-guides/images/wireless/supported-data-rate-create.png +0 -0
- nautobot/project-static/docs/user-guide/feature-guides/images/wireless/wireless-controller-add.png +0 -0
- nautobot/project-static/docs/user-guide/feature-guides/images/wireless/wireless-controller-create-1.png +0 -0
- nautobot/project-static/docs/user-guide/feature-guides/images/wireless/wireless-controller-create-2.png +0 -0
- nautobot/project-static/docs/user-guide/feature-guides/images/wireless/wireless-network-add.png +0 -0
- nautobot/project-static/docs/user-guide/feature-guides/images/wireless/wireless-network-create.png +0 -0
- nautobot/project-static/docs/user-guide/feature-guides/ip-address-merge-tool.html +461 -17
- nautobot/project-static/docs/user-guide/feature-guides/relationships.html +461 -17
- nautobot/project-static/docs/user-guide/feature-guides/software-image-files-and-versions.html +464 -20
- nautobot/project-static/docs/user-guide/feature-guides/wireless-networks-and-controllers.html +9444 -0
- nautobot/project-static/docs/user-guide/index.html +461 -17
- nautobot/project-static/docs/user-guide/platform-functionality/change-logging.html +464 -20
- nautobot/project-static/docs/user-guide/platform-functionality/computedfield.html +465 -21
- nautobot/project-static/docs/user-guide/platform-functionality/customfield.html +461 -17
- nautobot/project-static/docs/user-guide/platform-functionality/customlink.html +461 -17
- nautobot/project-static/docs/user-guide/platform-functionality/dynamicgroup.html +461 -17
- nautobot/project-static/docs/user-guide/platform-functionality/events.html +9617 -0
- nautobot/project-static/docs/user-guide/platform-functionality/exporttemplate.html +464 -20
- nautobot/project-static/docs/user-guide/platform-functionality/externalintegration.html +461 -17
- nautobot/project-static/docs/user-guide/platform-functionality/gitrepository.html +461 -17
- nautobot/project-static/docs/user-guide/platform-functionality/graphql.html +461 -17
- nautobot/project-static/docs/user-guide/platform-functionality/graphqlquery.html +461 -17
- nautobot/project-static/docs/user-guide/platform-functionality/imageattachment.html +461 -17
- nautobot/project-static/docs/user-guide/platform-functionality/jobs/index.html +470 -21
- nautobot/project-static/docs/user-guide/platform-functionality/jobs/job-scheduling-and-approvals.html +464 -20
- nautobot/project-static/docs/user-guide/platform-functionality/jobs/jobbutton.html +464 -20
- nautobot/project-static/docs/user-guide/platform-functionality/jobs/jobhook.html +461 -17
- nautobot/project-static/docs/user-guide/platform-functionality/jobs/jobqueue.html +9224 -0
- nautobot/project-static/docs/user-guide/platform-functionality/jobs/kubernetes-job-support.html +9722 -0
- nautobot/project-static/docs/user-guide/platform-functionality/jobs/models.html +464 -20
- nautobot/project-static/docs/user-guide/platform-functionality/napalm.html +461 -17
- nautobot/project-static/docs/user-guide/platform-functionality/note.html +461 -17
- nautobot/project-static/docs/user-guide/platform-functionality/objectmetadata.html +461 -17
- nautobot/project-static/docs/user-guide/platform-functionality/relationship.html +465 -21
- nautobot/project-static/docs/user-guide/platform-functionality/rendering-jinja-templates.html +9292 -0
- nautobot/project-static/docs/user-guide/platform-functionality/rest-api/authentication.html +461 -17
- nautobot/project-static/docs/user-guide/platform-functionality/rest-api/filtering.html +509 -38
- nautobot/project-static/docs/user-guide/platform-functionality/rest-api/overview.html +492 -21
- nautobot/project-static/docs/user-guide/platform-functionality/rest-api/ui-related-endpoints.html +461 -17
- nautobot/project-static/docs/user-guide/platform-functionality/role.html +461 -17
- nautobot/project-static/docs/user-guide/platform-functionality/savedview.html +461 -17
- nautobot/project-static/docs/user-guide/platform-functionality/secret.html +461 -17
- nautobot/project-static/docs/user-guide/platform-functionality/staticgroupassociation.html +464 -20
- nautobot/project-static/docs/user-guide/platform-functionality/status.html +461 -17
- nautobot/project-static/docs/user-guide/platform-functionality/tag.html +461 -17
- nautobot/project-static/docs/user-guide/platform-functionality/template-filters.html +529 -54
- nautobot/project-static/docs/user-guide/platform-functionality/users/objectpermission.html +461 -17
- nautobot/project-static/docs/user-guide/platform-functionality/users/token.html +461 -17
- nautobot/project-static/docs/user-guide/platform-functionality/webhook.html +461 -17
- nautobot/project-static/img/jinja_logo.svg +97 -0
- nautobot/project-static/js/forms.js +6 -1
- nautobot/project-static/js/nav_menu.js +2 -1
- nautobot/tenancy/api/serializers.py +0 -2
- nautobot/tenancy/api/views.py +9 -13
- nautobot/tenancy/factory.py +1 -1
- nautobot/tenancy/navigation.py +0 -29
- nautobot/tenancy/templates/tenancy/tenant.html +4 -91
- nautobot/tenancy/tests/test_filters.py +29 -134
- nautobot/tenancy/views.py +35 -24
- nautobot/users/admin.py +2 -0
- nautobot/users/api/views.py +2 -2
- nautobot/users/forms.py +19 -0
- nautobot/users/templates/users/preferences.html +22 -0
- nautobot/users/tests/test_filters.py +1 -19
- nautobot/users/tests/test_views.py +57 -0
- nautobot/users/utils.py +8 -0
- nautobot/users/views.py +48 -11
- nautobot/virtualization/api/views.py +5 -24
- nautobot/virtualization/filters.py +1 -2
- nautobot/virtualization/models.py +1 -1
- nautobot/virtualization/navigation.py +0 -48
- nautobot/virtualization/tables.py +2 -2
- nautobot/virtualization/templates/virtualization/cluster_edit.html +1 -7
- nautobot/virtualization/templates/virtualization/clustertype.html +0 -39
- nautobot/virtualization/templates/virtualization/virtualmachine.html +1 -9
- nautobot/virtualization/templates/virtualization/virtualmachine_edit.html +2 -8
- nautobot/virtualization/tests/test_filters.py +57 -166
- nautobot/virtualization/views.py +18 -15
- nautobot/wireless/__init__.py +0 -0
- nautobot/wireless/api/__init__.py +0 -0
- nautobot/wireless/api/serializers.py +44 -0
- nautobot/wireless/api/urls.py +20 -0
- nautobot/wireless/api/views.py +34 -0
- nautobot/wireless/apps.py +8 -0
- nautobot/wireless/choices.py +345 -0
- nautobot/wireless/factory.py +138 -0
- nautobot/wireless/filters.py +167 -0
- nautobot/wireless/forms.py +283 -0
- nautobot/wireless/homepage.py +19 -0
- nautobot/wireless/migrations/0001_initial.py +223 -0
- nautobot/wireless/migrations/__init__.py +0 -0
- nautobot/wireless/models.py +207 -0
- nautobot/wireless/navigation.py +105 -0
- nautobot/wireless/tables.py +244 -0
- nautobot/wireless/templates/wireless/radioprofile_retrieve.html +81 -0
- nautobot/wireless/templates/wireless/supporteddatarate_retrieve.html +26 -0
- nautobot/wireless/templates/wireless/wirelessnetwork_create.html +88 -0
- nautobot/wireless/templates/wireless/wirelessnetwork_retrieve.html +56 -0
- nautobot/wireless/tests/__init__.py +0 -0
- nautobot/wireless/tests/integration/__init__.py +0 -0
- nautobot/wireless/tests/integration/test_radio_profile.py +42 -0
- nautobot/wireless/tests/test_api.py +247 -0
- nautobot/wireless/tests/test_filters.py +82 -0
- nautobot/wireless/tests/test_models.py +22 -0
- nautobot/wireless/tests/test_views.py +378 -0
- nautobot/wireless/urls.py +13 -0
- nautobot/wireless/views.py +119 -0
- {nautobot-2.3.16.dist-info → nautobot-2.4.0.dist-info}/METADATA +9 -12
- {nautobot-2.3.16.dist-info → nautobot-2.4.0.dist-info}/RECORD +720 -549
- nautobot/core/utils/navigation.py +0 -54
- {nautobot-2.3.16.dist-info → nautobot-2.4.0.dist-info}/LICENSE.txt +0 -0
- {nautobot-2.3.16.dist-info → nautobot-2.4.0.dist-info}/NOTICE +0 -0
- {nautobot-2.3.16.dist-info → nautobot-2.4.0.dist-info}/WHEEL +0 -0
- {nautobot-2.3.16.dist-info → nautobot-2.4.0.dist-info}/entry_points.txt +0 -0
|
@@ -2112,6 +2112,27 @@
|
|
|
2112
2112
|
|
|
2113
2113
|
|
|
2114
2114
|
|
|
2115
|
+
|
|
2116
|
+
|
|
2117
|
+
|
|
2118
|
+
|
|
2119
|
+
|
|
2120
|
+
|
|
2121
|
+
<li class="md-nav__item">
|
|
2122
|
+
<a href="../../../user-guide/feature-guides/wireless-networks-and-controllers.html" class="md-nav__link">
|
|
2123
|
+
|
|
2124
|
+
|
|
2125
|
+
<span class="md-ellipsis">
|
|
2126
|
+
Wireless Networks and Controllers
|
|
2127
|
+
</span>
|
|
2128
|
+
|
|
2129
|
+
|
|
2130
|
+
</a>
|
|
2131
|
+
</li>
|
|
2132
|
+
|
|
2133
|
+
|
|
2134
|
+
|
|
2135
|
+
|
|
2115
2136
|
</ul>
|
|
2116
2137
|
</nav>
|
|
2117
2138
|
|
|
@@ -3944,6 +3965,27 @@
|
|
|
3944
3965
|
|
|
3945
3966
|
|
|
3946
3967
|
|
|
3968
|
+
|
|
3969
|
+
|
|
3970
|
+
|
|
3971
|
+
|
|
3972
|
+
|
|
3973
|
+
|
|
3974
|
+
<li class="md-nav__item">
|
|
3975
|
+
<a href="../../../user-guide/core-data-model/dcim/virtualdevicecontext.html" class="md-nav__link">
|
|
3976
|
+
|
|
3977
|
+
|
|
3978
|
+
<span class="md-ellipsis">
|
|
3979
|
+
Virtual Device Context
|
|
3980
|
+
</span>
|
|
3981
|
+
|
|
3982
|
+
|
|
3983
|
+
</a>
|
|
3984
|
+
</li>
|
|
3985
|
+
|
|
3986
|
+
|
|
3987
|
+
|
|
3988
|
+
|
|
3947
3989
|
</ul>
|
|
3948
3990
|
</nav>
|
|
3949
3991
|
|
|
@@ -4556,6 +4598,123 @@
|
|
|
4556
4598
|
|
|
4557
4599
|
|
|
4558
4600
|
|
|
4601
|
+
|
|
4602
|
+
|
|
4603
|
+
|
|
4604
|
+
|
|
4605
|
+
|
|
4606
|
+
|
|
4607
|
+
|
|
4608
|
+
|
|
4609
|
+
|
|
4610
|
+
|
|
4611
|
+
|
|
4612
|
+
|
|
4613
|
+
|
|
4614
|
+
<li class="md-nav__item md-nav__item--nested">
|
|
4615
|
+
|
|
4616
|
+
|
|
4617
|
+
|
|
4618
|
+
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_3_9" >
|
|
4619
|
+
|
|
4620
|
+
|
|
4621
|
+
|
|
4622
|
+
<div class="md-nav__link md-nav__container">
|
|
4623
|
+
<a href="../../../user-guide/core-data-model/wireless/index.html" class="md-nav__link ">
|
|
4624
|
+
|
|
4625
|
+
|
|
4626
|
+
<span class="md-ellipsis">
|
|
4627
|
+
Wireless
|
|
4628
|
+
</span>
|
|
4629
|
+
|
|
4630
|
+
|
|
4631
|
+
</a>
|
|
4632
|
+
|
|
4633
|
+
|
|
4634
|
+
<label class="md-nav__link " for="__nav_2_3_9" id="__nav_2_3_9_label" tabindex="0">
|
|
4635
|
+
<span class="md-nav__icon md-icon"></span>
|
|
4636
|
+
</label>
|
|
4637
|
+
|
|
4638
|
+
</div>
|
|
4639
|
+
|
|
4640
|
+
<nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_3_9_label" aria-expanded="false">
|
|
4641
|
+
<label class="md-nav__title" for="__nav_2_3_9">
|
|
4642
|
+
<span class="md-nav__icon md-icon"></span>
|
|
4643
|
+
Wireless
|
|
4644
|
+
</label>
|
|
4645
|
+
<ul class="md-nav__list" data-md-scrollfix>
|
|
4646
|
+
|
|
4647
|
+
|
|
4648
|
+
|
|
4649
|
+
|
|
4650
|
+
|
|
4651
|
+
|
|
4652
|
+
|
|
4653
|
+
<li class="md-nav__item">
|
|
4654
|
+
<a href="../../../user-guide/core-data-model/wireless/supporteddatarate.html" class="md-nav__link">
|
|
4655
|
+
|
|
4656
|
+
|
|
4657
|
+
<span class="md-ellipsis">
|
|
4658
|
+
Supported Data Rate
|
|
4659
|
+
</span>
|
|
4660
|
+
|
|
4661
|
+
|
|
4662
|
+
</a>
|
|
4663
|
+
</li>
|
|
4664
|
+
|
|
4665
|
+
|
|
4666
|
+
|
|
4667
|
+
|
|
4668
|
+
|
|
4669
|
+
|
|
4670
|
+
|
|
4671
|
+
|
|
4672
|
+
|
|
4673
|
+
|
|
4674
|
+
<li class="md-nav__item">
|
|
4675
|
+
<a href="../../../user-guide/core-data-model/wireless/radioprofile.html" class="md-nav__link">
|
|
4676
|
+
|
|
4677
|
+
|
|
4678
|
+
<span class="md-ellipsis">
|
|
4679
|
+
Radio Profile
|
|
4680
|
+
</span>
|
|
4681
|
+
|
|
4682
|
+
|
|
4683
|
+
</a>
|
|
4684
|
+
</li>
|
|
4685
|
+
|
|
4686
|
+
|
|
4687
|
+
|
|
4688
|
+
|
|
4689
|
+
|
|
4690
|
+
|
|
4691
|
+
|
|
4692
|
+
|
|
4693
|
+
|
|
4694
|
+
|
|
4695
|
+
<li class="md-nav__item">
|
|
4696
|
+
<a href="../../../user-guide/core-data-model/wireless/wirelessnetwork.html" class="md-nav__link">
|
|
4697
|
+
|
|
4698
|
+
|
|
4699
|
+
<span class="md-ellipsis">
|
|
4700
|
+
Wireless Network
|
|
4701
|
+
</span>
|
|
4702
|
+
|
|
4703
|
+
|
|
4704
|
+
</a>
|
|
4705
|
+
</li>
|
|
4706
|
+
|
|
4707
|
+
|
|
4708
|
+
|
|
4709
|
+
|
|
4710
|
+
</ul>
|
|
4711
|
+
</nav>
|
|
4712
|
+
|
|
4713
|
+
</li>
|
|
4714
|
+
|
|
4715
|
+
|
|
4716
|
+
|
|
4717
|
+
|
|
4559
4718
|
</ul>
|
|
4560
4719
|
</nav>
|
|
4561
4720
|
|
|
@@ -4767,6 +4926,27 @@
|
|
|
4767
4926
|
|
|
4768
4927
|
|
|
4769
4928
|
|
|
4929
|
+
<li class="md-nav__item">
|
|
4930
|
+
<a href="../../../user-guide/platform-functionality/events.html" class="md-nav__link">
|
|
4931
|
+
|
|
4932
|
+
|
|
4933
|
+
<span class="md-ellipsis">
|
|
4934
|
+
Event Notifications
|
|
4935
|
+
</span>
|
|
4936
|
+
|
|
4937
|
+
|
|
4938
|
+
</a>
|
|
4939
|
+
</li>
|
|
4940
|
+
|
|
4941
|
+
|
|
4942
|
+
|
|
4943
|
+
|
|
4944
|
+
|
|
4945
|
+
|
|
4946
|
+
|
|
4947
|
+
|
|
4948
|
+
|
|
4949
|
+
|
|
4770
4950
|
<li class="md-nav__item">
|
|
4771
4951
|
<a href="../../../user-guide/platform-functionality/exporttemplate.html" class="md-nav__link">
|
|
4772
4952
|
|
|
@@ -4841,7 +5021,7 @@
|
|
|
4841
5021
|
|
|
4842
5022
|
|
|
4843
5023
|
|
|
4844
|
-
<input class="md-nav__toggle md-toggle " type="checkbox" id="
|
|
5024
|
+
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_4_10" >
|
|
4845
5025
|
|
|
4846
5026
|
|
|
4847
5027
|
|
|
@@ -4857,14 +5037,14 @@
|
|
|
4857
5037
|
</a>
|
|
4858
5038
|
|
|
4859
5039
|
|
|
4860
|
-
<label class="md-nav__link " for="
|
|
5040
|
+
<label class="md-nav__link " for="__nav_2_4_10" id="__nav_2_4_10_label" tabindex="0">
|
|
4861
5041
|
<span class="md-nav__icon md-icon"></span>
|
|
4862
5042
|
</label>
|
|
4863
5043
|
|
|
4864
5044
|
</div>
|
|
4865
5045
|
|
|
4866
|
-
<nav class="md-nav" data-md-level="3" aria-labelledby="
|
|
4867
|
-
<label class="md-nav__title" for="
|
|
5046
|
+
<nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_4_10_label" aria-expanded="false">
|
|
5047
|
+
<label class="md-nav__title" for="__nav_2_4_10">
|
|
4868
5048
|
<span class="md-nav__icon md-icon"></span>
|
|
4869
5049
|
GraphQL
|
|
4870
5050
|
</label>
|
|
@@ -4937,7 +5117,7 @@
|
|
|
4937
5117
|
|
|
4938
5118
|
|
|
4939
5119
|
|
|
4940
|
-
<input class="md-nav__toggle md-toggle " type="checkbox" id="
|
|
5120
|
+
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_4_12" >
|
|
4941
5121
|
|
|
4942
5122
|
|
|
4943
5123
|
|
|
@@ -4953,14 +5133,14 @@
|
|
|
4953
5133
|
</a>
|
|
4954
5134
|
|
|
4955
5135
|
|
|
4956
|
-
<label class="md-nav__link " for="
|
|
5136
|
+
<label class="md-nav__link " for="__nav_2_4_12" id="__nav_2_4_12_label" tabindex="0">
|
|
4957
5137
|
<span class="md-nav__icon md-icon"></span>
|
|
4958
5138
|
</label>
|
|
4959
5139
|
|
|
4960
5140
|
</div>
|
|
4961
5141
|
|
|
4962
|
-
<nav class="md-nav" data-md-level="3" aria-labelledby="
|
|
4963
|
-
<label class="md-nav__title" for="
|
|
5142
|
+
<nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_4_12_label" aria-expanded="false">
|
|
5143
|
+
<label class="md-nav__title" for="__nav_2_4_12">
|
|
4964
5144
|
<span class="md-nav__icon md-icon"></span>
|
|
4965
5145
|
Jobs
|
|
4966
5146
|
</label>
|
|
@@ -4972,6 +5152,27 @@
|
|
|
4972
5152
|
|
|
4973
5153
|
|
|
4974
5154
|
|
|
5155
|
+
<li class="md-nav__item">
|
|
5156
|
+
<a href="../../../user-guide/platform-functionality/jobs/kubernetes-job-support.html" class="md-nav__link">
|
|
5157
|
+
|
|
5158
|
+
|
|
5159
|
+
<span class="md-ellipsis">
|
|
5160
|
+
Kubernetes Job Support
|
|
5161
|
+
</span>
|
|
5162
|
+
|
|
5163
|
+
|
|
5164
|
+
</a>
|
|
5165
|
+
</li>
|
|
5166
|
+
|
|
5167
|
+
|
|
5168
|
+
|
|
5169
|
+
|
|
5170
|
+
|
|
5171
|
+
|
|
5172
|
+
|
|
5173
|
+
|
|
5174
|
+
|
|
5175
|
+
|
|
4975
5176
|
<li class="md-nav__item">
|
|
4976
5177
|
<a href="../../../user-guide/platform-functionality/jobs/jobbutton.html" class="md-nav__link">
|
|
4977
5178
|
|
|
@@ -5035,6 +5236,27 @@
|
|
|
5035
5236
|
|
|
5036
5237
|
|
|
5037
5238
|
|
|
5239
|
+
<li class="md-nav__item">
|
|
5240
|
+
<a href="../../../user-guide/platform-functionality/jobs/jobqueue.html" class="md-nav__link">
|
|
5241
|
+
|
|
5242
|
+
|
|
5243
|
+
<span class="md-ellipsis">
|
|
5244
|
+
Job Queues
|
|
5245
|
+
</span>
|
|
5246
|
+
|
|
5247
|
+
|
|
5248
|
+
</a>
|
|
5249
|
+
</li>
|
|
5250
|
+
|
|
5251
|
+
|
|
5252
|
+
|
|
5253
|
+
|
|
5254
|
+
|
|
5255
|
+
|
|
5256
|
+
|
|
5257
|
+
|
|
5258
|
+
|
|
5259
|
+
|
|
5038
5260
|
<li class="md-nav__item">
|
|
5039
5261
|
<a href="../../../user-guide/platform-functionality/jobs/job-scheduling-and-approvals.html" class="md-nav__link">
|
|
5040
5262
|
|
|
@@ -5148,6 +5370,27 @@
|
|
|
5148
5370
|
|
|
5149
5371
|
|
|
5150
5372
|
|
|
5373
|
+
<li class="md-nav__item">
|
|
5374
|
+
<a href="../../../user-guide/platform-functionality/rendering-jinja-templates.html" class="md-nav__link">
|
|
5375
|
+
|
|
5376
|
+
|
|
5377
|
+
<span class="md-ellipsis">
|
|
5378
|
+
Rendering Jinja Templates
|
|
5379
|
+
</span>
|
|
5380
|
+
|
|
5381
|
+
|
|
5382
|
+
</a>
|
|
5383
|
+
</li>
|
|
5384
|
+
|
|
5385
|
+
|
|
5386
|
+
|
|
5387
|
+
|
|
5388
|
+
|
|
5389
|
+
|
|
5390
|
+
|
|
5391
|
+
|
|
5392
|
+
|
|
5393
|
+
|
|
5151
5394
|
|
|
5152
5395
|
|
|
5153
5396
|
|
|
@@ -5159,7 +5402,7 @@
|
|
|
5159
5402
|
|
|
5160
5403
|
|
|
5161
5404
|
|
|
5162
|
-
<input class="md-nav__toggle md-toggle " type="checkbox" id="
|
|
5405
|
+
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_4_18" >
|
|
5163
5406
|
|
|
5164
5407
|
|
|
5165
5408
|
|
|
@@ -5175,14 +5418,14 @@
|
|
|
5175
5418
|
</a>
|
|
5176
5419
|
|
|
5177
5420
|
|
|
5178
|
-
<label class="md-nav__link " for="
|
|
5421
|
+
<label class="md-nav__link " for="__nav_2_4_18" id="__nav_2_4_18_label" tabindex="0">
|
|
5179
5422
|
<span class="md-nav__icon md-icon"></span>
|
|
5180
5423
|
</label>
|
|
5181
5424
|
|
|
5182
5425
|
</div>
|
|
5183
5426
|
|
|
5184
|
-
<nav class="md-nav" data-md-level="3" aria-labelledby="
|
|
5185
|
-
<label class="md-nav__title" for="
|
|
5427
|
+
<nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_4_18_label" aria-expanded="false">
|
|
5428
|
+
<label class="md-nav__title" for="__nav_2_4_18">
|
|
5186
5429
|
<span class="md-nav__icon md-icon"></span>
|
|
5187
5430
|
REST API
|
|
5188
5431
|
</label>
|
|
@@ -5402,10 +5645,10 @@
|
|
|
5402
5645
|
|
|
5403
5646
|
|
|
5404
5647
|
|
|
5405
|
-
<input class="md-nav__toggle md-toggle " type="checkbox" id="
|
|
5648
|
+
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_4_25" >
|
|
5406
5649
|
|
|
5407
5650
|
|
|
5408
|
-
<label class="md-nav__link" for="
|
|
5651
|
+
<label class="md-nav__link" for="__nav_2_4_25" id="__nav_2_4_25_label" tabindex="0">
|
|
5409
5652
|
|
|
5410
5653
|
|
|
5411
5654
|
<span class="md-ellipsis">
|
|
@@ -5416,8 +5659,8 @@
|
|
|
5416
5659
|
<span class="md-nav__icon md-icon"></span>
|
|
5417
5660
|
</label>
|
|
5418
5661
|
|
|
5419
|
-
<nav class="md-nav" data-md-level="3" aria-labelledby="
|
|
5420
|
-
<label class="md-nav__title" for="
|
|
5662
|
+
<nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_4_25_label" aria-expanded="false">
|
|
5663
|
+
<label class="md-nav__title" for="__nav_2_4_25">
|
|
5421
5664
|
<span class="md-nav__icon md-icon"></span>
|
|
5422
5665
|
Users
|
|
5423
5666
|
</label>
|
|
@@ -6831,6 +7074,27 @@
|
|
|
6831
7074
|
|
|
6832
7075
|
|
|
6833
7076
|
|
|
7077
|
+
<li class="md-nav__item">
|
|
7078
|
+
<a href="events.html" class="md-nav__link">
|
|
7079
|
+
|
|
7080
|
+
|
|
7081
|
+
<span class="md-ellipsis">
|
|
7082
|
+
nautobot.apps.events
|
|
7083
|
+
</span>
|
|
7084
|
+
|
|
7085
|
+
|
|
7086
|
+
</a>
|
|
7087
|
+
</li>
|
|
7088
|
+
|
|
7089
|
+
|
|
7090
|
+
|
|
7091
|
+
|
|
7092
|
+
|
|
7093
|
+
|
|
7094
|
+
|
|
7095
|
+
|
|
7096
|
+
|
|
7097
|
+
|
|
6834
7098
|
<li class="md-nav__item">
|
|
6835
7099
|
<a href="exceptions.html" class="md-nav__link">
|
|
6836
7100
|
|
|
@@ -7104,6 +7368,15 @@
|
|
|
7104
7368
|
</span>
|
|
7105
7369
|
</a>
|
|
7106
7370
|
|
|
7371
|
+
</li>
|
|
7372
|
+
|
|
7373
|
+
<li class="md-nav__item">
|
|
7374
|
+
<a href="#nautobot.apps.testing.APITestCase.get_m2m_fields" class="md-nav__link">
|
|
7375
|
+
<span class="md-ellipsis">
|
|
7376
|
+
get_m2m_fields
|
|
7377
|
+
</span>
|
|
7378
|
+
</a>
|
|
7379
|
+
|
|
7107
7380
|
</li>
|
|
7108
7381
|
|
|
7109
7382
|
<li class="md-nav__item">
|
|
@@ -7624,15 +7897,6 @@
|
|
|
7624
7897
|
</span>
|
|
7625
7898
|
</a>
|
|
7626
7899
|
|
|
7627
|
-
</li>
|
|
7628
|
-
|
|
7629
|
-
<li class="md-nav__item">
|
|
7630
|
-
<a href="#nautobot.apps.testing.FilterTestCases.FilterTestCase.test_q_filter_exists" class="md-nav__link">
|
|
7631
|
-
<span class="md-ellipsis">
|
|
7632
|
-
test_q_filter_exists
|
|
7633
|
-
</span>
|
|
7634
|
-
</a>
|
|
7635
|
-
|
|
7636
7900
|
</li>
|
|
7637
7901
|
|
|
7638
7902
|
<li class="md-nav__item">
|
|
@@ -7665,45 +7929,15 @@
|
|
|
7665
7929
|
</span>
|
|
7666
7930
|
</a>
|
|
7667
7931
|
|
|
7668
|
-
|
|
7669
|
-
<ul class="md-nav__list">
|
|
7932
|
+
</li>
|
|
7670
7933
|
|
|
7671
7934
|
<li class="md-nav__item">
|
|
7672
|
-
<a href="#nautobot.apps.testing.FilterTestCases.
|
|
7935
|
+
<a href="#nautobot.apps.testing.FilterTestCases.NameSlugFilterTestCase" class="md-nav__link">
|
|
7673
7936
|
<span class="md-ellipsis">
|
|
7674
|
-
|
|
7937
|
+
NameSlugFilterTestCase
|
|
7675
7938
|
</span>
|
|
7676
7939
|
</a>
|
|
7677
7940
|
|
|
7678
|
-
</li>
|
|
7679
|
-
|
|
7680
|
-
</ul>
|
|
7681
|
-
</nav>
|
|
7682
|
-
|
|
7683
|
-
</li>
|
|
7684
|
-
|
|
7685
|
-
<li class="md-nav__item">
|
|
7686
|
-
<a href="#nautobot.apps.testing.FilterTestCases.NameSlugFilterTestCase" class="md-nav__link">
|
|
7687
|
-
<span class="md-ellipsis">
|
|
7688
|
-
NameSlugFilterTestCase
|
|
7689
|
-
</span>
|
|
7690
|
-
</a>
|
|
7691
|
-
|
|
7692
|
-
<nav class="md-nav" aria-label="NameSlugFilterTestCase">
|
|
7693
|
-
<ul class="md-nav__list">
|
|
7694
|
-
|
|
7695
|
-
<li class="md-nav__item">
|
|
7696
|
-
<a href="#nautobot.apps.testing.FilterTestCases.NameSlugFilterTestCase.test_slug" class="md-nav__link">
|
|
7697
|
-
<span class="md-ellipsis">
|
|
7698
|
-
test_slug
|
|
7699
|
-
</span>
|
|
7700
|
-
</a>
|
|
7701
|
-
|
|
7702
|
-
</li>
|
|
7703
|
-
|
|
7704
|
-
</ul>
|
|
7705
|
-
</nav>
|
|
7706
|
-
|
|
7707
7941
|
</li>
|
|
7708
7942
|
|
|
7709
7943
|
<li class="md-nav__item">
|
|
@@ -8292,15 +8526,6 @@
|
|
|
8292
8526
|
</span>
|
|
8293
8527
|
</a>
|
|
8294
8528
|
|
|
8295
|
-
</li>
|
|
8296
|
-
|
|
8297
|
-
<li class="md-nav__item">
|
|
8298
|
-
<a href="#nautobot.apps.testing.ViewTestCases.BulkImportObjectsViewTestCase" class="md-nav__link">
|
|
8299
|
-
<span class="md-ellipsis">
|
|
8300
|
-
BulkImportObjectsViewTestCase
|
|
8301
|
-
</span>
|
|
8302
|
-
</a>
|
|
8303
|
-
|
|
8304
8529
|
</li>
|
|
8305
8530
|
|
|
8306
8531
|
<li class="md-nav__item">
|
|
@@ -8328,30 +8553,6 @@
|
|
|
8328
8553
|
</span>
|
|
8329
8554
|
</a>
|
|
8330
8555
|
|
|
8331
|
-
<nav class="md-nav" aria-label="CreateObjectViewTestCase">
|
|
8332
|
-
<ul class="md-nav__list">
|
|
8333
|
-
|
|
8334
|
-
<li class="md-nav__item">
|
|
8335
|
-
<a href="#nautobot.apps.testing.ViewTestCases.CreateObjectViewTestCase.test_slug_autocreation" class="md-nav__link">
|
|
8336
|
-
<span class="md-ellipsis">
|
|
8337
|
-
test_slug_autocreation
|
|
8338
|
-
</span>
|
|
8339
|
-
</a>
|
|
8340
|
-
|
|
8341
|
-
</li>
|
|
8342
|
-
|
|
8343
|
-
<li class="md-nav__item">
|
|
8344
|
-
<a href="#nautobot.apps.testing.ViewTestCases.CreateObjectViewTestCase.test_slug_not_modified" class="md-nav__link">
|
|
8345
|
-
<span class="md-ellipsis">
|
|
8346
|
-
test_slug_not_modified
|
|
8347
|
-
</span>
|
|
8348
|
-
</a>
|
|
8349
|
-
|
|
8350
|
-
</li>
|
|
8351
|
-
|
|
8352
|
-
</ul>
|
|
8353
|
-
</nav>
|
|
8354
|
-
|
|
8355
8556
|
</li>
|
|
8356
8557
|
|
|
8357
8558
|
<li class="md-nav__item">
|
|
@@ -8943,6 +9144,123 @@
|
|
|
8943
9144
|
|
|
8944
9145
|
|
|
8945
9146
|
|
|
9147
|
+
|
|
9148
|
+
|
|
9149
|
+
|
|
9150
|
+
|
|
9151
|
+
|
|
9152
|
+
|
|
9153
|
+
|
|
9154
|
+
|
|
9155
|
+
|
|
9156
|
+
|
|
9157
|
+
|
|
9158
|
+
|
|
9159
|
+
|
|
9160
|
+
<li class="md-nav__item md-nav__item--nested">
|
|
9161
|
+
|
|
9162
|
+
|
|
9163
|
+
|
|
9164
|
+
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_3_2_9_5" >
|
|
9165
|
+
|
|
9166
|
+
|
|
9167
|
+
|
|
9168
|
+
<div class="md-nav__link md-nav__container">
|
|
9169
|
+
<a href="../../../development/apps/migration/ui-component-framework/index.html" class="md-nav__link ">
|
|
9170
|
+
|
|
9171
|
+
|
|
9172
|
+
<span class="md-ellipsis">
|
|
9173
|
+
UI Component Framework
|
|
9174
|
+
</span>
|
|
9175
|
+
|
|
9176
|
+
|
|
9177
|
+
</a>
|
|
9178
|
+
|
|
9179
|
+
|
|
9180
|
+
<label class="md-nav__link " for="__nav_3_2_9_5" id="__nav_3_2_9_5_label" tabindex="0">
|
|
9181
|
+
<span class="md-nav__icon md-icon"></span>
|
|
9182
|
+
</label>
|
|
9183
|
+
|
|
9184
|
+
</div>
|
|
9185
|
+
|
|
9186
|
+
<nav class="md-nav" data-md-level="4" aria-labelledby="__nav_3_2_9_5_label" aria-expanded="false">
|
|
9187
|
+
<label class="md-nav__title" for="__nav_3_2_9_5">
|
|
9188
|
+
<span class="md-nav__icon md-icon"></span>
|
|
9189
|
+
UI Component Framework
|
|
9190
|
+
</label>
|
|
9191
|
+
<ul class="md-nav__list" data-md-scrollfix>
|
|
9192
|
+
|
|
9193
|
+
|
|
9194
|
+
|
|
9195
|
+
|
|
9196
|
+
|
|
9197
|
+
|
|
9198
|
+
|
|
9199
|
+
<li class="md-nav__item">
|
|
9200
|
+
<a href="../../../development/apps/migration/ui-component-framework/migration-steps.html" class="md-nav__link">
|
|
9201
|
+
|
|
9202
|
+
|
|
9203
|
+
<span class="md-ellipsis">
|
|
9204
|
+
Migration steps
|
|
9205
|
+
</span>
|
|
9206
|
+
|
|
9207
|
+
|
|
9208
|
+
</a>
|
|
9209
|
+
</li>
|
|
9210
|
+
|
|
9211
|
+
|
|
9212
|
+
|
|
9213
|
+
|
|
9214
|
+
|
|
9215
|
+
|
|
9216
|
+
|
|
9217
|
+
|
|
9218
|
+
|
|
9219
|
+
|
|
9220
|
+
<li class="md-nav__item">
|
|
9221
|
+
<a href="../../../development/apps/migration/ui-component-framework/custom-content.html" class="md-nav__link">
|
|
9222
|
+
|
|
9223
|
+
|
|
9224
|
+
<span class="md-ellipsis">
|
|
9225
|
+
Custom content
|
|
9226
|
+
</span>
|
|
9227
|
+
|
|
9228
|
+
|
|
9229
|
+
</a>
|
|
9230
|
+
</li>
|
|
9231
|
+
|
|
9232
|
+
|
|
9233
|
+
|
|
9234
|
+
|
|
9235
|
+
|
|
9236
|
+
|
|
9237
|
+
|
|
9238
|
+
|
|
9239
|
+
|
|
9240
|
+
|
|
9241
|
+
<li class="md-nav__item">
|
|
9242
|
+
<a href="../../../development/apps/migration/ui-component-framework/best-practices.html" class="md-nav__link">
|
|
9243
|
+
|
|
9244
|
+
|
|
9245
|
+
<span class="md-ellipsis">
|
|
9246
|
+
Best practices
|
|
9247
|
+
</span>
|
|
9248
|
+
|
|
9249
|
+
|
|
9250
|
+
</a>
|
|
9251
|
+
</li>
|
|
9252
|
+
|
|
9253
|
+
|
|
9254
|
+
|
|
9255
|
+
|
|
9256
|
+
</ul>
|
|
9257
|
+
</nav>
|
|
9258
|
+
|
|
9259
|
+
</li>
|
|
9260
|
+
|
|
9261
|
+
|
|
9262
|
+
|
|
9263
|
+
|
|
8946
9264
|
</ul>
|
|
8947
9265
|
</nav>
|
|
8948
9266
|
|
|
@@ -9288,6 +9606,27 @@
|
|
|
9288
9606
|
|
|
9289
9607
|
|
|
9290
9608
|
|
|
9609
|
+
<li class="md-nav__item">
|
|
9610
|
+
<a href="../../../development/core/minikube-dev-environment-for-k8s-jobs.html" class="md-nav__link">
|
|
9611
|
+
|
|
9612
|
+
|
|
9613
|
+
<span class="md-ellipsis">
|
|
9614
|
+
Minikube Dev Environment for K8s Jobs
|
|
9615
|
+
</span>
|
|
9616
|
+
|
|
9617
|
+
|
|
9618
|
+
</a>
|
|
9619
|
+
</li>
|
|
9620
|
+
|
|
9621
|
+
|
|
9622
|
+
|
|
9623
|
+
|
|
9624
|
+
|
|
9625
|
+
|
|
9626
|
+
|
|
9627
|
+
|
|
9628
|
+
|
|
9629
|
+
|
|
9291
9630
|
<li class="md-nav__item">
|
|
9292
9631
|
<a href="../../../development/core/model-checklist.html" class="md-nav__link">
|
|
9293
9632
|
|
|
@@ -9477,6 +9816,27 @@
|
|
|
9477
9816
|
|
|
9478
9817
|
|
|
9479
9818
|
|
|
9819
|
+
<li class="md-nav__item">
|
|
9820
|
+
<a href="../../../development/core/ui-component-framework.html" class="md-nav__link">
|
|
9821
|
+
|
|
9822
|
+
|
|
9823
|
+
<span class="md-ellipsis">
|
|
9824
|
+
UI Component Framework
|
|
9825
|
+
</span>
|
|
9826
|
+
|
|
9827
|
+
|
|
9828
|
+
</a>
|
|
9829
|
+
</li>
|
|
9830
|
+
|
|
9831
|
+
|
|
9832
|
+
|
|
9833
|
+
|
|
9834
|
+
|
|
9835
|
+
|
|
9836
|
+
|
|
9837
|
+
|
|
9838
|
+
|
|
9839
|
+
|
|
9480
9840
|
<li class="md-nav__item">
|
|
9481
9841
|
<a href="../../../development/core/release-checklist.html" class="md-nav__link">
|
|
9482
9842
|
|
|
@@ -9559,6 +9919,27 @@
|
|
|
9559
9919
|
|
|
9560
9920
|
|
|
9561
9921
|
|
|
9922
|
+
<li class="md-nav__item">
|
|
9923
|
+
<a href="../../../release-notes/version-2.4.html" class="md-nav__link">
|
|
9924
|
+
|
|
9925
|
+
|
|
9926
|
+
<span class="md-ellipsis">
|
|
9927
|
+
Version 2.4
|
|
9928
|
+
</span>
|
|
9929
|
+
|
|
9930
|
+
|
|
9931
|
+
</a>
|
|
9932
|
+
</li>
|
|
9933
|
+
|
|
9934
|
+
|
|
9935
|
+
|
|
9936
|
+
|
|
9937
|
+
|
|
9938
|
+
|
|
9939
|
+
|
|
9940
|
+
|
|
9941
|
+
|
|
9942
|
+
|
|
9562
9943
|
<li class="md-nav__item">
|
|
9563
9944
|
<a href="../../../release-notes/version-2.3.html" class="md-nav__link">
|
|
9564
9945
|
|
|
@@ -10163,6 +10544,15 @@
|
|
|
10163
10544
|
</span>
|
|
10164
10545
|
</a>
|
|
10165
10546
|
|
|
10547
|
+
</li>
|
|
10548
|
+
|
|
10549
|
+
<li class="md-nav__item">
|
|
10550
|
+
<a href="#nautobot.apps.testing.APITestCase.get_m2m_fields" class="md-nav__link">
|
|
10551
|
+
<span class="md-ellipsis">
|
|
10552
|
+
get_m2m_fields
|
|
10553
|
+
</span>
|
|
10554
|
+
</a>
|
|
10555
|
+
|
|
10166
10556
|
</li>
|
|
10167
10557
|
|
|
10168
10558
|
<li class="md-nav__item">
|
|
@@ -10683,15 +11073,6 @@
|
|
|
10683
11073
|
</span>
|
|
10684
11074
|
</a>
|
|
10685
11075
|
|
|
10686
|
-
</li>
|
|
10687
|
-
|
|
10688
|
-
<li class="md-nav__item">
|
|
10689
|
-
<a href="#nautobot.apps.testing.FilterTestCases.FilterTestCase.test_q_filter_exists" class="md-nav__link">
|
|
10690
|
-
<span class="md-ellipsis">
|
|
10691
|
-
test_q_filter_exists
|
|
10692
|
-
</span>
|
|
10693
|
-
</a>
|
|
10694
|
-
|
|
10695
11076
|
</li>
|
|
10696
11077
|
|
|
10697
11078
|
<li class="md-nav__item">
|
|
@@ -10724,21 +11105,6 @@
|
|
|
10724
11105
|
</span>
|
|
10725
11106
|
</a>
|
|
10726
11107
|
|
|
10727
|
-
<nav class="md-nav" aria-label="NameOnlyFilterTestCase">
|
|
10728
|
-
<ul class="md-nav__list">
|
|
10729
|
-
|
|
10730
|
-
<li class="md-nav__item">
|
|
10731
|
-
<a href="#nautobot.apps.testing.FilterTestCases.NameOnlyFilterTestCase.test_name" class="md-nav__link">
|
|
10732
|
-
<span class="md-ellipsis">
|
|
10733
|
-
test_name
|
|
10734
|
-
</span>
|
|
10735
|
-
</a>
|
|
10736
|
-
|
|
10737
|
-
</li>
|
|
10738
|
-
|
|
10739
|
-
</ul>
|
|
10740
|
-
</nav>
|
|
10741
|
-
|
|
10742
11108
|
</li>
|
|
10743
11109
|
|
|
10744
11110
|
<li class="md-nav__item">
|
|
@@ -10748,21 +11114,6 @@
|
|
|
10748
11114
|
</span>
|
|
10749
11115
|
</a>
|
|
10750
11116
|
|
|
10751
|
-
<nav class="md-nav" aria-label="NameSlugFilterTestCase">
|
|
10752
|
-
<ul class="md-nav__list">
|
|
10753
|
-
|
|
10754
|
-
<li class="md-nav__item">
|
|
10755
|
-
<a href="#nautobot.apps.testing.FilterTestCases.NameSlugFilterTestCase.test_slug" class="md-nav__link">
|
|
10756
|
-
<span class="md-ellipsis">
|
|
10757
|
-
test_slug
|
|
10758
|
-
</span>
|
|
10759
|
-
</a>
|
|
10760
|
-
|
|
10761
|
-
</li>
|
|
10762
|
-
|
|
10763
|
-
</ul>
|
|
10764
|
-
</nav>
|
|
10765
|
-
|
|
10766
11117
|
</li>
|
|
10767
11118
|
|
|
10768
11119
|
<li class="md-nav__item">
|
|
@@ -11354,25 +11705,16 @@
|
|
|
11354
11705
|
</li>
|
|
11355
11706
|
|
|
11356
11707
|
<li class="md-nav__item">
|
|
11357
|
-
<a href="#nautobot.apps.testing.ViewTestCases.
|
|
11708
|
+
<a href="#nautobot.apps.testing.ViewTestCases.BulkRenameObjectsViewTestCase" class="md-nav__link">
|
|
11358
11709
|
<span class="md-ellipsis">
|
|
11359
|
-
|
|
11710
|
+
BulkRenameObjectsViewTestCase
|
|
11360
11711
|
</span>
|
|
11361
11712
|
</a>
|
|
11362
11713
|
|
|
11363
11714
|
</li>
|
|
11364
11715
|
|
|
11365
11716
|
<li class="md-nav__item">
|
|
11366
|
-
<a href="#nautobot.apps.testing.ViewTestCases.
|
|
11367
|
-
<span class="md-ellipsis">
|
|
11368
|
-
BulkRenameObjectsViewTestCase
|
|
11369
|
-
</span>
|
|
11370
|
-
</a>
|
|
11371
|
-
|
|
11372
|
-
</li>
|
|
11373
|
-
|
|
11374
|
-
<li class="md-nav__item">
|
|
11375
|
-
<a href="#nautobot.apps.testing.ViewTestCases.CreateMultipleObjectsViewTestCase" class="md-nav__link">
|
|
11717
|
+
<a href="#nautobot.apps.testing.ViewTestCases.CreateMultipleObjectsViewTestCase" class="md-nav__link">
|
|
11376
11718
|
<span class="md-ellipsis">
|
|
11377
11719
|
CreateMultipleObjectsViewTestCase
|
|
11378
11720
|
</span>
|
|
@@ -11387,30 +11729,6 @@
|
|
|
11387
11729
|
</span>
|
|
11388
11730
|
</a>
|
|
11389
11731
|
|
|
11390
|
-
<nav class="md-nav" aria-label="CreateObjectViewTestCase">
|
|
11391
|
-
<ul class="md-nav__list">
|
|
11392
|
-
|
|
11393
|
-
<li class="md-nav__item">
|
|
11394
|
-
<a href="#nautobot.apps.testing.ViewTestCases.CreateObjectViewTestCase.test_slug_autocreation" class="md-nav__link">
|
|
11395
|
-
<span class="md-ellipsis">
|
|
11396
|
-
test_slug_autocreation
|
|
11397
|
-
</span>
|
|
11398
|
-
</a>
|
|
11399
|
-
|
|
11400
|
-
</li>
|
|
11401
|
-
|
|
11402
|
-
<li class="md-nav__item">
|
|
11403
|
-
<a href="#nautobot.apps.testing.ViewTestCases.CreateObjectViewTestCase.test_slug_not_modified" class="md-nav__link">
|
|
11404
|
-
<span class="md-ellipsis">
|
|
11405
|
-
test_slug_not_modified
|
|
11406
|
-
</span>
|
|
11407
|
-
</a>
|
|
11408
|
-
|
|
11409
|
-
</li>
|
|
11410
|
-
|
|
11411
|
-
</ul>
|
|
11412
|
-
</nav>
|
|
11413
|
-
|
|
11414
11732
|
</li>
|
|
11415
11733
|
|
|
11416
11734
|
<li class="md-nav__item">
|
|
@@ -11700,7 +12018,12 @@
|
|
|
11700
12018
|
|
|
11701
12019
|
<div class="doc doc-contents first">
|
|
11702
12020
|
|
|
11703
|
-
|
|
12021
|
+
<p>Utilities for apps to implement test automation.</p>
|
|
12022
|
+
|
|
12023
|
+
|
|
12024
|
+
|
|
12025
|
+
|
|
12026
|
+
|
|
11704
12027
|
|
|
11705
12028
|
|
|
11706
12029
|
|
|
@@ -11726,15 +12049,20 @@
|
|
|
11726
12049
|
|
|
11727
12050
|
<div class="doc doc-contents ">
|
|
11728
12051
|
<p class="doc doc-class-bases">
|
|
11729
|
-
Bases: <code><
|
|
12052
|
+
Bases: <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.views.ModelTestCase" href="#nautobot.apps.testing.ModelTestCase">ModelTestCase</a></code></p>
|
|
11730
12053
|
|
|
11731
12054
|
|
|
11732
|
-
|
|
12055
|
+
<p>Base test case for API requests.</p>
|
|
11733
12056
|
<p>api_version: Specific API version to test. Leave unset to test the default behavior. Override with set_api_version()</p>
|
|
11734
12057
|
|
|
11735
12058
|
|
|
11736
12059
|
|
|
11737
12060
|
|
|
12061
|
+
|
|
12062
|
+
|
|
12063
|
+
|
|
12064
|
+
|
|
12065
|
+
|
|
11738
12066
|
<div class="doc doc-children">
|
|
11739
12067
|
|
|
11740
12068
|
|
|
@@ -11756,7 +12084,7 @@
|
|
|
11756
12084
|
|
|
11757
12085
|
<div class="doc doc-contents ">
|
|
11758
12086
|
|
|
11759
|
-
|
|
12087
|
+
<p>Check an API response for content that should not be exposed in the API.</p>
|
|
11760
12088
|
<p>If a specific API has a false failure here (maybe it has security-related strings as model flags or something?),
|
|
11761
12089
|
its test case should overload self.VERBOTEN_STRINGS appropriately.</p>
|
|
11762
12090
|
|
|
@@ -11767,6 +12095,23 @@ its test case should overload self.VERBOTEN_STRINGS appropriately.</p>
|
|
|
11767
12095
|
<div class="doc doc-object doc-function">
|
|
11768
12096
|
|
|
11769
12097
|
|
|
12098
|
+
<h3 id="nautobot.apps.testing.APITestCase.get_m2m_fields" class="doc doc-heading">
|
|
12099
|
+
<code class="highlight language-python"><span class="n">get_m2m_fields</span><span class="p">()</span></code>
|
|
12100
|
+
|
|
12101
|
+
<a href="#nautobot.apps.testing.APITestCase.get_m2m_fields" class="headerlink" title="Permanent link">¶</a></h3>
|
|
12102
|
+
|
|
12103
|
+
|
|
12104
|
+
<div class="doc doc-contents ">
|
|
12105
|
+
|
|
12106
|
+
<p>Get serializer field names that are many-to-many or one-to-many and thus affected by ?exclude_m2m=true.</p>
|
|
12107
|
+
|
|
12108
|
+
</div>
|
|
12109
|
+
|
|
12110
|
+
</div>
|
|
12111
|
+
|
|
12112
|
+
<div class="doc doc-object doc-function">
|
|
12113
|
+
|
|
12114
|
+
|
|
11770
12115
|
<h3 id="nautobot.apps.testing.APITestCase.setUp" class="doc doc-heading">
|
|
11771
12116
|
<code class="highlight language-python"><span class="n">setUp</span><span class="p">()</span></code>
|
|
11772
12117
|
|
|
@@ -11775,7 +12120,7 @@ its test case should overload self.VERBOTEN_STRINGS appropriately.</p>
|
|
|
11775
12120
|
|
|
11776
12121
|
<div class="doc doc-contents ">
|
|
11777
12122
|
|
|
11778
|
-
|
|
12123
|
+
<p>Create a token for API calls.</p>
|
|
11779
12124
|
|
|
11780
12125
|
</div>
|
|
11781
12126
|
|
|
@@ -11792,7 +12137,7 @@ its test case should overload self.VERBOTEN_STRINGS appropriately.</p>
|
|
|
11792
12137
|
|
|
11793
12138
|
<div class="doc doc-contents ">
|
|
11794
12139
|
|
|
11795
|
-
|
|
12140
|
+
<p>Set or unset a specific API version for requests in this test case.</p>
|
|
11796
12141
|
|
|
11797
12142
|
</div>
|
|
11798
12143
|
|
|
@@ -11819,7 +12164,12 @@ its test case should overload self.VERBOTEN_STRINGS appropriately.</p>
|
|
|
11819
12164
|
|
|
11820
12165
|
<div class="doc doc-contents ">
|
|
11821
12166
|
<p class="doc doc-class-bases">
|
|
11822
|
-
Bases: <code><
|
|
12167
|
+
Bases: <code><span title="rest_framework.test.APITransactionTestCase">APITransactionTestCase</span></code>, <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.mixins.NautobotTestCaseMixin" href="#nautobot.apps.testing.NautobotTestCaseMixin">NautobotTestCaseMixin</a></code></p>
|
|
12168
|
+
|
|
12169
|
+
|
|
12170
|
+
|
|
12171
|
+
|
|
12172
|
+
|
|
11823
12173
|
|
|
11824
12174
|
|
|
11825
12175
|
|
|
@@ -11846,7 +12196,7 @@ its test case should overload self.VERBOTEN_STRINGS appropriately.</p>
|
|
|
11846
12196
|
|
|
11847
12197
|
<div class="doc doc-contents ">
|
|
11848
12198
|
|
|
11849
|
-
|
|
12199
|
+
<p>Create a superuser and token for API calls.</p>
|
|
11850
12200
|
|
|
11851
12201
|
</div>
|
|
11852
12202
|
|
|
@@ -11877,6 +12227,11 @@ its test case should overload self.VERBOTEN_STRINGS appropriately.</p>
|
|
|
11877
12227
|
|
|
11878
12228
|
|
|
11879
12229
|
|
|
12230
|
+
|
|
12231
|
+
|
|
12232
|
+
|
|
12233
|
+
|
|
12234
|
+
|
|
11880
12235
|
<div class="doc doc-children">
|
|
11881
12236
|
|
|
11882
12237
|
|
|
@@ -11899,7 +12254,12 @@ its test case should overload self.VERBOTEN_STRINGS appropriately.</p>
|
|
|
11899
12254
|
|
|
11900
12255
|
<div class="doc doc-contents ">
|
|
11901
12256
|
<p class="doc doc-class-bases">
|
|
11902
|
-
Bases: <code><
|
|
12257
|
+
Bases: <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.api.APITestCase" href="#nautobot.apps.testing.APITestCase">APITestCase</a></code></p>
|
|
12258
|
+
|
|
12259
|
+
|
|
12260
|
+
|
|
12261
|
+
|
|
12262
|
+
|
|
11903
12263
|
|
|
11904
12264
|
|
|
11905
12265
|
|
|
@@ -11926,7 +12286,7 @@ its test case should overload self.VERBOTEN_STRINGS appropriately.</p>
|
|
|
11926
12286
|
|
|
11927
12287
|
<div class="doc doc-contents ">
|
|
11928
12288
|
|
|
11929
|
-
|
|
12289
|
+
<p>POST a set of objects in a single request.</p>
|
|
11930
12290
|
|
|
11931
12291
|
</div>
|
|
11932
12292
|
|
|
@@ -11943,7 +12303,7 @@ its test case should overload self.VERBOTEN_STRINGS appropriately.</p>
|
|
|
11943
12303
|
|
|
11944
12304
|
<div class="doc doc-contents ">
|
|
11945
12305
|
|
|
11946
|
-
|
|
12306
|
+
<p>POST a single object with permission.</p>
|
|
11947
12307
|
|
|
11948
12308
|
</div>
|
|
11949
12309
|
|
|
@@ -11960,7 +12320,7 @@ its test case should overload self.VERBOTEN_STRINGS appropriately.</p>
|
|
|
11960
12320
|
|
|
11961
12321
|
<div class="doc doc-contents ">
|
|
11962
12322
|
|
|
11963
|
-
|
|
12323
|
+
<p>POST a single object without permission.</p>
|
|
11964
12324
|
|
|
11965
12325
|
</div>
|
|
11966
12326
|
|
|
@@ -11977,7 +12337,7 @@ its test case should overload self.VERBOTEN_STRINGS appropriately.</p>
|
|
|
11977
12337
|
|
|
11978
12338
|
<div class="doc doc-contents ">
|
|
11979
12339
|
|
|
11980
|
-
|
|
12340
|
+
<p>CSV export an object, delete it, and recreate it via CSV import.</p>
|
|
11981
12341
|
|
|
11982
12342
|
</div>
|
|
11983
12343
|
|
|
@@ -12004,7 +12364,12 @@ its test case should overload self.VERBOTEN_STRINGS appropriately.</p>
|
|
|
12004
12364
|
|
|
12005
12365
|
<div class="doc doc-contents ">
|
|
12006
12366
|
<p class="doc doc-class-bases">
|
|
12007
|
-
Bases: <code><
|
|
12367
|
+
Bases: <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.api.APITestCase" href="#nautobot.apps.testing.APITestCase">APITestCase</a></code></p>
|
|
12368
|
+
|
|
12369
|
+
|
|
12370
|
+
|
|
12371
|
+
|
|
12372
|
+
|
|
12008
12373
|
|
|
12009
12374
|
|
|
12010
12375
|
|
|
@@ -12031,7 +12396,7 @@ its test case should overload self.VERBOTEN_STRINGS appropriately.</p>
|
|
|
12031
12396
|
|
|
12032
12397
|
<div class="doc doc-contents ">
|
|
12033
12398
|
|
|
12034
|
-
|
|
12399
|
+
<p>Get an instance that can be deleted.</p>
|
|
12035
12400
|
<p>For some models this may just be any random object, but when we have FKs with <code>on_delete=models.PROTECT</code>
|
|
12036
12401
|
(as is often the case) we need to find or create an instance that doesn't have such entanglements.</p>
|
|
12037
12402
|
|
|
@@ -12050,7 +12415,7 @@ its test case should overload self.VERBOTEN_STRINGS appropriately.</p>
|
|
|
12050
12415
|
|
|
12051
12416
|
<div class="doc doc-contents ">
|
|
12052
12417
|
|
|
12053
|
-
|
|
12418
|
+
<p>Get a list of PKs corresponding to objects that can be safely bulk-deleted.</p>
|
|
12054
12419
|
<p>For some models this may just be any random objects, but when we have FKs with <code>on_delete=models.PROTECT</code>
|
|
12055
12420
|
(as is often the case) we need to find or create an instance that doesn't have such entanglements.</p>
|
|
12056
12421
|
|
|
@@ -12069,7 +12434,7 @@ its test case should overload self.VERBOTEN_STRINGS appropriately.</p>
|
|
|
12069
12434
|
|
|
12070
12435
|
<div class="doc doc-contents ">
|
|
12071
12436
|
|
|
12072
|
-
|
|
12437
|
+
<p>DELETE a set of objects in a single request.</p>
|
|
12073
12438
|
|
|
12074
12439
|
</div>
|
|
12075
12440
|
|
|
@@ -12086,7 +12451,7 @@ its test case should overload self.VERBOTEN_STRINGS appropriately.</p>
|
|
|
12086
12451
|
|
|
12087
12452
|
<div class="doc doc-contents ">
|
|
12088
12453
|
|
|
12089
|
-
|
|
12454
|
+
<p>DELETE a single object identified by its primary key.</p>
|
|
12090
12455
|
|
|
12091
12456
|
</div>
|
|
12092
12457
|
|
|
@@ -12103,7 +12468,7 @@ its test case should overload self.VERBOTEN_STRINGS appropriately.</p>
|
|
|
12103
12468
|
|
|
12104
12469
|
<div class="doc doc-contents ">
|
|
12105
12470
|
|
|
12106
|
-
|
|
12471
|
+
<p>DELETE a single object without permission.</p>
|
|
12107
12472
|
|
|
12108
12473
|
</div>
|
|
12109
12474
|
|
|
@@ -12130,7 +12495,12 @@ its test case should overload self.VERBOTEN_STRINGS appropriately.</p>
|
|
|
12130
12495
|
|
|
12131
12496
|
<div class="doc doc-contents ">
|
|
12132
12497
|
<p class="doc doc-class-bases">
|
|
12133
|
-
Bases: <code><
|
|
12498
|
+
Bases: <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.api.APITestCase" href="#nautobot.apps.testing.APITestCase">APITestCase</a></code></p>
|
|
12499
|
+
|
|
12500
|
+
|
|
12501
|
+
|
|
12502
|
+
|
|
12503
|
+
|
|
12134
12504
|
|
|
12135
12505
|
|
|
12136
12506
|
|
|
@@ -12157,7 +12527,7 @@ its test case should overload self.VERBOTEN_STRINGS appropriately.</p>
|
|
|
12157
12527
|
|
|
12158
12528
|
<div class="doc doc-contents ">
|
|
12159
12529
|
|
|
12160
|
-
|
|
12530
|
+
<p>GET a single object as an authenticated user with permission to view the object.</p>
|
|
12161
12531
|
|
|
12162
12532
|
</div>
|
|
12163
12533
|
|
|
@@ -12174,7 +12544,7 @@ its test case should overload self.VERBOTEN_STRINGS appropriately.</p>
|
|
|
12174
12544
|
|
|
12175
12545
|
<div class="doc doc-contents ">
|
|
12176
12546
|
|
|
12177
|
-
|
|
12547
|
+
<p>GET a single object as an unauthenticated user.</p>
|
|
12178
12548
|
|
|
12179
12549
|
</div>
|
|
12180
12550
|
|
|
@@ -12191,7 +12561,7 @@ its test case should overload self.VERBOTEN_STRINGS appropriately.</p>
|
|
|
12191
12561
|
|
|
12192
12562
|
<div class="doc doc-contents ">
|
|
12193
12563
|
|
|
12194
|
-
|
|
12564
|
+
<p>GET a single object as an authenticated user without the required permission.</p>
|
|
12195
12565
|
|
|
12196
12566
|
</div>
|
|
12197
12567
|
|
|
@@ -12208,7 +12578,7 @@ its test case should overload self.VERBOTEN_STRINGS appropriately.</p>
|
|
|
12208
12578
|
|
|
12209
12579
|
<div class="doc doc-contents ">
|
|
12210
12580
|
|
|
12211
|
-
|
|
12581
|
+
<p>Make an OPTIONS request for a single object.</p>
|
|
12212
12582
|
|
|
12213
12583
|
</div>
|
|
12214
12584
|
|
|
@@ -12235,7 +12605,12 @@ its test case should overload self.VERBOTEN_STRINGS appropriately.</p>
|
|
|
12235
12605
|
|
|
12236
12606
|
<div class="doc doc-contents ">
|
|
12237
12607
|
<p class="doc doc-class-bases">
|
|
12238
|
-
Bases: <code><
|
|
12608
|
+
Bases: <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.api.APITestCase" href="#nautobot.apps.testing.APITestCase">APITestCase</a></code></p>
|
|
12609
|
+
|
|
12610
|
+
|
|
12611
|
+
|
|
12612
|
+
|
|
12613
|
+
|
|
12239
12614
|
|
|
12240
12615
|
|
|
12241
12616
|
|
|
@@ -12262,7 +12637,7 @@ its test case should overload self.VERBOTEN_STRINGS appropriately.</p>
|
|
|
12262
12637
|
|
|
12263
12638
|
<div class="doc doc-contents ">
|
|
12264
12639
|
|
|
12265
|
-
|
|
12640
|
+
<p>Get a list of model fields that could be tested with the ?depth query parameter</p>
|
|
12266
12641
|
|
|
12267
12642
|
</div>
|
|
12268
12643
|
|
|
@@ -12279,7 +12654,7 @@ its test case should overload self.VERBOTEN_STRINGS appropriately.</p>
|
|
|
12279
12654
|
|
|
12280
12655
|
<div class="doc doc-contents ">
|
|
12281
12656
|
|
|
12282
|
-
|
|
12657
|
+
<p>GET a list of objects as an authenticated user with permission to view the objects.</p>
|
|
12283
12658
|
|
|
12284
12659
|
</div>
|
|
12285
12660
|
|
|
@@ -12296,7 +12671,7 @@ its test case should overload self.VERBOTEN_STRINGS appropriately.</p>
|
|
|
12296
12671
|
|
|
12297
12672
|
<div class="doc doc-contents ">
|
|
12298
12673
|
|
|
12299
|
-
|
|
12674
|
+
<p>GET a list of objects as an unauthenticated user.</p>
|
|
12300
12675
|
|
|
12301
12676
|
</div>
|
|
12302
12677
|
|
|
@@ -12313,7 +12688,7 @@ its test case should overload self.VERBOTEN_STRINGS appropriately.</p>
|
|
|
12313
12688
|
|
|
12314
12689
|
<div class="doc doc-contents ">
|
|
12315
12690
|
|
|
12316
|
-
|
|
12691
|
+
<p>GET a list of objects in CSV format as an authenticated user with permission to view some objects.</p>
|
|
12317
12692
|
|
|
12318
12693
|
</div>
|
|
12319
12694
|
|
|
@@ -12330,7 +12705,7 @@ its test case should overload self.VERBOTEN_STRINGS appropriately.</p>
|
|
|
12330
12705
|
|
|
12331
12706
|
<div class="doc doc-contents ">
|
|
12332
12707
|
|
|
12333
|
-
|
|
12708
|
+
<p>GET a list of objects using the "?depth=0" parameter.</p>
|
|
12334
12709
|
|
|
12335
12710
|
</div>
|
|
12336
12711
|
|
|
@@ -12347,7 +12722,7 @@ its test case should overload self.VERBOTEN_STRINGS appropriately.</p>
|
|
|
12347
12722
|
|
|
12348
12723
|
<div class="doc doc-contents ">
|
|
12349
12724
|
|
|
12350
|
-
|
|
12725
|
+
<p>GET a list of objects using the "?depth=1" parameter.</p>
|
|
12351
12726
|
|
|
12352
12727
|
</div>
|
|
12353
12728
|
|
|
@@ -12364,7 +12739,7 @@ its test case should overload self.VERBOTEN_STRINGS appropriately.</p>
|
|
|
12364
12739
|
|
|
12365
12740
|
<div class="doc doc-contents ">
|
|
12366
12741
|
|
|
12367
|
-
|
|
12742
|
+
<p>GET a list of objects filtered by ID.</p>
|
|
12368
12743
|
|
|
12369
12744
|
</div>
|
|
12370
12745
|
|
|
@@ -12381,7 +12756,7 @@ its test case should overload self.VERBOTEN_STRINGS appropriately.</p>
|
|
|
12381
12756
|
|
|
12382
12757
|
<div class="doc doc-contents ">
|
|
12383
12758
|
|
|
12384
|
-
|
|
12759
|
+
<p>GET a list of objects with an unknown filter parameter and no strict filtering, expect it to be ignored.</p>
|
|
12385
12760
|
|
|
12386
12761
|
</div>
|
|
12387
12762
|
|
|
@@ -12398,7 +12773,7 @@ its test case should overload self.VERBOTEN_STRINGS appropriately.</p>
|
|
|
12398
12773
|
|
|
12399
12774
|
<div class="doc doc-contents ">
|
|
12400
12775
|
|
|
12401
|
-
|
|
12776
|
+
<p>GET a list of objects with an unknown filter parameter and strict filtering, expect a 400 response.</p>
|
|
12402
12777
|
|
|
12403
12778
|
</div>
|
|
12404
12779
|
|
|
@@ -12415,7 +12790,7 @@ its test case should overload self.VERBOTEN_STRINGS appropriately.</p>
|
|
|
12415
12790
|
|
|
12416
12791
|
<div class="doc doc-contents ">
|
|
12417
12792
|
|
|
12418
|
-
|
|
12793
|
+
<p>GET a list of objects as an authenticated user without the required permission.</p>
|
|
12419
12794
|
|
|
12420
12795
|
</div>
|
|
12421
12796
|
|
|
@@ -12432,7 +12807,7 @@ its test case should overload self.VERBOTEN_STRINGS appropriately.</p>
|
|
|
12432
12807
|
|
|
12433
12808
|
<div class="doc doc-contents ">
|
|
12434
12809
|
|
|
12435
|
-
|
|
12810
|
+
<p>Make an OPTIONS request for a list endpoint.</p>
|
|
12436
12811
|
|
|
12437
12812
|
</div>
|
|
12438
12813
|
|
|
@@ -12459,10 +12834,15 @@ its test case should overload self.VERBOTEN_STRINGS appropriately.</p>
|
|
|
12459
12834
|
|
|
12460
12835
|
<div class="doc doc-contents ">
|
|
12461
12836
|
<p class="doc doc-class-bases">
|
|
12462
|
-
Bases: <code><
|
|
12837
|
+
Bases: <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.api.APITestCase" href="#nautobot.apps.testing.APITestCase">APITestCase</a></code></p>
|
|
12838
|
+
|
|
12839
|
+
|
|
12840
|
+
<p>Validate Notes URL on objects that have the Note model Mixin.</p>
|
|
12841
|
+
|
|
12842
|
+
|
|
12843
|
+
|
|
12463
12844
|
|
|
12464
12845
|
|
|
12465
|
-
<p>Validate Notes URL on objects that have the Note model Mixin.</p>
|
|
12466
12846
|
|
|
12467
12847
|
|
|
12468
12848
|
|
|
@@ -12499,7 +12879,12 @@ its test case should overload self.VERBOTEN_STRINGS appropriately.</p>
|
|
|
12499
12879
|
<div class="doc doc-contents ">
|
|
12500
12880
|
|
|
12501
12881
|
|
|
12502
|
-
|
|
12882
|
+
<p>Test <code>?depth=2</code> query parameter for TreeModel</p>
|
|
12883
|
+
|
|
12884
|
+
|
|
12885
|
+
|
|
12886
|
+
|
|
12887
|
+
|
|
12503
12888
|
|
|
12504
12889
|
|
|
12505
12890
|
|
|
@@ -12525,7 +12910,7 @@ its test case should overload self.VERBOTEN_STRINGS appropriately.</p>
|
|
|
12525
12910
|
|
|
12526
12911
|
<div class="doc doc-contents ">
|
|
12527
12912
|
|
|
12528
|
-
|
|
12913
|
+
<p>GET a list of objects using the "?depth=2" parameter.
|
|
12529
12914
|
TreeModel Only</p>
|
|
12530
12915
|
|
|
12531
12916
|
</div>
|
|
@@ -12553,7 +12938,12 @@ TreeModel Only</p>
|
|
|
12553
12938
|
|
|
12554
12939
|
<div class="doc doc-contents ">
|
|
12555
12940
|
<p class="doc doc-class-bases">
|
|
12556
|
-
Bases: <code><
|
|
12941
|
+
Bases: <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.api.APITestCase" href="#nautobot.apps.testing.APITestCase">APITestCase</a></code></p>
|
|
12942
|
+
|
|
12943
|
+
|
|
12944
|
+
|
|
12945
|
+
|
|
12946
|
+
|
|
12557
12947
|
|
|
12558
12948
|
|
|
12559
12949
|
|
|
@@ -12580,7 +12970,7 @@ TreeModel Only</p>
|
|
|
12580
12970
|
|
|
12581
12971
|
<div class="doc doc-contents ">
|
|
12582
12972
|
|
|
12583
|
-
|
|
12973
|
+
<p>PATCH a set of objects in a single request.</p>
|
|
12584
12974
|
|
|
12585
12975
|
</div>
|
|
12586
12976
|
|
|
@@ -12597,7 +12987,7 @@ TreeModel Only</p>
|
|
|
12597
12987
|
|
|
12598
12988
|
<div class="doc doc-contents ">
|
|
12599
12989
|
|
|
12600
|
-
|
|
12990
|
+
<p>GET and then PUT an object and verify that it's accepted and unchanged.</p>
|
|
12601
12991
|
|
|
12602
12992
|
</div>
|
|
12603
12993
|
|
|
@@ -12614,7 +13004,7 @@ TreeModel Only</p>
|
|
|
12614
13004
|
|
|
12615
13005
|
<div class="doc doc-contents ">
|
|
12616
13006
|
|
|
12617
|
-
|
|
13007
|
+
<p>Make an OPTIONS request for a list endpoint and validate choices match expected choices for serializer.</p>
|
|
12618
13008
|
|
|
12619
13009
|
</div>
|
|
12620
13010
|
|
|
@@ -12631,7 +13021,7 @@ TreeModel Only</p>
|
|
|
12631
13021
|
|
|
12632
13022
|
<div class="doc doc-contents ">
|
|
12633
13023
|
|
|
12634
|
-
|
|
13024
|
+
<p>PATCH a single object identified by its ID.</p>
|
|
12635
13025
|
|
|
12636
13026
|
</div>
|
|
12637
13027
|
|
|
@@ -12648,7 +13038,7 @@ TreeModel Only</p>
|
|
|
12648
13038
|
|
|
12649
13039
|
<div class="doc doc-contents ">
|
|
12650
13040
|
|
|
12651
|
-
|
|
13041
|
+
<p>PATCH a single object without permission.</p>
|
|
12652
13042
|
|
|
12653
13043
|
</div>
|
|
12654
13044
|
|
|
@@ -12688,6 +13078,11 @@ TreeModel Only</p>
|
|
|
12688
13078
|
|
|
12689
13079
|
|
|
12690
13080
|
|
|
13081
|
+
|
|
13082
|
+
|
|
13083
|
+
|
|
13084
|
+
|
|
13085
|
+
|
|
12691
13086
|
<div class="doc doc-children">
|
|
12692
13087
|
|
|
12693
13088
|
|
|
@@ -12710,10 +13105,15 @@ TreeModel Only</p>
|
|
|
12710
13105
|
|
|
12711
13106
|
<div class="doc doc-contents ">
|
|
12712
13107
|
<p class="doc doc-class-bases">
|
|
12713
|
-
Bases: <code><
|
|
13108
|
+
Bases: <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.views.TestCase" href="#nautobot.apps.testing.TestCase">TestCase</a></code></p>
|
|
13109
|
+
|
|
13110
|
+
|
|
13111
|
+
<p>Base class for testing of FilterSets.</p>
|
|
13112
|
+
|
|
13113
|
+
|
|
13114
|
+
|
|
12714
13115
|
|
|
12715
13116
|
|
|
12716
|
-
<p>Base class for testing of FilterSets.</p>
|
|
12717
13117
|
|
|
12718
13118
|
|
|
12719
13119
|
|
|
@@ -12739,7 +13139,7 @@ TreeModel Only</p>
|
|
|
12739
13139
|
|
|
12740
13140
|
<div class="doc doc-contents ">
|
|
12741
13141
|
|
|
12742
|
-
|
|
13142
|
+
<p>Returns a list of distinct values from the requested queryset field to use in filterset tests.</p>
|
|
12743
13143
|
<p>Returns a list for use in testing multiple choice filters. The size of the returned list is random
|
|
12744
13144
|
but will contain at minimum 2 unique values. The list of values will match at least 2 instances when
|
|
12745
13145
|
passed to the queryset's filter(field_name__in=[]) method but will fail to match at least one instance.</p>
|
|
@@ -12757,9 +13157,11 @@ passed to the queryset's filter(field_name__in=[]) method but will fail to match
|
|
|
12757
13157
|
</thead>
|
|
12758
13158
|
<tbody>
|
|
12759
13159
|
<tr class="doc-section-item">
|
|
12760
|
-
<td><code>field_name</code></td>
|
|
12761
13160
|
<td>
|
|
12762
|
-
|
|
13161
|
+
<code>field_name</code>
|
|
13162
|
+
</td>
|
|
13163
|
+
<td>
|
|
13164
|
+
<code>str</code>
|
|
12763
13165
|
</td>
|
|
12764
13166
|
<td>
|
|
12765
13167
|
<div class="doc-md-description">
|
|
@@ -12771,9 +13173,11 @@ passed to the queryset's filter(field_name__in=[]) method but will fail to match
|
|
|
12771
13173
|
</td>
|
|
12772
13174
|
</tr>
|
|
12773
13175
|
<tr class="doc-section-item">
|
|
12774
|
-
<td><code>queryset</code></td>
|
|
12775
13176
|
<td>
|
|
12776
|
-
|
|
13177
|
+
<code>queryset</code>
|
|
13178
|
+
</td>
|
|
13179
|
+
<td>
|
|
13180
|
+
<code><span title="django.db.models.QuerySet">QuerySet</span></code>
|
|
12777
13181
|
</td>
|
|
12778
13182
|
<td>
|
|
12779
13183
|
<div class="doc-md-description">
|
|
@@ -12799,7 +13203,7 @@ passed to the queryset's filter(field_name__in=[]) method but will fail to match
|
|
|
12799
13203
|
<tbody>
|
|
12800
13204
|
<tr class="doc-section-item">
|
|
12801
13205
|
<td>
|
|
12802
|
-
<code
|
|
13206
|
+
<code>list</code>
|
|
12803
13207
|
</td>
|
|
12804
13208
|
<td>
|
|
12805
13209
|
<div class="doc-md-description">
|
|
@@ -12822,7 +13226,7 @@ passed to the queryset's filter(field_name__in=[]) method but will fail to match
|
|
|
12822
13226
|
<tbody>
|
|
12823
13227
|
<tr class="doc-section-item">
|
|
12824
13228
|
<td>
|
|
12825
|
-
<code
|
|
13229
|
+
<code>ValueError</code>
|
|
12826
13230
|
</td>
|
|
12827
13231
|
<td>
|
|
12828
13232
|
<div class="doc-md-description">
|
|
@@ -12859,10 +13263,15 @@ to filter the queryset to a subset of the total instances.</p>
|
|
|
12859
13263
|
|
|
12860
13264
|
<div class="doc doc-contents ">
|
|
12861
13265
|
<p class="doc doc-class-bases">
|
|
12862
|
-
Bases: <code><
|
|
13266
|
+
Bases: <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.filters.FilterTestCases.BaseFilterTestCase" href="#nautobot.apps.testing.FilterTestCases.BaseFilterTestCase">BaseFilterTestCase</a></code></p>
|
|
13267
|
+
|
|
13268
|
+
|
|
13269
|
+
<p>Add common tests for all FilterSets.</p>
|
|
13270
|
+
|
|
13271
|
+
|
|
13272
|
+
|
|
12863
13273
|
|
|
12864
13274
|
|
|
12865
|
-
<p>Add common tests for all FilterSets.</p>
|
|
12866
13275
|
|
|
12867
13276
|
|
|
12868
13277
|
|
|
@@ -12888,7 +13297,7 @@ to filter the queryset to a subset of the total instances.</p>
|
|
|
12888
13297
|
|
|
12889
13298
|
<div class="doc doc-contents ">
|
|
12890
13299
|
|
|
12891
|
-
|
|
13300
|
+
<p>Helper method to return q filter.</p>
|
|
12892
13301
|
|
|
12893
13302
|
</div>
|
|
12894
13303
|
|
|
@@ -12905,7 +13314,7 @@ to filter the queryset to a subset of the total instances.</p>
|
|
|
12905
13314
|
|
|
12906
13315
|
<div class="doc doc-contents ">
|
|
12907
13316
|
|
|
12908
|
-
|
|
13317
|
+
<p>Test all <code>RelatedMembershipBooleanFilter</code> filters found in <code>self.filterset.get_filters()</code>
|
|
12909
13318
|
except for the ones with custom filter logic defined in its <code>method</code> attribute.</p>
|
|
12910
13319
|
<p>This test asserts that <code>filter=True</code> matches <code>self.queryset.filter(field__isnull=False)</code> and
|
|
12911
13320
|
that <code>filter=False</code> matches <code>self.queryset.filter(field__isnull=True)</code>.</p>
|
|
@@ -12925,7 +13334,7 @@ that <code>filter=False</code> matches <code>self.queryset.filter(field__isnull=
|
|
|
12925
13334
|
|
|
12926
13335
|
<div class="doc doc-contents ">
|
|
12927
13336
|
|
|
12928
|
-
|
|
13337
|
+
<p>Test all multiple choice filters declared in <code>self.generic_filter_tests</code>.</p>
|
|
12929
13338
|
<p>This test uses <code>get_filterset_test_values()</code> to retrieve a valid set of test data and asserts
|
|
12930
13339
|
that the filterset filter output matches the corresponding queryset filter.
|
|
12931
13340
|
The majority of Nautobot filters use conjoined=False, so the extra logic to support conjoined=True has not
|
|
@@ -12961,7 +13370,7 @@ This expects a field named <code>devices</code> on the model and a filter named
|
|
|
12961
13370
|
|
|
12962
13371
|
<div class="doc doc-contents ">
|
|
12963
13372
|
|
|
12964
|
-
|
|
13373
|
+
<p>Verify that the filterset supports filtering by id with only lookup <code>__n</code>.</p>
|
|
12965
13374
|
|
|
12966
13375
|
</div>
|
|
12967
13376
|
|
|
@@ -12978,24 +13387,7 @@ This expects a field named <code>devices</code> on the model and a filter named
|
|
|
12978
13387
|
|
|
12979
13388
|
<div class="doc doc-contents ">
|
|
12980
13389
|
|
|
12981
|
-
|
|
12982
|
-
|
|
12983
|
-
</div>
|
|
12984
|
-
|
|
12985
|
-
</div>
|
|
12986
|
-
|
|
12987
|
-
<div class="doc doc-object doc-function">
|
|
12988
|
-
|
|
12989
|
-
|
|
12990
|
-
<h4 id="nautobot.apps.testing.FilterTestCases.FilterTestCase.test_q_filter_exists" class="doc doc-heading">
|
|
12991
|
-
<code class="highlight language-python"><span class="n">test_q_filter_exists</span><span class="p">()</span></code>
|
|
12992
|
-
|
|
12993
|
-
<a href="#nautobot.apps.testing.FilterTestCases.FilterTestCase.test_q_filter_exists" class="headerlink" title="Permanent link">¶</a></h4>
|
|
12994
|
-
|
|
12995
|
-
|
|
12996
|
-
<div class="doc doc-contents ">
|
|
12997
|
-
|
|
12998
|
-
<p>Test the <code>q</code> filter exists on a filterset, does not validate the filter works as expected.</p>
|
|
13390
|
+
<p>Verify that the filterset reports as invalid when initialized with an unsupported filter parameter.</p>
|
|
12999
13391
|
|
|
13000
13392
|
</div>
|
|
13001
13393
|
|
|
@@ -13012,7 +13404,7 @@ This expects a field named <code>devices</code> on the model and a filter named
|
|
|
13012
13404
|
|
|
13013
13405
|
<div class="doc doc-contents ">
|
|
13014
13406
|
|
|
13015
|
-
|
|
13407
|
+
<p>Test the <code>q</code> filter based on attributes in <code>filter_predicates</code>.</p>
|
|
13016
13408
|
|
|
13017
13409
|
</div>
|
|
13018
13410
|
|
|
@@ -13029,7 +13421,7 @@ This expects a field named <code>devices</code> on the model and a filter named
|
|
|
13029
13421
|
|
|
13030
13422
|
<div class="doc doc-contents ">
|
|
13031
13423
|
|
|
13032
|
-
|
|
13424
|
+
<p>Test the <code>tags</code> filter which should be present on all PrimaryModel filtersets.</p>
|
|
13033
13425
|
|
|
13034
13426
|
</div>
|
|
13035
13427
|
|
|
@@ -13056,15 +13448,10 @@ This expects a field named <code>devices</code> on the model and a filter named
|
|
|
13056
13448
|
|
|
13057
13449
|
<div class="doc doc-contents ">
|
|
13058
13450
|
<p class="doc doc-class-bases">
|
|
13059
|
-
Bases: <code><
|
|
13060
|
-
|
|
13061
|
-
|
|
13062
|
-
<p>Add simple tests for filtering by name.</p>
|
|
13451
|
+
Bases: <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.filters.FilterTestCases.FilterTestCase" href="#nautobot.apps.testing.FilterTestCases.FilterTestCase">FilterTestCase</a></code></p>
|
|
13063
13452
|
|
|
13064
13453
|
|
|
13065
|
-
|
|
13066
|
-
|
|
13067
|
-
<div class="doc doc-children">
|
|
13454
|
+
<p>Add simple tests for filtering by name.</p>
|
|
13068
13455
|
|
|
13069
13456
|
|
|
13070
13457
|
|
|
@@ -13074,22 +13461,15 @@ This expects a field named <code>devices</code> on the model and a filter named
|
|
|
13074
13461
|
|
|
13075
13462
|
|
|
13076
13463
|
|
|
13077
|
-
<div class="doc doc-
|
|
13464
|
+
<div class="doc doc-children">
|
|
13078
13465
|
|
|
13079
13466
|
|
|
13080
|
-
<h4 id="nautobot.apps.testing.FilterTestCases.NameOnlyFilterTestCase.test_name" class="doc doc-heading">
|
|
13081
|
-
<code class="highlight language-python"><span class="n">test_name</span><span class="p">()</span></code>
|
|
13082
13467
|
|
|
13083
|
-
<a href="#nautobot.apps.testing.FilterTestCases.NameOnlyFilterTestCase.test_name" class="headerlink" title="Permanent link">¶</a></h4>
|
|
13084
13468
|
|
|
13085
13469
|
|
|
13086
|
-
<div class="doc doc-contents ">
|
|
13087
13470
|
|
|
13088
|
-
<p>Verify that the filterset supports filtering by name.</p>
|
|
13089
13471
|
|
|
13090
|
-
</div>
|
|
13091
13472
|
|
|
13092
|
-
</div>
|
|
13093
13473
|
|
|
13094
13474
|
|
|
13095
13475
|
|
|
@@ -13112,40 +13492,28 @@ This expects a field named <code>devices</code> on the model and a filter named
|
|
|
13112
13492
|
|
|
13113
13493
|
<div class="doc doc-contents ">
|
|
13114
13494
|
<p class="doc doc-class-bases">
|
|
13115
|
-
Bases: <code><
|
|
13495
|
+
Bases: <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.filters.FilterTestCases.FilterTestCase" href="#nautobot.apps.testing.FilterTestCases.FilterTestCase">FilterTestCase</a></code></p>
|
|
13116
13496
|
|
|
13117
13497
|
|
|
13118
|
-
|
|
13498
|
+
<p>Add simple tests for filtering by name and by slug.</p>
|
|
13119
13499
|
|
|
13120
13500
|
|
|
13121
13501
|
|
|
13122
13502
|
|
|
13123
|
-
<div class="doc doc-children">
|
|
13124
|
-
|
|
13125
|
-
|
|
13126
13503
|
|
|
13127
13504
|
|
|
13128
13505
|
|
|
13129
13506
|
|
|
13130
13507
|
|
|
13508
|
+
<div class="doc doc-children">
|
|
13131
13509
|
|
|
13132
13510
|
|
|
13133
|
-
<div class="doc doc-object doc-function">
|
|
13134
|
-
|
|
13135
|
-
|
|
13136
|
-
<h4 id="nautobot.apps.testing.FilterTestCases.NameSlugFilterTestCase.test_slug" class="doc doc-heading">
|
|
13137
|
-
<code class="highlight language-python"><span class="n">test_slug</span><span class="p">()</span></code>
|
|
13138
13511
|
|
|
13139
|
-
<a href="#nautobot.apps.testing.FilterTestCases.NameSlugFilterTestCase.test_slug" class="headerlink" title="Permanent link">¶</a></h4>
|
|
13140
13512
|
|
|
13141
13513
|
|
|
13142
|
-
<div class="doc doc-contents ">
|
|
13143
13514
|
|
|
13144
|
-
<p>Verify that the filterset supports filtering by slug.</p>
|
|
13145
13515
|
|
|
13146
|
-
</div>
|
|
13147
13516
|
|
|
13148
|
-
</div>
|
|
13149
13517
|
|
|
13150
13518
|
|
|
13151
13519
|
|
|
@@ -13168,10 +13536,15 @@ This expects a field named <code>devices</code> on the model and a filter named
|
|
|
13168
13536
|
|
|
13169
13537
|
<div class="doc doc-contents ">
|
|
13170
13538
|
<p class="doc doc-class-bases">
|
|
13171
|
-
Bases: <code><
|
|
13539
|
+
Bases: <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.views.TestCase" href="#nautobot.apps.testing.TestCase">TestCase</a></code></p>
|
|
13540
|
+
|
|
13541
|
+
|
|
13542
|
+
<p>Add test cases for tenant and tenant-group filters.</p>
|
|
13543
|
+
|
|
13544
|
+
|
|
13545
|
+
|
|
13172
13546
|
|
|
13173
13547
|
|
|
13174
|
-
<p>Add test cases for tenant and tenant-group filters.</p>
|
|
13175
13548
|
|
|
13176
13549
|
|
|
13177
13550
|
|
|
@@ -13220,6 +13593,11 @@ This expects a field named <code>devices</code> on the model and a filter named
|
|
|
13220
13593
|
|
|
13221
13594
|
|
|
13222
13595
|
|
|
13596
|
+
|
|
13597
|
+
|
|
13598
|
+
|
|
13599
|
+
|
|
13600
|
+
|
|
13223
13601
|
<div class="doc doc-children">
|
|
13224
13602
|
|
|
13225
13603
|
|
|
@@ -13242,10 +13620,15 @@ This expects a field named <code>devices</code> on the model and a filter named
|
|
|
13242
13620
|
|
|
13243
13621
|
<div class="doc doc-contents ">
|
|
13244
13622
|
<p class="doc doc-class-bases">
|
|
13245
|
-
Bases: <code><
|
|
13623
|
+
Bases: <code><span title="django.test.TestCase">TestCase</span></code></p>
|
|
13624
|
+
|
|
13625
|
+
|
|
13626
|
+
<p>Base class for generic form tests.</p>
|
|
13627
|
+
|
|
13628
|
+
|
|
13629
|
+
|
|
13246
13630
|
|
|
13247
13631
|
|
|
13248
|
-
<p>Base class for generic form tests.</p>
|
|
13249
13632
|
|
|
13250
13633
|
|
|
13251
13634
|
|
|
@@ -13290,10 +13673,15 @@ This expects a field named <code>devices</code> on the model and a filter named
|
|
|
13290
13673
|
|
|
13291
13674
|
<div class="doc doc-contents ">
|
|
13292
13675
|
<p class="doc doc-class-bases">
|
|
13293
|
-
Bases: <code><
|
|
13676
|
+
Bases: <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.views.TestCase" href="#nautobot.apps.testing.TestCase">TestCase</a></code></p>
|
|
13677
|
+
|
|
13678
|
+
|
|
13679
|
+
<p>Parent class for TestCases which deal with models.</p>
|
|
13680
|
+
|
|
13681
|
+
|
|
13682
|
+
|
|
13294
13683
|
|
|
13295
13684
|
|
|
13296
|
-
<p>Parent class for TestCases which deal with models.</p>
|
|
13297
13685
|
|
|
13298
13686
|
|
|
13299
13687
|
|
|
@@ -13333,6 +13721,11 @@ This expects a field named <code>devices</code> on the model and a filter named
|
|
|
13333
13721
|
|
|
13334
13722
|
|
|
13335
13723
|
|
|
13724
|
+
|
|
13725
|
+
|
|
13726
|
+
|
|
13727
|
+
|
|
13728
|
+
|
|
13336
13729
|
<div class="doc doc-children">
|
|
13337
13730
|
|
|
13338
13731
|
|
|
@@ -13355,10 +13748,15 @@ This expects a field named <code>devices</code> on the model and a filter named
|
|
|
13355
13748
|
|
|
13356
13749
|
<div class="doc doc-contents ">
|
|
13357
13750
|
<p class="doc doc-class-bases">
|
|
13358
|
-
Bases: <code><
|
|
13751
|
+
Bases: <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.mixins.NautobotTestCaseMixin" href="#nautobot.apps.testing.NautobotTestCaseMixin">NautobotTestCaseMixin</a></code>, <code><span title="django.test.TestCase">TestCase</span></code></p>
|
|
13752
|
+
|
|
13753
|
+
|
|
13754
|
+
<p>Base class for generic model tests.</p>
|
|
13755
|
+
|
|
13756
|
+
|
|
13757
|
+
|
|
13359
13758
|
|
|
13360
13759
|
|
|
13361
|
-
<p>Base class for generic model tests.</p>
|
|
13362
13760
|
|
|
13363
13761
|
|
|
13364
13762
|
|
|
@@ -13384,7 +13782,7 @@ This expects a field named <code>devices</code> on the model and a filter named
|
|
|
13384
13782
|
|
|
13385
13783
|
<div class="doc doc-contents ">
|
|
13386
13784
|
|
|
13387
|
-
|
|
13785
|
+
<p>Check that <code>composite_key</code> and filtering by <code>composite_key</code> both work.</p>
|
|
13388
13786
|
|
|
13389
13787
|
</div>
|
|
13390
13788
|
|
|
@@ -13401,7 +13799,7 @@ This expects a field named <code>devices</code> on the model and a filter named
|
|
|
13401
13799
|
|
|
13402
13800
|
<div class="doc doc-contents ">
|
|
13403
13801
|
|
|
13404
|
-
|
|
13802
|
+
<p>For dynamic-group capable models, check that they work as intended.</p>
|
|
13405
13803
|
|
|
13406
13804
|
</div>
|
|
13407
13805
|
|
|
@@ -13418,7 +13816,7 @@ This expects a field named <code>devices</code> on the model and a filter named
|
|
|
13418
13816
|
|
|
13419
13817
|
<div class="doc doc-contents ">
|
|
13420
13818
|
|
|
13421
|
-
|
|
13819
|
+
<p>Check that <code>get_docs_url()</code> returns a valid static file path for this model.</p>
|
|
13422
13820
|
|
|
13423
13821
|
</div>
|
|
13424
13822
|
|
|
@@ -13435,7 +13833,7 @@ This expects a field named <code>devices</code> on the model and a filter named
|
|
|
13435
13833
|
|
|
13436
13834
|
<div class="doc doc-contents ">
|
|
13437
13835
|
|
|
13438
|
-
|
|
13836
|
+
<p>Check that <code>natural_key()</code> and <code>get_by_natural_key()</code> work reciprocally.</p>
|
|
13439
13837
|
|
|
13440
13838
|
</div>
|
|
13441
13839
|
|
|
@@ -13471,10 +13869,15 @@ This expects a field named <code>devices</code> on the model and a filter named
|
|
|
13471
13869
|
|
|
13472
13870
|
<div class="doc doc-contents ">
|
|
13473
13871
|
<p class="doc doc-class-bases">
|
|
13474
|
-
Bases: <code><
|
|
13872
|
+
Bases: <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.views.ModelTestCase" href="#nautobot.apps.testing.ModelTestCase">ModelTestCase</a></code></p>
|
|
13873
|
+
|
|
13874
|
+
|
|
13875
|
+
<p>Base TestCase for model views. Subclass to test individual views.</p>
|
|
13876
|
+
|
|
13877
|
+
|
|
13878
|
+
|
|
13475
13879
|
|
|
13476
13880
|
|
|
13477
|
-
<p>Base TestCase for model views. Subclass to test individual views.</p>
|
|
13478
13881
|
|
|
13479
13882
|
|
|
13480
13883
|
|
|
@@ -13504,7 +13907,7 @@ This expects a field named <code>devices</code> on the model and a filter named
|
|
|
13504
13907
|
|
|
13505
13908
|
<div class="doc doc-contents ">
|
|
13506
13909
|
|
|
13507
|
-
|
|
13910
|
+
<p>Name of instance field to pass as a kwarg when looking up URLs for creating/editing/deleting a model instance.</p>
|
|
13508
13911
|
<p>If unspecified, "pk" and "slug" will be tried, in that order.</p>
|
|
13509
13912
|
</div>
|
|
13510
13913
|
|
|
@@ -13533,7 +13936,12 @@ This expects a field named <code>devices</code> on the model and a filter named
|
|
|
13533
13936
|
|
|
13534
13937
|
<div class="doc doc-contents ">
|
|
13535
13938
|
<p class="doc doc-class-bases">
|
|
13536
|
-
Bases: <code><
|
|
13939
|
+
Bases: <code><span title="django.test.TestCase">TestCase</span></code></p>
|
|
13940
|
+
|
|
13941
|
+
|
|
13942
|
+
|
|
13943
|
+
|
|
13944
|
+
|
|
13537
13945
|
|
|
13538
13946
|
|
|
13539
13947
|
|
|
@@ -13560,7 +13968,7 @@ This expects a field named <code>devices</code> on the model and a filter named
|
|
|
13560
13968
|
|
|
13561
13969
|
<div class="doc doc-contents ">
|
|
13562
13970
|
|
|
13563
|
-
|
|
13971
|
+
<p>Populate your Nautobot data before migrating from the first migration to the second</p>
|
|
13564
13972
|
|
|
13565
13973
|
</div>
|
|
13566
13974
|
|
|
@@ -13588,7 +13996,12 @@ This expects a field named <code>devices</code> on the model and a filter named
|
|
|
13588
13996
|
<div class="doc doc-contents ">
|
|
13589
13997
|
|
|
13590
13998
|
|
|
13591
|
-
|
|
13999
|
+
<p>Base class for all Nautobot-specific unit tests.</p>
|
|
14000
|
+
|
|
14001
|
+
|
|
14002
|
+
|
|
14003
|
+
|
|
14004
|
+
|
|
13592
14005
|
|
|
13593
14006
|
|
|
13594
14007
|
|
|
@@ -13614,7 +14027,7 @@ This expects a field named <code>devices</code> on the model and a filter named
|
|
|
13614
14027
|
|
|
13615
14028
|
<div class="doc doc-contents ">
|
|
13616
14029
|
|
|
13617
|
-
|
|
14030
|
+
<p>Get the absolute API URL ("http://nautobot.example.com/api/...") for a given object.</p>
|
|
13618
14031
|
|
|
13619
14032
|
</div>
|
|
13620
14033
|
|
|
@@ -13631,7 +14044,7 @@ This expects a field named <code>devices</code> on the model and a filter named
|
|
|
13631
14044
|
|
|
13632
14045
|
<div class="doc doc-contents ">
|
|
13633
14046
|
|
|
13634
|
-
|
|
14047
|
+
<p>Assign a set of permissions to the test user. Accepts permission names in the form <app>.<action>_<model>.
|
|
13635
14048
|
Additional keyword arguments will be passed to the ObjectPermission constructor to allow creating more detailed permissions.</p>
|
|
13636
14049
|
|
|
13637
14050
|
|
|
@@ -13655,7 +14068,7 @@ Additional keyword arguments will be passed to the ObjectPermission constructor
|
|
|
13655
14068
|
|
|
13656
14069
|
<div class="doc doc-contents ">
|
|
13657
14070
|
|
|
13658
|
-
|
|
14071
|
+
<p>Like assertNumQueries, but fuzzier. Assert that the number of queries falls within an acceptable range.</p>
|
|
13659
14072
|
|
|
13660
14073
|
</div>
|
|
13661
14074
|
|
|
@@ -13672,7 +14085,7 @@ Additional keyword arguments will be passed to the ObjectPermission constructor
|
|
|
13672
14085
|
|
|
13673
14086
|
<div class="doc doc-contents ">
|
|
13674
14087
|
|
|
13675
|
-
|
|
14088
|
+
<p>Like Django's <code>assertContains</code>, but uses <code>extract_page_body</code> utility function to scope the check more narrowly.</p>
|
|
13676
14089
|
|
|
13677
14090
|
|
|
13678
14091
|
<p><span class="doc-section-title">Parameters:</span></p>
|
|
@@ -13687,9 +14100,11 @@ Additional keyword arguments will be passed to the ObjectPermission constructor
|
|
|
13687
14100
|
</thead>
|
|
13688
14101
|
<tbody>
|
|
13689
14102
|
<tr class="doc-section-item">
|
|
13690
|
-
<td><code>response</code></td>
|
|
13691
14103
|
<td>
|
|
13692
|
-
|
|
14104
|
+
<code>response</code>
|
|
14105
|
+
</td>
|
|
14106
|
+
<td>
|
|
14107
|
+
<code>HttpResponse</code>
|
|
13693
14108
|
</td>
|
|
13694
14109
|
<td>
|
|
13695
14110
|
<div class="doc-md-description">
|
|
@@ -13701,9 +14116,11 @@ Additional keyword arguments will be passed to the ObjectPermission constructor
|
|
|
13701
14116
|
</td>
|
|
13702
14117
|
</tr>
|
|
13703
14118
|
<tr class="doc-section-item">
|
|
13704
|
-
<td><code>text</code></td>
|
|
13705
14119
|
<td>
|
|
13706
|
-
|
|
14120
|
+
<code>text</code>
|
|
14121
|
+
</td>
|
|
14122
|
+
<td>
|
|
14123
|
+
<code>str</code>
|
|
13707
14124
|
</td>
|
|
13708
14125
|
<td>
|
|
13709
14126
|
<div class="doc-md-description">
|
|
@@ -13715,9 +14132,11 @@ Additional keyword arguments will be passed to the ObjectPermission constructor
|
|
|
13715
14132
|
</td>
|
|
13716
14133
|
</tr>
|
|
13717
14134
|
<tr class="doc-section-item">
|
|
13718
|
-
<td><code>count</code></td>
|
|
13719
14135
|
<td>
|
|
13720
|
-
|
|
14136
|
+
<code>count</code>
|
|
14137
|
+
</td>
|
|
14138
|
+
<td>
|
|
14139
|
+
<code>int</code>
|
|
13721
14140
|
</td>
|
|
13722
14141
|
<td>
|
|
13723
14142
|
<div class="doc-md-description">
|
|
@@ -13730,9 +14149,11 @@ it's present at all.</p>
|
|
|
13730
14149
|
</td>
|
|
13731
14150
|
</tr>
|
|
13732
14151
|
<tr class="doc-section-item">
|
|
13733
|
-
<td><code>status_code</code></td>
|
|
13734
14152
|
<td>
|
|
13735
|
-
|
|
14153
|
+
<code>status_code</code>
|
|
14154
|
+
</td>
|
|
14155
|
+
<td>
|
|
14156
|
+
<code>int</code>
|
|
13736
14157
|
</td>
|
|
13737
14158
|
<td>
|
|
13738
14159
|
<div class="doc-md-description">
|
|
@@ -13744,9 +14165,11 @@ it's present at all.</p>
|
|
|
13744
14165
|
</td>
|
|
13745
14166
|
</tr>
|
|
13746
14167
|
<tr class="doc-section-item">
|
|
13747
|
-
<td><code>html</code></td>
|
|
13748
14168
|
<td>
|
|
13749
|
-
|
|
14169
|
+
<code>html</code>
|
|
14170
|
+
</td>
|
|
14171
|
+
<td>
|
|
14172
|
+
<code>bool</code>
|
|
13750
14173
|
</td>
|
|
13751
14174
|
<td>
|
|
13752
14175
|
<div class="doc-md-description">
|
|
@@ -13775,7 +14198,7 @@ it's present at all.</p>
|
|
|
13775
14198
|
|
|
13776
14199
|
<div class="doc doc-contents ">
|
|
13777
14200
|
|
|
13778
|
-
|
|
14201
|
+
<p>TestCase method. Provide more detail in the event of an unexpected HTTP response.</p>
|
|
13779
14202
|
|
|
13780
14203
|
</div>
|
|
13781
14204
|
|
|
@@ -13792,7 +14215,7 @@ it's present at all.</p>
|
|
|
13792
14215
|
|
|
13793
14216
|
<div class="doc doc-contents ">
|
|
13794
14217
|
|
|
13795
|
-
|
|
14218
|
+
<p>Compare a model instance to a dictionary, checking that its attribute values match those specified
|
|
13796
14219
|
in the dictionary.</p>
|
|
13797
14220
|
<p>:param instance: Python object instance
|
|
13798
14221
|
:param data: Dictionary of test data used to define the instance
|
|
@@ -13814,7 +14237,7 @@ in the dictionary.</p>
|
|
|
13814
14237
|
|
|
13815
14238
|
<div class="doc doc-contents ">
|
|
13816
14239
|
|
|
13817
|
-
|
|
14240
|
+
<p>Wrapper for assertQuerysetEqual with additional logic to assert input queryset and values are not empty</p>
|
|
13818
14241
|
|
|
13819
14242
|
</div>
|
|
13820
14243
|
|
|
@@ -13835,7 +14258,7 @@ in the dictionary.</p>
|
|
|
13835
14258
|
|
|
13836
14259
|
<div class="doc doc-contents ">
|
|
13837
14260
|
|
|
13838
|
-
|
|
14261
|
+
<p>Create and return a Tag instance for each name given.</p>
|
|
13839
14262
|
<p>DEPRECATED: use TagFactory instead.</p>
|
|
13840
14263
|
|
|
13841
14264
|
</div>
|
|
@@ -13853,7 +14276,7 @@ in the dictionary.</p>
|
|
|
13853
14276
|
|
|
13854
14277
|
<div class="doc doc-contents ">
|
|
13855
14278
|
|
|
13856
|
-
|
|
14279
|
+
<p>Return a dictionary representation of an instance.</p>
|
|
13857
14280
|
|
|
13858
14281
|
</div>
|
|
13859
14282
|
|
|
@@ -13870,7 +14293,7 @@ in the dictionary.</p>
|
|
|
13870
14293
|
|
|
13871
14294
|
<div class="doc doc-contents ">
|
|
13872
14295
|
|
|
13873
|
-
|
|
14296
|
+
<p>Test cases can override this method to perform any necessary manipulation of an instance prior to its evaluation
|
|
13874
14297
|
against test data. For example, it can be used to decrypt a Secret's plaintext attribute.</p>
|
|
13875
14298
|
|
|
13876
14299
|
</div>
|
|
@@ -13888,7 +14311,7 @@ against test data. For example, it can be used to decrypt a Secret's plaintext a
|
|
|
13888
14311
|
|
|
13889
14312
|
<div class="doc doc-contents ">
|
|
13890
14313
|
|
|
13891
|
-
|
|
14314
|
+
<p>Setup shared testuser, statuses and client.</p>
|
|
13892
14315
|
|
|
13893
14316
|
</div>
|
|
13894
14317
|
|
|
@@ -13905,7 +14328,7 @@ against test data. For example, it can be used to decrypt a Secret's plaintext a
|
|
|
13905
14328
|
|
|
13906
14329
|
<div class="doc doc-contents ">
|
|
13907
14330
|
|
|
13908
|
-
|
|
14331
|
+
<p>Clear cache after each test case.</p>
|
|
13909
14332
|
<p>In theory this shouldn't be necessary as our cache <strong>should</strong> appropriately update and clear itself when
|
|
13910
14333
|
data changes occur, but in practice we've seen issues here. Best guess at present is that it's due to
|
|
13911
14334
|
<code>TransactionTestCase</code> truncating the database, which presumably doesn't trigger the relevant Django signals
|
|
@@ -13937,15 +14360,20 @@ that would otherwise refresh the cache appropriately.</p>
|
|
|
13937
14360
|
|
|
13938
14361
|
<div class="doc doc-contents ">
|
|
13939
14362
|
<p class="doc doc-class-bases">
|
|
13940
|
-
Bases: <code><
|
|
14363
|
+
Bases: <code><span title="rest_framework.test.APIClient">APIClient</span></code></p>
|
|
13941
14364
|
|
|
13942
14365
|
|
|
13943
|
-
|
|
14366
|
+
<p>Base client class for Nautobot testing.</p>
|
|
13944
14367
|
<p>DO NOT USE THIS IN PRODUCTION NAUTOBOT CODE.</p>
|
|
13945
14368
|
|
|
13946
14369
|
|
|
13947
14370
|
|
|
13948
14371
|
|
|
14372
|
+
|
|
14373
|
+
|
|
14374
|
+
|
|
14375
|
+
|
|
14376
|
+
|
|
13949
14377
|
<div class="doc doc-children">
|
|
13950
14378
|
|
|
13951
14379
|
|
|
@@ -13967,7 +14395,7 @@ that would otherwise refresh the cache appropriately.</p>
|
|
|
13967
14395
|
|
|
13968
14396
|
<div class="doc doc-contents ">
|
|
13969
14397
|
|
|
13970
|
-
|
|
14398
|
+
<p>Default the SERVER_NAME to "nautobot.example.com" rather than Django's default "testserver".</p>
|
|
13971
14399
|
<p>This matches the ALLOWED_HOSTS set in nautobot/core/tests/nautobot_config.py and
|
|
13972
14400
|
helps to protect us against issues like https://github.com/nautobot/nautobot/issues/3065.</p>
|
|
13973
14401
|
|
|
@@ -14000,6 +14428,11 @@ helps to protect us against issues like https://github.com/nautobot/nautobot/iss
|
|
|
14000
14428
|
|
|
14001
14429
|
|
|
14002
14430
|
|
|
14431
|
+
|
|
14432
|
+
|
|
14433
|
+
|
|
14434
|
+
|
|
14435
|
+
|
|
14003
14436
|
<div class="doc doc-children">
|
|
14004
14437
|
|
|
14005
14438
|
|
|
@@ -14022,10 +14455,15 @@ helps to protect us against issues like https://github.com/nautobot/nautobot/iss
|
|
|
14022
14455
|
|
|
14023
14456
|
<div class="doc doc-contents ">
|
|
14024
14457
|
<p class="doc doc-class-bases">
|
|
14025
|
-
Bases: <code><
|
|
14458
|
+
Bases: <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.views.TestCase" href="#nautobot.apps.testing.TestCase">TestCase</a></code></p>
|
|
14459
|
+
|
|
14460
|
+
|
|
14461
|
+
<p>Base class for testing of the OpenAPI schema.</p>
|
|
14462
|
+
|
|
14463
|
+
|
|
14464
|
+
|
|
14026
14465
|
|
|
14027
14466
|
|
|
14028
|
-
<p>Base class for testing of the OpenAPI schema.</p>
|
|
14029
14467
|
|
|
14030
14468
|
|
|
14031
14469
|
|
|
@@ -14051,7 +14489,7 @@ helps to protect us against issues like https://github.com/nautobot/nautobot/iss
|
|
|
14051
14489
|
|
|
14052
14490
|
<div class="doc doc-contents ">
|
|
14053
14491
|
|
|
14054
|
-
|
|
14492
|
+
<p>Test method to assert that this polymorphic component has the expected permitted types.</p>
|
|
14055
14493
|
|
|
14056
14494
|
</div>
|
|
14057
14495
|
|
|
@@ -14068,7 +14506,7 @@ helps to protect us against issues like https://github.com/nautobot/nautobot/iss
|
|
|
14068
14506
|
|
|
14069
14507
|
<div class="doc doc-contents ">
|
|
14070
14508
|
|
|
14071
|
-
|
|
14509
|
+
<p>Test method to assert that the given component property is marked as non-nullable.</p>
|
|
14072
14510
|
|
|
14073
14511
|
</div>
|
|
14074
14512
|
|
|
@@ -14085,7 +14523,7 @@ helps to protect us against issues like https://github.com/nautobot/nautobot/iss
|
|
|
14085
14523
|
|
|
14086
14524
|
<div class="doc doc-contents ">
|
|
14087
14525
|
|
|
14088
|
-
|
|
14526
|
+
<p>Test method to assert that the given component property is not marked as read-only.</p>
|
|
14089
14527
|
|
|
14090
14528
|
</div>
|
|
14091
14529
|
|
|
@@ -14102,7 +14540,7 @@ helps to protect us against issues like https://github.com/nautobot/nautobot/iss
|
|
|
14102
14540
|
|
|
14103
14541
|
<div class="doc doc-contents ">
|
|
14104
14542
|
|
|
14105
|
-
|
|
14543
|
+
<p>Test method to assert that the given component property is marked as nullable.</p>
|
|
14106
14544
|
|
|
14107
14545
|
</div>
|
|
14108
14546
|
|
|
@@ -14119,7 +14557,7 @@ helps to protect us against issues like https://github.com/nautobot/nautobot/iss
|
|
|
14119
14557
|
|
|
14120
14558
|
<div class="doc doc-contents ">
|
|
14121
14559
|
|
|
14122
|
-
|
|
14560
|
+
<p>Test method to assert that the given component property is marked as read-only.</p>
|
|
14123
14561
|
|
|
14124
14562
|
</div>
|
|
14125
14563
|
|
|
@@ -14136,7 +14574,7 @@ helps to protect us against issues like https://github.com/nautobot/nautobot/iss
|
|
|
14136
14574
|
|
|
14137
14575
|
<div class="doc doc-contents ">
|
|
14138
14576
|
|
|
14139
|
-
|
|
14577
|
+
<p>Helper method to pull a specific component schema from the larger OpenAPI schema already loaded.</p>
|
|
14140
14578
|
|
|
14141
14579
|
</div>
|
|
14142
14580
|
|
|
@@ -14153,7 +14591,7 @@ helps to protect us against issues like https://github.com/nautobot/nautobot/iss
|
|
|
14153
14591
|
|
|
14154
14592
|
<div class="doc doc-contents ">
|
|
14155
14593
|
|
|
14156
|
-
|
|
14594
|
+
<p>Helper method to identify a component referenced by the given property of the current component.</p>
|
|
14157
14595
|
|
|
14158
14596
|
</div>
|
|
14159
14597
|
|
|
@@ -14170,7 +14608,7 @@ helps to protect us against issues like https://github.com/nautobot/nautobot/iss
|
|
|
14170
14608
|
|
|
14171
14609
|
<div class="doc doc-contents ">
|
|
14172
14610
|
|
|
14173
|
-
|
|
14611
|
+
<p>Helper method to pull a specific property schema from a larger component schema already extracted.</p>
|
|
14174
14612
|
|
|
14175
14613
|
</div>
|
|
14176
14614
|
|
|
@@ -14187,7 +14625,7 @@ helps to protect us against issues like https://github.com/nautobot/nautobot/iss
|
|
|
14187
14625
|
|
|
14188
14626
|
<div class="doc doc-contents ">
|
|
14189
14627
|
|
|
14190
|
-
|
|
14628
|
+
<p>Bringing it all together.</p>
|
|
14191
14629
|
<p>This validates the schema to show that:
|
|
14192
14630
|
- The component exists and has such a property
|
|
14193
14631
|
- The property has the correct <code>nullable</code> and <code>readOnly</code> values
|
|
@@ -14207,7 +14645,7 @@ helps to protect us against issues like https://github.com/nautobot/nautobot/iss
|
|
|
14207
14645
|
<tbody>
|
|
14208
14646
|
<tr class="doc-section-item">
|
|
14209
14647
|
<td>
|
|
14210
|
-
<code
|
|
14648
|
+
<code>Tuple[ref_component_name, ref_component_schema]</code>
|
|
14211
14649
|
</td>
|
|
14212
14650
|
<td>
|
|
14213
14651
|
<div class="doc-md-description">
|
|
@@ -14252,16 +14690,21 @@ helps to protect us against issues like https://github.com/nautobot/nautobot/iss
|
|
|
14252
14690
|
|
|
14253
14691
|
<div class="doc doc-contents ">
|
|
14254
14692
|
<p class="doc doc-class-bases">
|
|
14255
|
-
Bases: <code><
|
|
14693
|
+
Bases: <code><span title="django.contrib.staticfiles.testing.StaticLiveServerTestCase">StaticLiveServerTestCase</span></code>, <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.NautobotTestCaseMixin" href="#nautobot.apps.testing.NautobotTestCaseMixin">NautobotTestCaseMixin</a></code></p>
|
|
14256
14694
|
|
|
14257
14695
|
|
|
14258
|
-
|
|
14696
|
+
<p>Base test case for Splinter Selenium integration testing with custom helper methods.</p>
|
|
14259
14697
|
<p>This extends <code>django.contrib.staticfiles.testing.StaticLiveServerTestCase</code>
|
|
14260
14698
|
so there is no need to run <code>collectstatic</code> prior to running tests.</p>
|
|
14261
14699
|
|
|
14262
14700
|
|
|
14263
14701
|
|
|
14264
14702
|
|
|
14703
|
+
|
|
14704
|
+
|
|
14705
|
+
|
|
14706
|
+
|
|
14707
|
+
|
|
14265
14708
|
<div class="doc doc-children">
|
|
14266
14709
|
|
|
14267
14710
|
|
|
@@ -14283,7 +14726,7 @@ so there is no need to run <code>collectstatic</code> prior to running tests.</p
|
|
|
14283
14726
|
|
|
14284
14727
|
<div class="doc doc-contents ">
|
|
14285
14728
|
|
|
14286
|
-
|
|
14729
|
+
<p>Helper function to click the "Create" button on a form.</p>
|
|
14287
14730
|
|
|
14288
14731
|
</div>
|
|
14289
14732
|
|
|
@@ -14300,7 +14743,7 @@ so there is no need to run <code>collectstatic</code> prior to running tests.</p
|
|
|
14300
14743
|
|
|
14301
14744
|
<div class="doc doc-contents ">
|
|
14302
14745
|
|
|
14303
|
-
|
|
14746
|
+
<p>Helper function to click the "Add" button on a list view.</p>
|
|
14304
14747
|
|
|
14305
14748
|
</div>
|
|
14306
14749
|
|
|
@@ -14317,7 +14760,7 @@ so there is no need to run <code>collectstatic</code> prior to running tests.</p
|
|
|
14317
14760
|
|
|
14318
14761
|
<div class="doc doc-contents ">
|
|
14319
14762
|
|
|
14320
|
-
|
|
14763
|
+
<p>Helper function to click on a parent menu and child menu in the navigation bar.</p>
|
|
14321
14764
|
|
|
14322
14765
|
</div>
|
|
14323
14766
|
|
|
@@ -14334,7 +14777,7 @@ so there is no need to run <code>collectstatic</code> prior to running tests.</p
|
|
|
14334
14777
|
|
|
14335
14778
|
<div class="doc doc-contents ">
|
|
14336
14779
|
|
|
14337
|
-
|
|
14780
|
+
<p>Helper function to fill a Select2 single selection field.</p>
|
|
14338
14781
|
|
|
14339
14782
|
</div>
|
|
14340
14783
|
|
|
@@ -14351,7 +14794,7 @@ so there is no need to run <code>collectstatic</code> prior to running tests.</p
|
|
|
14351
14794
|
|
|
14352
14795
|
<div class="doc doc-contents ">
|
|
14353
14796
|
|
|
14354
|
-
|
|
14797
|
+
<p>Helper function to fill a Select2 multi-selection field.</p>
|
|
14355
14798
|
|
|
14356
14799
|
</div>
|
|
14357
14800
|
|
|
@@ -14368,7 +14811,7 @@ so there is no need to run <code>collectstatic</code> prior to running tests.</p
|
|
|
14368
14811
|
|
|
14369
14812
|
<div class="doc doc-contents ">
|
|
14370
14813
|
|
|
14371
|
-
|
|
14814
|
+
<p>Navigate to <code>login_url</code> and perform a login w/ the provided <code>username</code> and <code>password</code>.</p>
|
|
14372
14815
|
|
|
14373
14816
|
</div>
|
|
14374
14817
|
|
|
@@ -14389,7 +14832,7 @@ so there is no need to run <code>collectstatic</code> prior to running tests.</p
|
|
|
14389
14832
|
|
|
14390
14833
|
<div class="doc doc-contents ">
|
|
14391
14834
|
|
|
14392
|
-
|
|
14835
|
+
<p>Close down the browser after tests are ran.</p>
|
|
14393
14836
|
|
|
14394
14837
|
</div>
|
|
14395
14838
|
|
|
@@ -14416,10 +14859,15 @@ so there is no need to run <code>collectstatic</code> prior to running tests.</p
|
|
|
14416
14859
|
|
|
14417
14860
|
<div class="doc doc-contents ">
|
|
14418
14861
|
<p class="doc doc-class-bases">
|
|
14419
|
-
Bases: <code><
|
|
14862
|
+
Bases: <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.mixins.NautobotTestCaseMixin" href="#nautobot.apps.testing.NautobotTestCaseMixin">NautobotTestCaseMixin</a></code>, <code><span title="django.test.TestCase">TestCase</span></code></p>
|
|
14863
|
+
|
|
14864
|
+
|
|
14865
|
+
<p>Base class for all Nautobot-specific unit tests.</p>
|
|
14866
|
+
|
|
14867
|
+
|
|
14868
|
+
|
|
14420
14869
|
|
|
14421
14870
|
|
|
14422
|
-
<p>Base class for all Nautobot-specific unit tests.</p>
|
|
14423
14871
|
|
|
14424
14872
|
|
|
14425
14873
|
|
|
@@ -14445,7 +14893,7 @@ so there is no need to run <code>collectstatic</code> prior to running tests.</p
|
|
|
14445
14893
|
|
|
14446
14894
|
<div class="doc doc-contents ">
|
|
14447
14895
|
|
|
14448
|
-
|
|
14896
|
+
<p>Initialize user and client.</p>
|
|
14449
14897
|
|
|
14450
14898
|
</div>
|
|
14451
14899
|
|
|
@@ -14472,10 +14920,15 @@ so there is no need to run <code>collectstatic</code> prior to running tests.</p
|
|
|
14472
14920
|
|
|
14473
14921
|
<div class="doc doc-contents ">
|
|
14474
14922
|
<p class="doc doc-class-bases">
|
|
14475
|
-
Bases: <code><
|
|
14923
|
+
Bases: <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.mixins.NautobotTestCaseMixin" href="#nautobot.apps.testing.NautobotTestCaseMixin">NautobotTestCaseMixin</a></code>, <code><span title="django.test.TransactionTestCase">TransactionTestCase</span></code></p>
|
|
14924
|
+
|
|
14925
|
+
|
|
14926
|
+
<p>Base test case class using the TransactionTestCase for unit testing</p>
|
|
14927
|
+
|
|
14928
|
+
|
|
14929
|
+
|
|
14476
14930
|
|
|
14477
14931
|
|
|
14478
|
-
<p>Base test case class using the TransactionTestCase for unit testing</p>
|
|
14479
14932
|
|
|
14480
14933
|
|
|
14481
14934
|
|
|
@@ -14501,7 +14954,7 @@ so there is no need to run <code>collectstatic</code> prior to running tests.</p
|
|
|
14501
14954
|
|
|
14502
14955
|
<div class="doc doc-contents ">
|
|
14503
14956
|
|
|
14504
|
-
|
|
14957
|
+
<p>Provide a clean, post-migration state before each test case.</p>
|
|
14505
14958
|
<p>django.test.TransactionTestCase truncates the database after each test runs. We need at least the default
|
|
14506
14959
|
statuses present in the database in order to run tests.</p>
|
|
14507
14960
|
|
|
@@ -14531,7 +14984,12 @@ statuses present in the database in order to run tests.</p>
|
|
|
14531
14984
|
<div class="doc doc-contents ">
|
|
14532
14985
|
|
|
14533
14986
|
|
|
14534
|
-
|
|
14987
|
+
<p>We keep any TestCases with test_* methods inside a class to prevent unittest from trying to run them.</p>
|
|
14988
|
+
|
|
14989
|
+
|
|
14990
|
+
|
|
14991
|
+
|
|
14992
|
+
|
|
14535
14993
|
|
|
14536
14994
|
|
|
14537
14995
|
|
|
@@ -14558,10 +15016,15 @@ statuses present in the database in order to run tests.</p>
|
|
|
14558
15016
|
|
|
14559
15017
|
<div class="doc doc-contents ">
|
|
14560
15018
|
<p class="doc doc-class-bases">
|
|
14561
|
-
Bases: <code><
|
|
15019
|
+
Bases: <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.views.ModelViewTestCase" href="#nautobot.apps.testing.ModelViewTestCase">ModelViewTestCase</a></code></p>
|
|
15020
|
+
|
|
15021
|
+
|
|
15022
|
+
<p>Delete multiple instances.</p>
|
|
15023
|
+
|
|
15024
|
+
|
|
15025
|
+
|
|
14562
15026
|
|
|
14563
15027
|
|
|
14564
|
-
<p>Delete multiple instances.</p>
|
|
14565
15028
|
|
|
14566
15029
|
|
|
14567
15030
|
|
|
@@ -14587,7 +15050,7 @@ statuses present in the database in order to run tests.</p>
|
|
|
14587
15050
|
|
|
14588
15051
|
<div class="doc doc-contents ">
|
|
14589
15052
|
|
|
14590
|
-
|
|
15053
|
+
<p>Get a list of PKs corresponding to objects that can be safely bulk-deleted.</p>
|
|
14591
15054
|
<p>For some models this may just be any random objects, but when we have FKs with <code>on_delete=models.PROTECT</code>
|
|
14592
15055
|
(as is often the case) we need to find or create an instance that doesn't have such entanglements.</p>
|
|
14593
15056
|
|
|
@@ -14616,57 +15079,19 @@ statuses present in the database in order to run tests.</p>
|
|
|
14616
15079
|
|
|
14617
15080
|
<div class="doc doc-contents ">
|
|
14618
15081
|
<p class="doc doc-class-bases">
|
|
14619
|
-
Bases: <code><
|
|
15082
|
+
Bases: <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.views.ModelViewTestCase" href="#nautobot.apps.testing.ModelViewTestCase">ModelViewTestCase</a></code></p>
|
|
14620
15083
|
|
|
14621
15084
|
|
|
14622
|
-
|
|
15085
|
+
<p>Edit multiple instances.</p>
|
|
14623
15086
|
<p>:bulk_edit_data: A dictionary of data to be used when bulk editing a set of objects. This data should differ
|
|
14624
15087
|
from that used for initial object creation within setUpTestData().</p>
|
|
14625
15088
|
|
|
14626
15089
|
|
|
14627
15090
|
|
|
14628
15091
|
|
|
14629
|
-
<div class="doc doc-children">
|
|
14630
|
-
|
|
14631
|
-
|
|
14632
|
-
|
|
14633
|
-
|
|
14634
|
-
|
|
14635
|
-
|
|
14636
|
-
|
|
14637
|
-
|
|
14638
|
-
|
|
14639
|
-
|
|
14640
|
-
|
|
14641
|
-
</div>
|
|
14642
|
-
|
|
14643
|
-
</div>
|
|
14644
|
-
|
|
14645
|
-
</div>
|
|
14646
|
-
|
|
14647
|
-
<div class="doc doc-object doc-class">
|
|
14648
15092
|
|
|
14649
15093
|
|
|
14650
15094
|
|
|
14651
|
-
<h3 id="nautobot.apps.testing.ViewTestCases.BulkImportObjectsViewTestCase" class="doc doc-heading">
|
|
14652
|
-
<code>BulkImportObjectsViewTestCase</code>
|
|
14653
|
-
|
|
14654
|
-
|
|
14655
|
-
<a href="#nautobot.apps.testing.ViewTestCases.BulkImportObjectsViewTestCase" class="headerlink" title="Permanent link">¶</a></h3>
|
|
14656
|
-
|
|
14657
|
-
|
|
14658
|
-
<div class="doc doc-contents ">
|
|
14659
|
-
<p class="doc doc-class-bases">
|
|
14660
|
-
Bases: <code><autoref identifier="nautobot.core.testing.views.ModelViewTestCase" optional hover>ModelViewTestCase</autoref></code></p>
|
|
14661
|
-
|
|
14662
|
-
|
|
14663
|
-
<p>Vestigial test case, to be removed in 3.0.</p>
|
|
14664
|
-
<p>This is vestigial since the introduction of the ImportObjects system Job to handle bulk-import of all
|
|
14665
|
-
content-types via REST API serializers. The parsing of CSV data by the serializer is exercised by
|
|
14666
|
-
APIViewTestCases.CreateObjectViewTestCase.test_recreate_object_csv(), and the basic operation of the Job is
|
|
14667
|
-
exercised by nautobot.core.tests.test_jobs.</p>
|
|
14668
|
-
|
|
14669
|
-
|
|
14670
15095
|
|
|
14671
15096
|
|
|
14672
15097
|
<div class="doc doc-children">
|
|
@@ -14700,10 +15125,15 @@ exercised by nautobot.core.tests.test_jobs.</p>
|
|
|
14700
15125
|
|
|
14701
15126
|
<div class="doc doc-contents ">
|
|
14702
15127
|
<p class="doc doc-class-bases">
|
|
14703
|
-
Bases: <code><
|
|
15128
|
+
Bases: <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.views.ModelViewTestCase" href="#nautobot.apps.testing.ModelViewTestCase">ModelViewTestCase</a></code></p>
|
|
15129
|
+
|
|
15130
|
+
|
|
15131
|
+
<p>Rename multiple instances.</p>
|
|
15132
|
+
|
|
15133
|
+
|
|
15134
|
+
|
|
14704
15135
|
|
|
14705
15136
|
|
|
14706
|
-
<p>Rename multiple instances.</p>
|
|
14707
15137
|
|
|
14708
15138
|
|
|
14709
15139
|
|
|
@@ -14739,16 +15169,21 @@ exercised by nautobot.core.tests.test_jobs.</p>
|
|
|
14739
15169
|
|
|
14740
15170
|
<div class="doc doc-contents ">
|
|
14741
15171
|
<p class="doc doc-class-bases">
|
|
14742
|
-
Bases: <code><
|
|
15172
|
+
Bases: <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.views.ModelViewTestCase" href="#nautobot.apps.testing.ModelViewTestCase">ModelViewTestCase</a></code></p>
|
|
14743
15173
|
|
|
14744
15174
|
|
|
14745
|
-
|
|
15175
|
+
<p>Create multiple instances using a single form. Expects the creation of three new instances by default.</p>
|
|
14746
15176
|
<p>:bulk_create_count: The number of objects expected to be created (default: 3).
|
|
14747
15177
|
:bulk_create_data: A dictionary of data to be used for bulk object creation.</p>
|
|
14748
15178
|
|
|
14749
15179
|
|
|
14750
15180
|
|
|
14751
15181
|
|
|
15182
|
+
|
|
15183
|
+
|
|
15184
|
+
|
|
15185
|
+
|
|
15186
|
+
|
|
14752
15187
|
<div class="doc doc-children">
|
|
14753
15188
|
|
|
14754
15189
|
|
|
@@ -14780,58 +15215,29 @@ exercised by nautobot.core.tests.test_jobs.</p>
|
|
|
14780
15215
|
|
|
14781
15216
|
<div class="doc doc-contents ">
|
|
14782
15217
|
<p class="doc doc-class-bases">
|
|
14783
|
-
Bases: <code><
|
|
15218
|
+
Bases: <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.views.ModelViewTestCase" href="#nautobot.apps.testing.ModelViewTestCase">ModelViewTestCase</a></code></p>
|
|
14784
15219
|
|
|
14785
15220
|
|
|
14786
|
-
|
|
15221
|
+
<p>Create a single new instance.</p>
|
|
14787
15222
|
<p>:form_data: Data to be used when creating a new object.</p>
|
|
14788
15223
|
|
|
14789
15224
|
|
|
14790
15225
|
|
|
14791
15226
|
|
|
14792
|
-
<div class="doc doc-children">
|
|
14793
|
-
|
|
14794
|
-
|
|
14795
|
-
|
|
14796
|
-
|
|
14797
|
-
|
|
14798
15227
|
|
|
14799
15228
|
|
|
14800
15229
|
|
|
14801
15230
|
|
|
14802
|
-
<div class="doc doc-object doc-function">
|
|
14803
|
-
|
|
14804
|
-
|
|
14805
|
-
<h4 id="nautobot.apps.testing.ViewTestCases.CreateObjectViewTestCase.test_slug_autocreation" class="doc doc-heading">
|
|
14806
|
-
<code class="highlight language-python"><span class="n">test_slug_autocreation</span><span class="p">()</span></code>
|
|
14807
|
-
|
|
14808
|
-
<a href="#nautobot.apps.testing.ViewTestCases.CreateObjectViewTestCase.test_slug_autocreation" class="headerlink" title="Permanent link">¶</a></h4>
|
|
14809
|
-
|
|
14810
|
-
|
|
14811
|
-
<div class="doc doc-contents ">
|
|
14812
|
-
|
|
14813
|
-
<p>Test that slug is autocreated through ORM.</p>
|
|
14814
|
-
|
|
14815
|
-
</div>
|
|
14816
|
-
|
|
14817
|
-
</div>
|
|
14818
15231
|
|
|
14819
|
-
<div class="doc doc-
|
|
15232
|
+
<div class="doc doc-children">
|
|
14820
15233
|
|
|
14821
15234
|
|
|
14822
|
-
<h4 id="nautobot.apps.testing.ViewTestCases.CreateObjectViewTestCase.test_slug_not_modified" class="doc doc-heading">
|
|
14823
|
-
<code class="highlight language-python"><span class="n">test_slug_not_modified</span><span class="p">()</span></code>
|
|
14824
15235
|
|
|
14825
|
-
<a href="#nautobot.apps.testing.ViewTestCases.CreateObjectViewTestCase.test_slug_not_modified" class="headerlink" title="Permanent link">¶</a></h4>
|
|
14826
15236
|
|
|
14827
15237
|
|
|
14828
|
-
<div class="doc doc-contents ">
|
|
14829
15238
|
|
|
14830
|
-
<p>Ensure save method does not modify slug that is passed in.</p>
|
|
14831
15239
|
|
|
14832
|
-
</div>
|
|
14833
15240
|
|
|
14834
|
-
</div>
|
|
14835
15241
|
|
|
14836
15242
|
|
|
14837
15243
|
|
|
@@ -14854,10 +15260,15 @@ exercised by nautobot.core.tests.test_jobs.</p>
|
|
|
14854
15260
|
|
|
14855
15261
|
<div class="doc doc-contents ">
|
|
14856
15262
|
<p class="doc doc-class-bases">
|
|
14857
|
-
Bases: <code><
|
|
15263
|
+
Bases: <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.views.ModelViewTestCase" href="#nautobot.apps.testing.ModelViewTestCase">ModelViewTestCase</a></code></p>
|
|
15264
|
+
|
|
15265
|
+
|
|
15266
|
+
<p>Delete a single instance.</p>
|
|
15267
|
+
|
|
15268
|
+
|
|
15269
|
+
|
|
14858
15270
|
|
|
14859
15271
|
|
|
14860
|
-
<p>Delete a single instance.</p>
|
|
14861
15272
|
|
|
14862
15273
|
|
|
14863
15274
|
|
|
@@ -14883,7 +15294,7 @@ exercised by nautobot.core.tests.test_jobs.</p>
|
|
|
14883
15294
|
|
|
14884
15295
|
<div class="doc doc-contents ">
|
|
14885
15296
|
|
|
14886
|
-
|
|
15297
|
+
<p>Get an instance that can be deleted.</p>
|
|
14887
15298
|
<p>For some models this may just be any random object, but when we have FKs with <code>on_delete=models.PROTECT</code>
|
|
14888
15299
|
(as is often the case) we need to find or create an instance that doesn't have such entanglements.</p>
|
|
14889
15300
|
|
|
@@ -14912,10 +15323,15 @@ exercised by nautobot.core.tests.test_jobs.</p>
|
|
|
14912
15323
|
|
|
14913
15324
|
<div class="doc doc-contents ">
|
|
14914
15325
|
<p class="doc doc-class-bases">
|
|
14915
|
-
Bases: <code><
|
|
15326
|
+
Bases: <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.views.ViewTestCases.EditObjectViewTestCase" href="#nautobot.apps.testing.ViewTestCases.EditObjectViewTestCase">EditObjectViewTestCase</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.views.ViewTestCases.DeleteObjectViewTestCase" href="#nautobot.apps.testing.ViewTestCases.DeleteObjectViewTestCase">DeleteObjectViewTestCase</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.views.ViewTestCases.CreateMultipleObjectsViewTestCase" href="#nautobot.apps.testing.ViewTestCases.CreateMultipleObjectsViewTestCase">CreateMultipleObjectsViewTestCase</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.views.ViewTestCases.BulkEditObjectsViewTestCase" href="#nautobot.apps.testing.ViewTestCases.BulkEditObjectsViewTestCase">BulkEditObjectsViewTestCase</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.views.ViewTestCases.BulkRenameObjectsViewTestCase" href="#nautobot.apps.testing.ViewTestCases.BulkRenameObjectsViewTestCase">BulkRenameObjectsViewTestCase</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.views.ViewTestCases.BulkDeleteObjectsViewTestCase" href="#nautobot.apps.testing.ViewTestCases.BulkDeleteObjectsViewTestCase">BulkDeleteObjectsViewTestCase</a></code></p>
|
|
15327
|
+
|
|
15328
|
+
|
|
15329
|
+
<p>TestCase suitable for testing device component template models (ConsolePortTemplates, InterfaceTemplates, etc.)</p>
|
|
15330
|
+
|
|
15331
|
+
|
|
15332
|
+
|
|
14916
15333
|
|
|
14917
15334
|
|
|
14918
|
-
<p>TestCase suitable for testing device component template models (ConsolePortTemplates, InterfaceTemplates, etc.)</p>
|
|
14919
15335
|
|
|
14920
15336
|
|
|
14921
15337
|
|
|
@@ -14951,10 +15367,15 @@ exercised by nautobot.core.tests.test_jobs.</p>
|
|
|
14951
15367
|
|
|
14952
15368
|
<div class="doc doc-contents ">
|
|
14953
15369
|
<p class="doc doc-class-bases">
|
|
14954
|
-
Bases: <code><
|
|
15370
|
+
Bases: <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.views.ViewTestCases.GetObjectViewTestCase" href="#nautobot.apps.testing.ViewTestCases.GetObjectViewTestCase">GetObjectViewTestCase</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.views.ViewTestCases.GetObjectChangelogViewTestCase" href="#nautobot.apps.testing.ViewTestCases.GetObjectChangelogViewTestCase">GetObjectChangelogViewTestCase</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.views.ViewTestCases.GetObjectNotesViewTestCase" href="#nautobot.apps.testing.ViewTestCases.GetObjectNotesViewTestCase">GetObjectNotesViewTestCase</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.views.ViewTestCases.EditObjectViewTestCase" href="#nautobot.apps.testing.ViewTestCases.EditObjectViewTestCase">EditObjectViewTestCase</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.views.ViewTestCases.DeleteObjectViewTestCase" href="#nautobot.apps.testing.ViewTestCases.DeleteObjectViewTestCase">DeleteObjectViewTestCase</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.views.ViewTestCases.ListObjectsViewTestCase" href="#nautobot.apps.testing.ViewTestCases.ListObjectsViewTestCase">ListObjectsViewTestCase</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.views.ViewTestCases.CreateMultipleObjectsViewTestCase" href="#nautobot.apps.testing.ViewTestCases.CreateMultipleObjectsViewTestCase">CreateMultipleObjectsViewTestCase</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.views.ViewTestCases.BulkEditObjectsViewTestCase" href="#nautobot.apps.testing.ViewTestCases.BulkEditObjectsViewTestCase">BulkEditObjectsViewTestCase</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.views.ViewTestCases.BulkRenameObjectsViewTestCase" href="#nautobot.apps.testing.ViewTestCases.BulkRenameObjectsViewTestCase">BulkRenameObjectsViewTestCase</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.views.ViewTestCases.BulkDeleteObjectsViewTestCase" href="#nautobot.apps.testing.ViewTestCases.BulkDeleteObjectsViewTestCase">BulkDeleteObjectsViewTestCase</a></code></p>
|
|
15371
|
+
|
|
15372
|
+
|
|
15373
|
+
<p>TestCase suitable for testing device component models (ConsolePorts, Interfaces, etc.)</p>
|
|
15374
|
+
|
|
15375
|
+
|
|
15376
|
+
|
|
14955
15377
|
|
|
14956
15378
|
|
|
14957
|
-
<p>TestCase suitable for testing device component models (ConsolePorts, Interfaces, etc.)</p>
|
|
14958
15379
|
|
|
14959
15380
|
|
|
14960
15381
|
|
|
@@ -14984,7 +15405,7 @@ exercised by nautobot.core.tests.test_jobs.</p>
|
|
|
14984
15405
|
|
|
14985
15406
|
<div class="doc doc-contents ">
|
|
14986
15407
|
|
|
14987
|
-
|
|
15408
|
+
<p>Used for bulk-add (distinct from bulk-create) view testing; self.bulk_create_data will be used if unset.</p>
|
|
14988
15409
|
</div>
|
|
14989
15410
|
|
|
14990
15411
|
</div>
|
|
@@ -15002,7 +15423,7 @@ exercised by nautobot.core.tests.test_jobs.</p>
|
|
|
15002
15423
|
|
|
15003
15424
|
<div class="doc doc-contents ">
|
|
15004
15425
|
|
|
15005
|
-
|
|
15426
|
+
<p>Test bulk-adding this component to devices/virtual-machines.</p>
|
|
15006
15427
|
|
|
15007
15428
|
</div>
|
|
15008
15429
|
|
|
@@ -15029,16 +15450,21 @@ exercised by nautobot.core.tests.test_jobs.</p>
|
|
|
15029
15450
|
|
|
15030
15451
|
<div class="doc doc-contents ">
|
|
15031
15452
|
<p class="doc doc-class-bases">
|
|
15032
|
-
Bases: <code><
|
|
15453
|
+
Bases: <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.views.ModelViewTestCase" href="#nautobot.apps.testing.ModelViewTestCase">ModelViewTestCase</a></code></p>
|
|
15033
15454
|
|
|
15034
15455
|
|
|
15035
|
-
|
|
15456
|
+
<p>Edit a single existing instance.</p>
|
|
15036
15457
|
<p>:update_data: Data to be used when updating the first existing object, fall back to form_data if not provided.
|
|
15037
15458
|
:form_data: Fall back to this data if update_data is not provided, for backward compatibility.</p>
|
|
15038
15459
|
|
|
15039
15460
|
|
|
15040
15461
|
|
|
15041
15462
|
|
|
15463
|
+
|
|
15464
|
+
|
|
15465
|
+
|
|
15466
|
+
|
|
15467
|
+
|
|
15042
15468
|
<div class="doc doc-children">
|
|
15043
15469
|
|
|
15044
15470
|
|
|
@@ -15070,10 +15496,15 @@ exercised by nautobot.core.tests.test_jobs.</p>
|
|
|
15070
15496
|
|
|
15071
15497
|
<div class="doc doc-contents ">
|
|
15072
15498
|
<p class="doc doc-class-bases">
|
|
15073
|
-
Bases: <code><
|
|
15499
|
+
Bases: <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.views.ModelViewTestCase" href="#nautobot.apps.testing.ModelViewTestCase">ModelViewTestCase</a></code></p>
|
|
15500
|
+
|
|
15501
|
+
|
|
15502
|
+
<p>View the changelog for an instance.</p>
|
|
15503
|
+
|
|
15504
|
+
|
|
15505
|
+
|
|
15074
15506
|
|
|
15075
15507
|
|
|
15076
|
-
<p>View the changelog for an instance.</p>
|
|
15077
15508
|
|
|
15078
15509
|
|
|
15079
15510
|
|
|
@@ -15109,10 +15540,15 @@ exercised by nautobot.core.tests.test_jobs.</p>
|
|
|
15109
15540
|
|
|
15110
15541
|
<div class="doc doc-contents ">
|
|
15111
15542
|
<p class="doc doc-class-bases">
|
|
15112
|
-
Bases: <code><
|
|
15543
|
+
Bases: <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.views.ModelViewTestCase" href="#nautobot.apps.testing.ModelViewTestCase">ModelViewTestCase</a></code></p>
|
|
15544
|
+
|
|
15545
|
+
|
|
15546
|
+
<p>View the notes for an instance.</p>
|
|
15547
|
+
|
|
15548
|
+
|
|
15549
|
+
|
|
15113
15550
|
|
|
15114
15551
|
|
|
15115
|
-
<p>View the notes for an instance.</p>
|
|
15116
15552
|
|
|
15117
15553
|
|
|
15118
15554
|
|
|
@@ -15148,10 +15584,15 @@ exercised by nautobot.core.tests.test_jobs.</p>
|
|
|
15148
15584
|
|
|
15149
15585
|
<div class="doc doc-contents ">
|
|
15150
15586
|
<p class="doc doc-class-bases">
|
|
15151
|
-
Bases: <code><
|
|
15587
|
+
Bases: <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.views.ModelViewTestCase" href="#nautobot.apps.testing.ModelViewTestCase">ModelViewTestCase</a></code></p>
|
|
15588
|
+
|
|
15589
|
+
|
|
15590
|
+
<p>Retrieve a single instance.</p>
|
|
15591
|
+
|
|
15592
|
+
|
|
15593
|
+
|
|
15152
15594
|
|
|
15153
15595
|
|
|
15154
|
-
<p>Retrieve a single instance.</p>
|
|
15155
15596
|
|
|
15156
15597
|
|
|
15157
15598
|
|
|
@@ -15187,10 +15628,15 @@ exercised by nautobot.core.tests.test_jobs.</p>
|
|
|
15187
15628
|
|
|
15188
15629
|
<div class="doc doc-contents ">
|
|
15189
15630
|
<p class="doc doc-class-bases">
|
|
15190
|
-
Bases: <code><
|
|
15631
|
+
Bases: <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.views.ModelViewTestCase" href="#nautobot.apps.testing.ModelViewTestCase">ModelViewTestCase</a></code></p>
|
|
15632
|
+
|
|
15633
|
+
|
|
15634
|
+
<p>Retrieve multiple instances.</p>
|
|
15635
|
+
|
|
15636
|
+
|
|
15637
|
+
|
|
15191
15638
|
|
|
15192
15639
|
|
|
15193
|
-
<p>Retrieve multiple instances.</p>
|
|
15194
15640
|
|
|
15195
15641
|
|
|
15196
15642
|
|
|
@@ -15216,7 +15662,7 @@ exercised by nautobot.core.tests.test_jobs.</p>
|
|
|
15216
15662
|
|
|
15217
15663
|
<div class="doc doc-contents ">
|
|
15218
15664
|
|
|
15219
|
-
|
|
15665
|
+
<p>Verify that without STRICT_FILTERING, an unknown filter is ignored.</p>
|
|
15220
15666
|
|
|
15221
15667
|
</div>
|
|
15222
15668
|
|
|
@@ -15233,7 +15679,7 @@ exercised by nautobot.core.tests.test_jobs.</p>
|
|
|
15233
15679
|
|
|
15234
15680
|
<div class="doc doc-contents ">
|
|
15235
15681
|
|
|
15236
|
-
|
|
15682
|
+
<p>Verify that with STRICT_FILTERING, an unknown filter results in an error message and no matches.</p>
|
|
15237
15683
|
|
|
15238
15684
|
</div>
|
|
15239
15685
|
|
|
@@ -15250,7 +15696,7 @@ exercised by nautobot.core.tests.test_jobs.</p>
|
|
|
15250
15696
|
|
|
15251
15697
|
<div class="doc doc-contents ">
|
|
15252
15698
|
|
|
15253
|
-
|
|
15699
|
+
<p>If example app is installed, check if the app banner is rendered correctly in ObjectListView.</p>
|
|
15254
15700
|
|
|
15255
15701
|
</div>
|
|
15256
15702
|
|
|
@@ -15277,10 +15723,15 @@ exercised by nautobot.core.tests.test_jobs.</p>
|
|
|
15277
15723
|
|
|
15278
15724
|
<div class="doc doc-contents ">
|
|
15279
15725
|
<p class="doc doc-class-bases">
|
|
15280
|
-
Bases: <code><
|
|
15726
|
+
Bases: <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.views.ViewTestCases.GetObjectViewTestCase" href="#nautobot.apps.testing.ViewTestCases.GetObjectViewTestCase">GetObjectViewTestCase</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.views.ViewTestCases.GetObjectChangelogViewTestCase" href="#nautobot.apps.testing.ViewTestCases.GetObjectChangelogViewTestCase">GetObjectChangelogViewTestCase</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.views.ViewTestCases.GetObjectNotesViewTestCase" href="#nautobot.apps.testing.ViewTestCases.GetObjectNotesViewTestCase">GetObjectNotesViewTestCase</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.views.ViewTestCases.CreateObjectViewTestCase" href="#nautobot.apps.testing.ViewTestCases.CreateObjectViewTestCase">CreateObjectViewTestCase</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.views.ViewTestCases.EditObjectViewTestCase" href="#nautobot.apps.testing.ViewTestCases.EditObjectViewTestCase">EditObjectViewTestCase</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.views.ViewTestCases.DeleteObjectViewTestCase" href="#nautobot.apps.testing.ViewTestCases.DeleteObjectViewTestCase">DeleteObjectViewTestCase</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.views.ViewTestCases.ListObjectsViewTestCase" href="#nautobot.apps.testing.ViewTestCases.ListObjectsViewTestCase">ListObjectsViewTestCase</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.views.ViewTestCases.BulkDeleteObjectsViewTestCase" href="#nautobot.apps.testing.ViewTestCases.BulkDeleteObjectsViewTestCase">BulkDeleteObjectsViewTestCase</a></code></p>
|
|
15727
|
+
|
|
15728
|
+
|
|
15729
|
+
<p>TestCase suitable for all organizational objects</p>
|
|
15730
|
+
|
|
15731
|
+
|
|
15732
|
+
|
|
15281
15733
|
|
|
15282
15734
|
|
|
15283
|
-
<p>TestCase suitable for all organizational objects</p>
|
|
15284
15735
|
|
|
15285
15736
|
|
|
15286
15737
|
|
|
@@ -15316,10 +15767,15 @@ exercised by nautobot.core.tests.test_jobs.</p>
|
|
|
15316
15767
|
|
|
15317
15768
|
<div class="doc doc-contents ">
|
|
15318
15769
|
<p class="doc doc-class-bases">
|
|
15319
|
-
Bases: <code><
|
|
15770
|
+
Bases: <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.views.ViewTestCases.GetObjectViewTestCase" href="#nautobot.apps.testing.ViewTestCases.GetObjectViewTestCase">GetObjectViewTestCase</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.views.ViewTestCases.GetObjectChangelogViewTestCase" href="#nautobot.apps.testing.ViewTestCases.GetObjectChangelogViewTestCase">GetObjectChangelogViewTestCase</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.views.ViewTestCases.GetObjectNotesViewTestCase" href="#nautobot.apps.testing.ViewTestCases.GetObjectNotesViewTestCase">GetObjectNotesViewTestCase</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.views.ViewTestCases.CreateObjectViewTestCase" href="#nautobot.apps.testing.ViewTestCases.CreateObjectViewTestCase">CreateObjectViewTestCase</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.views.ViewTestCases.EditObjectViewTestCase" href="#nautobot.apps.testing.ViewTestCases.EditObjectViewTestCase">EditObjectViewTestCase</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.views.ViewTestCases.DeleteObjectViewTestCase" href="#nautobot.apps.testing.ViewTestCases.DeleteObjectViewTestCase">DeleteObjectViewTestCase</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.views.ViewTestCases.ListObjectsViewTestCase" href="#nautobot.apps.testing.ViewTestCases.ListObjectsViewTestCase">ListObjectsViewTestCase</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.views.ViewTestCases.BulkEditObjectsViewTestCase" href="#nautobot.apps.testing.ViewTestCases.BulkEditObjectsViewTestCase">BulkEditObjectsViewTestCase</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.core.testing.views.ViewTestCases.BulkDeleteObjectsViewTestCase" href="#nautobot.apps.testing.ViewTestCases.BulkDeleteObjectsViewTestCase">BulkDeleteObjectsViewTestCase</a></code></p>
|
|
15771
|
+
|
|
15772
|
+
|
|
15773
|
+
<p>TestCase suitable for testing all standard View functions for primary objects</p>
|
|
15774
|
+
|
|
15775
|
+
|
|
15776
|
+
|
|
15320
15777
|
|
|
15321
15778
|
|
|
15322
|
-
<p>TestCase suitable for testing all standard View functions for primary objects</p>
|
|
15323
15779
|
|
|
15324
15780
|
|
|
15325
15781
|
|
|
@@ -15363,7 +15819,7 @@ exercised by nautobot.core.tests.test_jobs.</p>
|
|
|
15363
15819
|
|
|
15364
15820
|
<div class="doc doc-contents ">
|
|
15365
15821
|
|
|
15366
|
-
|
|
15822
|
+
<p>Test helper function to call get_job_class_and_model() then call run_job_for_testing().</p>
|
|
15367
15823
|
|
|
15368
15824
|
</div>
|
|
15369
15825
|
|
|
@@ -15380,7 +15836,7 @@ exercised by nautobot.core.tests.test_jobs.</p>
|
|
|
15380
15836
|
|
|
15381
15837
|
<div class="doc doc-contents ">
|
|
15382
15838
|
|
|
15383
|
-
|
|
15839
|
+
<p>Create a User with the given permissions.</p>
|
|
15384
15840
|
|
|
15385
15841
|
</div>
|
|
15386
15842
|
|
|
@@ -15397,7 +15853,7 @@ exercised by nautobot.core.tests.test_jobs.</p>
|
|
|
15397
15853
|
|
|
15398
15854
|
<div class="doc doc-contents ">
|
|
15399
15855
|
|
|
15400
|
-
|
|
15856
|
+
<p>Temporarily suppress expected warning messages to keep the test output clean.</p>
|
|
15401
15857
|
|
|
15402
15858
|
</div>
|
|
15403
15859
|
|
|
@@ -15414,7 +15870,7 @@ exercised by nautobot.core.tests.test_jobs.</p>
|
|
|
15414
15870
|
|
|
15415
15871
|
<div class="doc doc-contents ">
|
|
15416
15872
|
|
|
15417
|
-
|
|
15873
|
+
<p>Given decoded HTML content from an HTTP response, return a list of form errors.</p>
|
|
15418
15874
|
|
|
15419
15875
|
</div>
|
|
15420
15876
|
|
|
@@ -15431,7 +15887,7 @@ exercised by nautobot.core.tests.test_jobs.</p>
|
|
|
15431
15887
|
|
|
15432
15888
|
<div class="doc doc-contents ">
|
|
15433
15889
|
|
|
15434
|
-
|
|
15890
|
+
<p>Given raw HTML content from an HTTP response, extract the main div only.</p>
|
|
15435
15891
|
<html>
|
|
15436
15892
|
<head>... <link href="../../../assets/stylesheets/glightbox.min.css" rel="stylesheet"/><style>
|
|
15437
15893
|
html.glightbox-open { overflow: initial; height: 100%; }
|
|
@@ -15470,7 +15926,7 @@ document$.subscribe(() => { lightbox.reload() });
|
|
|
15470
15926
|
|
|
15471
15927
|
<div class="doc doc-contents ">
|
|
15472
15928
|
|
|
15473
|
-
|
|
15929
|
+
<p>For testing purposes only; it returns a random string of size 100 consisting of letters and numbers.</p>
|
|
15474
15930
|
|
|
15475
15931
|
</div>
|
|
15476
15932
|
|
|
@@ -15487,7 +15943,7 @@ document$.subscribe(() => { lightbox.reload() });
|
|
|
15487
15943
|
|
|
15488
15944
|
<div class="doc doc-contents ">
|
|
15489
15945
|
|
|
15490
|
-
|
|
15946
|
+
<p>Returns a subset of objects in the given queryset that have no protected relationships that would prevent deletion.</p>
|
|
15491
15947
|
|
|
15492
15948
|
</div>
|
|
15493
15949
|
|
|
@@ -15504,7 +15960,7 @@ document$.subscribe(() => { lightbox.reload() });
|
|
|
15504
15960
|
|
|
15505
15961
|
<div class="doc doc-contents ">
|
|
15506
15962
|
|
|
15507
|
-
|
|
15963
|
+
<p>Test helper function to look up a job class and job model and ensure the latter is enabled.</p>
|
|
15508
15964
|
|
|
15509
15965
|
|
|
15510
15966
|
<p><span class="doc-section-title">Parameters:</span></p>
|
|
@@ -15519,9 +15975,11 @@ document$.subscribe(() => { lightbox.reload() });
|
|
|
15519
15975
|
</thead>
|
|
15520
15976
|
<tbody>
|
|
15521
15977
|
<tr class="doc-section-item">
|
|
15522
|
-
<td><code>module</code></td>
|
|
15523
15978
|
<td>
|
|
15524
|
-
|
|
15979
|
+
<code>module</code>
|
|
15980
|
+
</td>
|
|
15981
|
+
<td>
|
|
15982
|
+
<code>str</code>
|
|
15525
15983
|
</td>
|
|
15526
15984
|
<td>
|
|
15527
15985
|
<div class="doc-md-description">
|
|
@@ -15533,9 +15991,11 @@ document$.subscribe(() => { lightbox.reload() });
|
|
|
15533
15991
|
</td>
|
|
15534
15992
|
</tr>
|
|
15535
15993
|
<tr class="doc-section-item">
|
|
15536
|
-
<td><code>name</code></td>
|
|
15537
15994
|
<td>
|
|
15538
|
-
|
|
15995
|
+
<code>name</code>
|
|
15996
|
+
</td>
|
|
15997
|
+
<td>
|
|
15998
|
+
<code>str</code>
|
|
15539
15999
|
</td>
|
|
15540
16000
|
<td>
|
|
15541
16001
|
<div class="doc-md-description">
|
|
@@ -15547,9 +16007,11 @@ document$.subscribe(() => { lightbox.reload() });
|
|
|
15547
16007
|
</td>
|
|
15548
16008
|
</tr>
|
|
15549
16009
|
<tr class="doc-section-item">
|
|
15550
|
-
<td><code>source</code></td>
|
|
15551
16010
|
<td>
|
|
15552
|
-
|
|
16011
|
+
<code>source</code>
|
|
16012
|
+
</td>
|
|
16013
|
+
<td>
|
|
16014
|
+
<code>str</code>
|
|
15553
16015
|
</td>
|
|
15554
16016
|
<td>
|
|
15555
16017
|
<div class="doc-md-description">
|
|
@@ -15575,7 +16037,7 @@ document$.subscribe(() => { lightbox.reload() });
|
|
|
15575
16037
|
<tbody>
|
|
15576
16038
|
<tr class="doc-section-item">
|
|
15577
16039
|
<td>
|
|
15578
|
-
<code><
|
|
16040
|
+
<code><span title="nautobot.core.testing.JobClassInfo">JobClassInfo</span></code>
|
|
15579
16041
|
</td>
|
|
15580
16042
|
<td>
|
|
15581
16043
|
<div class="doc-md-description">
|
|
@@ -15601,7 +16063,7 @@ document$.subscribe(() => { lightbox.reload() });
|
|
|
15601
16063
|
|
|
15602
16064
|
<div class="doc doc-contents ">
|
|
15603
16065
|
|
|
15604
|
-
|
|
16066
|
+
<p>Take a dictionary of test data (suitable for comparison to an instance) and return a dict suitable for POSTing.</p>
|
|
15605
16067
|
|
|
15606
16068
|
</div>
|
|
15607
16069
|
|
|
@@ -15618,7 +16080,7 @@ document$.subscribe(() => { lightbox.reload() });
|
|
|
15618
16080
|
|
|
15619
16081
|
<div class="doc doc-contents ">
|
|
15620
16082
|
|
|
15621
|
-
|
|
16083
|
+
<p>Provide a common interface to run Nautobot jobs as part of unit tests.</p>
|
|
15622
16084
|
|
|
15623
16085
|
|
|
15624
16086
|
<p><span class="doc-section-title">Parameters:</span></p>
|
|
@@ -15633,9 +16095,11 @@ document$.subscribe(() => { lightbox.reload() });
|
|
|
15633
16095
|
</thead>
|
|
15634
16096
|
<tbody>
|
|
15635
16097
|
<tr class="doc-section-item">
|
|
15636
|
-
<td><code>job</code></td>
|
|
15637
16098
|
<td>
|
|
15638
|
-
|
|
16099
|
+
<code>job</code>
|
|
16100
|
+
</td>
|
|
16101
|
+
<td>
|
|
16102
|
+
<code><span title="nautobot.extras.models.Job">Job</span></code>
|
|
15639
16103
|
</td>
|
|
15640
16104
|
<td>
|
|
15641
16105
|
<div class="doc-md-description">
|
|
@@ -15647,9 +16111,11 @@ document$.subscribe(() => { lightbox.reload() });
|
|
|
15647
16111
|
</td>
|
|
15648
16112
|
</tr>
|
|
15649
16113
|
<tr class="doc-section-item">
|
|
15650
|
-
<td><code>username</code></td>
|
|
15651
16114
|
<td>
|
|
15652
|
-
|
|
16115
|
+
<code>username</code>
|
|
16116
|
+
</td>
|
|
16117
|
+
<td>
|
|
16118
|
+
<code>str</code>
|
|
15653
16119
|
</td>
|
|
15654
16120
|
<td>
|
|
15655
16121
|
<div class="doc-md-description">
|
|
@@ -15661,9 +16127,11 @@ document$.subscribe(() => { lightbox.reload() });
|
|
|
15661
16127
|
</td>
|
|
15662
16128
|
</tr>
|
|
15663
16129
|
<tr class="doc-section-item">
|
|
15664
|
-
<td><code>profile</code></td>
|
|
15665
16130
|
<td>
|
|
15666
|
-
|
|
16131
|
+
<code>profile</code>
|
|
16132
|
+
</td>
|
|
16133
|
+
<td>
|
|
16134
|
+
<code>bool</code>
|
|
15667
16135
|
</td>
|
|
15668
16136
|
<td>
|
|
15669
16137
|
<div class="doc-md-description">
|
|
@@ -15691,7 +16159,7 @@ document$.subscribe(() => { lightbox.reload() });
|
|
|
15691
16159
|
<tr class="doc-section-item">
|
|
15692
16160
|
<td><code>**kwargs</code></td>
|
|
15693
16161
|
<td>
|
|
15694
|
-
<code
|
|
16162
|
+
<code>any</code>
|
|
15695
16163
|
</td>
|
|
15696
16164
|
<td>
|
|
15697
16165
|
<div class="doc-md-description">
|
|
@@ -15714,7 +16182,7 @@ document$.subscribe(() => { lightbox.reload() });
|
|
|
15714
16182
|
<tbody>
|
|
15715
16183
|
<tr class="doc-section-item">
|
|
15716
16184
|
<td>
|
|
15717
|
-
<code><
|
|
16185
|
+
<code><span title="nautobot.extras.models.JobResult">JobResult</span></code>
|
|
15718
16186
|
</td>
|
|
15719
16187
|
<td>
|
|
15720
16188
|
<div class="doc-md-description">
|
|
@@ -15879,7 +16347,7 @@ document$.subscribe(() => { lightbox.reload() });
|
|
|
15879
16347
|
</div>
|
|
15880
16348
|
|
|
15881
16349
|
|
|
15882
|
-
<script id="__config" type="application/json">{"base": "../../..", "features": ["content.code.copy", "content.tabs.link", "navigation.footer", "navigation.tabs", "navigation.tabs.sticky", "navigation.tracking", "search.highlight", "search.share", "search.suggest"], "search": "../../../assets/javascripts/workers/search.6ce7567c.min.js", "translations": {"clipboard.copied": "Copied to clipboard", "clipboard.copy": "Copy to clipboard", "search.result.more.one": "1 more on this page", "search.result.more.other": "# more on this page", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents", "search.result.placeholder": "Type to start searching", "search.result.term.missing": "Missing", "select.version": "Select version"}}</script>
|
|
16350
|
+
<script id="__config" type="application/json">{"base": "../../..", "features": ["content.code.annotate", "content.code.copy", "content.tabs.link", "navigation.footer", "navigation.tabs", "navigation.tabs.sticky", "navigation.tracking", "search.highlight", "search.share", "search.suggest"], "search": "../../../assets/javascripts/workers/search.6ce7567c.min.js", "translations": {"clipboard.copied": "Copied to clipboard", "clipboard.copy": "Copy to clipboard", "search.result.more.one": "1 more on this page", "search.result.more.other": "# more on this page", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents", "search.result.placeholder": "Type to start searching", "search.result.term.missing": "Missing", "select.version": "Select version"}}</script>
|
|
15883
16351
|
|
|
15884
16352
|
|
|
15885
16353
|
<script src="../../../assets/javascripts/bundle.88dd0f4e.min.js"></script>
|