CI API Coverage¶
This document tracks the CI coverage for each of our public APIs. The intent to make it clear what is "sufficiently tested", and what needs further effort. This list is manually updated, so we'll need to show discipline in ensuring that we update it as we change APIs or CI.
For this document we use the python API client as a model of what to cover, as its simpler to extract a list of calls from than the API implementation itself. We list whether we have CI which calls the API directly, CI which uses the python command line client to call the API, or both. The gold standard is both.
get_instances¶
Whilst being implied by every test tearDown(), this call is explicitly used in:
- TestCirros.test_cirros_boot_no_network
- TestCirros.test_cirros_boot_network
- TestPlacement.test_local_placement_works
- TestPlacement.test_remote_placement_works
- TestSystemNamespace.test_system_namespace
- TestUbuntu.test_ubuntu_pings
delete_all_instances¶
Not tested.
get_instance¶
All callers of await_instance_event call get_instance(). However, these more explicit tests exist as well:
- TestCacheImage.test_instance_invalid_image
get_instance_interfaces¶
- TestMultipleNics.test_simple
- TestNetworking.test_virtual_networks_are_separate
- TestNetworking.test_overlapping_virtual_networks_are_separate
- TestNetworking.test_single_virtal_networks_work
- TestNetworking.test_specific_ip_request
- TestPlacement.test_local_placement_works
- TestPlacement.test_remote_placement_works
- TestStateChanges.test_lifecycle_events
- TestUbuntu.test_ubuntu_pings
get_instance_metadata¶
- TestInstanceMetadata.test_simple
set_instance_metadata_item¶
- TestInstanceMetadata.test_simple
delete_instance_metadata_item¶
Not tested.
create_instance¶
Tested extensively in most other tests, so tests are not listed here.
snapshot_instance¶
- TestSnapshots.test_single_disk_snapshots
- TestSnapshots.test_multiple_disk_snapshots
get_instance_snapshots¶
- TestSnapshots.test_single_disk_snapshots
- TestSnapshots.test_multiple_disk_snapshots
reboot_instance¶
- TestStateChanges.test_lifecycle_events
power_off_instance¶
- TestStateChanges.test_lifecycle_events
power_on_instance¶
- TestStateChanges.test_lifecycle_events
pause_instance¶
- TestStateChanges.test_lifecycle_events
unpause_instance¶
- TestStateChanges.test_lifecycle_events
delete_instance¶
Whilst being implied by every test tearDown(), this call is explicitly used in:
- TestCirros.test_cirros_boot_no_network
- TestCirros.test_cirros_boot_network
- TestPlacement.test_local_placement_works
- TestPlacement.test_remote_placement_works
- TestSnapshots.test_single_disk_snapshots
- TestSnapshots.test_multiple_disk_snapshots
- TestSystemNamespace.test_system_namespace
- TestUbuntu.test_ubuntu_pings
get_instance_events¶
All callers of await_instance_event call get_instance(). However, more testing of this method is required.
cache_image¶
- TestImages.test_cache_image
get_images¶
(Formerly get_image_meta, old name to be removed in 0.5).
- TestImages.test_cache_image
get_image_events¶
Not tested.
get_networks¶
Whilst being implied by every test tearDown(), this call is explicitly used in:
- TestSystemNamespace.test_system_namespace
get_network¶
Not tested.
delete_network¶
Whilst being implied by every test tearDown(), this call is explicitly used in:
- TestSystemNamespace.test_system_namespace
delete_all_networks¶
Not tested.
get_network_events¶
Not tested.
allocate_network¶
Tested extensively in most other tests, so tests are not listed here.
get_network_interfaces¶
Not tested.
get_network_metadata¶
Not tested.
set_network_metadata_item¶
Not tested.
delete_network_metadata_item¶
Not tested.
get_nodes¶
Not tested.
get_interface¶
Not tested.
float_interface¶
Not tested.
defloat_interface¶
Not tested.
get_console_data¶
- TestConsoleLog.test_console_log
get_namespaces¶
As well as being tested as a side effect of most other tests, there is the following explicit test:
- TestAuth.test_namespaces
create_namespace¶
As well as being tested as a side effect of most other tests, there is the following explicit test:
- TestAuth.test_namespaces
delete_namespace¶
As well as being tested as a side effect of most other tests, there is the following explicit test:
- TestAuth.test_namespaces
get_namespace_keynames¶
Not tested.
add_namespace_key¶
- TestAuth.test_namespaces
delete_namespace_key¶
- TestAuth.test_namespaces
get_namespace_metadata¶
Not tested.
set_namespace_metadata_item¶
Not tested.
delete_namespace_metadata_item¶
Not tested.
get_existing_locks¶
Not tested.
ping¶
Tested as a side effect of many other tests, but no explicit test.