nova/nova/tests/unit
Balazs Gibizer 5c50a45a1e Fix RequestLevelParams persistence handling in RequestSpec
The request_level_params field of the RequestSpec are intentionally not
persistent and at the same time it is declared as non nullable. The
current code handling the persistence of this field actually set the
request_level_params field to None breaking the non nullable invariant
of the field.

So far this is error is not triggered as the request_level_params field
was only used lazy loading, which is defaulted the field to a new
RequestLevelParam object on the RequestSpec object that was never saved after
such lazy load. A later patch will initialize request_level_params field
in the RequestSpec.from_components() factory method to handle this
parameters from Neutron ports and that triggers a failure when the
RequestSpec is saved.

There are a set of non nullable, non persisted RequestSpec fields that
are handled individually during create / save. This patch applies the
same logic to request_level_params as well.

Change-Id: I7d11ef8abb30686f9d125cac0e48369eab839b0f
2021-05-28 14:26:56 +02:00
..
accelerator Cyborg evacuate support 2020-09-01 08:41:45 +00:00
api image_meta: Provide image_ref as the id when fetching from instance 2021-05-20 16:57:24 +01:00
cmd tests: Move remaining non-libvirt fixtures 2021-05-12 16:32:43 +01:00
compute image_meta: Provide image_ref as the id when fetching from instance 2021-05-20 16:57:24 +01:00
conductor tests: Split external service fixtures out 2021-05-13 14:28:33 +01:00
conf Support different vGPU types per pGPU 2020-04-09 17:54:26 +02:00
console Reject open redirection in the console proxy 2021-05-14 17:26:00 +02:00
db Drop support for SQLite < 3.7 2021-04-21 12:03:36 +01:00
fake_loadables
fixtures tests: Move libvirt-specific fixtures 2021-05-24 11:00:29 +01:00
image glance: Remove [glance]/allowed_direct_url_schemes 2021-01-28 12:46:57 +00:00
keymgr
network Merge "Update SRIOV port pci_slot when unshelving" 2021-05-03 21:57:16 +00:00
notifications libvirt: Add support for virtio-based input devices 2021-03-05 11:00:02 +00:00
objects Fix RequestLevelParams persistence handling in RequestSpec 2021-05-28 14:26:56 +02:00
pci mypy: Add type annotations to 'nova.pci' 2021-04-26 18:06:21 +01:00
policies tests: Move remaining non-libvirt fixtures 2021-05-12 16:32:43 +01:00
privsep Remove VFSLocalFS 2021-03-03 17:55:43 +01:00
scheduler Merge "scheduler: Translate secure boot requests to trait" 2021-03-14 08:14:41 +00:00
servicegroup Handle ServiceNotFound in DbDriver._report_state 2019-12-04 09:50:17 -05:00
ssl_cert
storage Stop leaking ceph df cmd in RBD utils 2021-05-11 17:28:56 +02:00
virt Merge "image_meta: Provide image_ref as the id when fetching from instance" 2021-05-24 22:01:07 +00:00
volume Remove six.text_type (2/2) 2020-12-13 11:26:35 +00:00
__init__.py
fake_block_device.py
fake_build_request.py
fake_console_auth_token.py
fake_crypto.py
fake_diagnostics.py
fake_flavor.py
fake_hosts.py
fake_instance.py objects: Update keypairs when saving an instance 2020-07-22 12:29:19 +00:00
fake_ldap.py Remove six.moves 2020-11-07 03:25:02 +00:00
fake_network.py libvirt: Delegate OVS plug to os-vif 2021-04-30 12:51:35 +01:00
fake_network_cache_model.py Use UUID as vif and network_id in vif tests 2020-09-07 10:31:52 +02:00
fake_notifier.py
fake_pci_device_pools.py
fake_policy.py virt: Remove 'reset_network' API 2020-11-23 15:55:50 +00:00
fake_processutils.py Remove six.binary_type/integer_types/string_types 2020-12-13 11:25:14 +00:00
fake_request_spec.py objects: Introduce 'pcpuset' field for InstanceNUMACell 2020-07-14 00:38:34 +08:00
fake_requests.py
fake_server_actions.py Store instance action event exc_val fault details 2020-03-21 06:08:34 +00:00
fake_volume.py
image_fixtures.py
matchers.py Remove six.text_type (2/2) 2020-12-13 11:26:35 +00:00
test_api_validation.py Remove six.text_type (2/2) 2020-12-13 11:26:35 +00:00
test_availability_zones.py Remove six.text_type (2/2) 2020-12-13 11:26:35 +00:00
test_baserpc.py
test_block_device.py Remove six.text_type (2/2) 2020-12-13 11:26:35 +00:00
test_cache.py
test_cinder.py
test_conf.py test cleanup: Make base TestCase subclass oslotest 2019-11-22 22:38:22 +00:00
test_configdrive2.py
test_context.py Revert "Log CellTimeout traceback in scatter_gather_cells" 2019-10-22 17:12:28 -04:00
test_crypto.py Remove six.moves 2020-11-07 03:25:02 +00:00
test_exception.py rpc: Rework 'get_notifier', 'wrap_exception' 2021-03-01 11:06:48 +00:00
test_exception_wrapper.py rpc: Rework 'get_notifier', 'wrap_exception' 2021-03-01 11:06:48 +00:00
test_fake_notifier.py rpc: Rework 'get_notifier', 'wrap_exception' 2021-03-01 11:06:48 +00:00
test_fixtures.py tests: Move ConfFixture 2021-05-12 11:30:41 +01:00
test_flavors.py
test_hacking.py Merge "Add a hacking rule for assert_has_calls" 2020-10-14 14:31:15 +00:00
test_identity.py
test_instance_types_extra_specs.py
test_json_ref.py Remove six.moves 2020-11-07 03:25:02 +00:00
test_loadables.py
test_matchers.py
test_metadata.py Remove six.text_type (2/2) 2020-12-13 11:26:35 +00:00
test_notifications.py virt: Remove 'get_all_bw_counters' API 2020-11-24 15:29:21 +00:00
test_notifier.py
test_policy.py tests: Move remaining non-libvirt fixtures 2021-05-12 16:32:43 +01:00
test_profiler.py Remove six.moves 2020-11-07 03:25:02 +00:00
test_quota.py Remove six.moves 2020-11-07 03:25:02 +00:00
test_rpc.py rpc: Rework 'get_notifier', 'wrap_exception' 2021-03-01 11:06:48 +00:00
test_safeutils.py
test_service.py Restore retrying the RPC connection to conductor 2020-11-13 18:02:00 +01:00
test_service_auth.py
test_test.py Remove six.text_type (2/2) 2020-12-13 11:26:35 +00:00
test_test_utils.py Remove six.moves 2020-11-07 03:25:02 +00:00
test_utils.py Fix typo in test_utils 2021-05-10 15:04:31 -04:00
test_versions.py Change API unexpected exception message 2021-02-17 21:30:07 +00:00
test_weights.py
test_wsgi.py Remove six.PY2 and six.PY3 2020-08-15 07:45:23 +00:00
utils.py Remove six.moves 2020-11-07 03:25:02 +00:00