Coverage report: 81%

Files Functions Classes

coverage.py v7.6.12, created at 2025-05-07 06:04 +0000

File function statements missing excluded coverage
n2vc/__init__.py (no function) 1 0 0 100%
n2vc/config.py EnvironConfig.__init__ 5 0 0 100%
n2vc/config.py EnvironConfig._get_renamed_key 3 0 0 100%
n2vc/config.py ModelConfig.__init__ 3 0 0 100%
n2vc/config.py ModelConfig._get_renamed_key 1 0 0 100%
n2vc/config.py (no function) 11 0 0 100%
n2vc/definitions.py RelationEndpoint.__init__ 5 0 0 100%
n2vc/definitions.py RelationEndpoint.application_name 1 0 0 100%
n2vc/definitions.py RelationEndpoint.endpoint 1 0 0 100%
n2vc/definitions.py RelationEndpoint.endpoint_name 1 0 0 100%
n2vc/definitions.py RelationEndpoint.model_name 1 0 0 100%
n2vc/definitions.py RelationEndpoint.vca_id 1 0 0 100%
n2vc/definitions.py RelationEndpoint.__str__ 5 0 0 100%
n2vc/definitions.py Offer.__init__ 5 0 0 100%
n2vc/definitions.py Offer.model_name 1 0 0 100%
n2vc/definitions.py Offer.name 1 0 0 100%
n2vc/definitions.py Offer.username 1 0 0 100%
n2vc/definitions.py Offer.url 1 0 0 100%
n2vc/definitions.py Offer.vca_id 1 0 0 100%
n2vc/definitions.py (no function) 27 0 0 100%
n2vc/exceptions.py N2VCException.__init__ 2 0 0 100%
n2vc/exceptions.py N2VCException.__str__ 1 0 0 100%
n2vc/exceptions.py N2VCException.__repr__ 1 1 0 0%
n2vc/exceptions.py N2VCBadArgumentsException.__init__ 2 0 0 100%
n2vc/exceptions.py N2VCBadArgumentsException.__str__ 1 1 0 0%
n2vc/exceptions.py N2VCConnectionException.__init__ 2 2 0 0%
n2vc/exceptions.py N2VCConnectionException.__str__ 1 1 0 0%
n2vc/exceptions.py N2VCTimeoutException.__init__ 2 2 0 0%
n2vc/exceptions.py N2VCTimeoutException.__str__ 1 1 0 0%
n2vc/exceptions.py N2VCExecutionException.__init__ 2 2 0 0%
n2vc/exceptions.py N2VCExecutionException.__str__ 1 1 0 0%
n2vc/exceptions.py N2VCInvalidCertificate.__init__ 1 1 0 0%
n2vc/exceptions.py N2VCInvalidCertificate.__str__ 1 1 0 0%
n2vc/exceptions.py N2VCNotFound.__init__ 1 1 0 0%
n2vc/exceptions.py N2VCNotFound.__str__ 1 1 0 0%
n2vc/exceptions.py N2VCApplicationExists.__init__ 1 1 0 0%
n2vc/exceptions.py N2VCApplicationExists.__str__ 1 1 0 0%
n2vc/exceptions.py JujuError.__init__ 1 0 0 100%
n2vc/exceptions.py JujuError.__str__ 1 1 0 0%
n2vc/exceptions.py K8sException.__init__ 2 0 0 100%
n2vc/exceptions.py K8sException.__str__ 1 0 0 100%
n2vc/exceptions.py K8sException.__repr__ 1 1 0 0%
n2vc/exceptions.py (no function) 49 0 0 100%
n2vc/juju_watcher.py status 4 0 0 100%
n2vc/juju_watcher.py entity_ready 10 1 0 90%
n2vc/juju_watcher.py application_ready 4 4 0 0%
n2vc/juju_watcher.py JujuModelWatcher.wait_for_model 6 0 0 100%
n2vc/juju_watcher.py JujuModelWatcher.wait_for_model.wait_until_model_ready 6 0 0 100%
n2vc/juju_watcher.py JujuModelWatcher.wait_for 14 0 0 100%
n2vc/juju_watcher.py JujuModelWatcher.wait_for_units_idle 8 2 0 75%
n2vc/juju_watcher.py JujuModelWatcher.ensure_units_idle 35 2 0 94%
n2vc/juju_watcher.py JujuModelWatcher.model_watcher 30 2 0 93%
n2vc/juju_watcher.py JujuModelWatcher.get_status 8 0 0 100%
n2vc/juju_watcher.py (no function) 28 0 0 100%
n2vc/k8s_conn.py K8sConnector.generate_kdu_instance_name 1 1 0 0%
n2vc/k8s_conn.py K8sConnector.__init__ 3 0 0 100%
n2vc/k8s_conn.py K8sConnector.init_env 0 0 0 100%
n2vc/k8s_conn.py K8sConnector.repo_add 0 0 0 100%
n2vc/k8s_conn.py K8sConnector.repo_list 0 0 0 100%
n2vc/k8s_conn.py K8sConnector.repo_remove 0 0 0 100%
n2vc/k8s_conn.py K8sConnector.synchronize_repos 0 0 0 100%
n2vc/k8s_conn.py K8sConnector.reset 0 0 0 100%
n2vc/k8s_conn.py K8sConnector.install 0 0 0 100%
n2vc/k8s_conn.py K8sConnector.upgrade 0 0 0 100%
n2vc/k8s_conn.py K8sConnector.scale 0 0 0 100%
n2vc/k8s_conn.py K8sConnector.get_scale_count 0 0 0 100%
n2vc/k8s_conn.py K8sConnector.rollback 0 0 0 100%
n2vc/k8s_conn.py K8sConnector.uninstall 0 0 0 100%
n2vc/k8s_conn.py K8sConnector.exec_primitive 0 0 0 100%
n2vc/k8s_conn.py K8sConnector.upgrade_charm 0 0 0 100%
n2vc/k8s_conn.py K8sConnector.inspect_kdu 0 0 0 100%
n2vc/k8s_conn.py K8sConnector.help_kdu 0 0 0 100%
n2vc/k8s_conn.py K8sConnector.status_kdu 0 0 0 100%
n2vc/k8s_conn.py K8sConnector.get_services 0 0 0 100%
n2vc/k8s_conn.py K8sConnector.get_service 0 0 0 100%
n2vc/k8s_conn.py K8sConnector.write_app_status_to_db 23 23 0 0%
n2vc/k8s_conn.py (no function) 49 0 0 100%
n2vc/k8s_helm3_conn.py K8sHelm3Connector.__init__ 2 0 0 100%
n2vc/k8s_helm3_conn.py K8sHelm3Connector.install 19 1 0 95%
n2vc/k8s_helm3_conn.py K8sHelm3Connector.migrate 15 15 0 0%
n2vc/k8s_helm3_conn.py K8sHelm3Connector.inspect_kdu 2 0 0 100%
n2vc/k8s_helm3_conn.py K8sHelm3Connector._init_paths_env 29 3 0 90%
n2vc/k8s_helm3_conn.py K8sHelm3Connector._namespace_exists 3 0 0 100%
n2vc/k8s_helm3_conn.py K8sHelm3Connector._get_namespaces 8 8 0 0%
n2vc/k8s_helm3_conn.py K8sHelm3Connector._create_namespace 6 6 0 0%
n2vc/k8s_helm3_conn.py K8sHelm3Connector._get_services 6 0 0 100%
n2vc/k8s_helm3_conn.py K8sHelm3Connector._cluster_init 9 0 0 100%
n2vc/k8s_helm3_conn.py K8sHelm3Connector._uninstall_sw 1 1 0 0%
n2vc/k8s_helm3_conn.py K8sHelm3Connector._instances_list 7 2 0 71%
n2vc/k8s_helm3_conn.py K8sHelm3Connector._get_inspect_command 2 0 0 100%
n2vc/k8s_helm3_conn.py K8sHelm3Connector._get_get_command 2 0 0 100%
n2vc/k8s_helm3_conn.py K8sHelm3Connector._status_kdu 22 15 0 32%
n2vc/k8s_helm3_conn.py K8sHelm3Connector._get_install_command 21 3 0 86%
n2vc/k8s_helm3_conn.py K8sHelm3Connector._get_upgrade_scale_command 5 0 0 100%
n2vc/k8s_helm3_conn.py K8sHelm3Connector._get_upgrade_command 33 7 0 79%
n2vc/k8s_helm3_conn.py K8sHelm3Connector._get_rollback_command 1 0 0 100%
n2vc/k8s_helm3_conn.py K8sHelm3Connector._get_uninstall_command 1 0 0 100%
n2vc/k8s_helm3_conn.py K8sHelm3Connector._get_helm_chart_repos_ids 7 1 0 86%
n2vc/k8s_helm3_conn.py (no function) 29 0 0 100%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector.__init__ 22 4 0 82%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector._get_namespace 2 0 0 100%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector.init_env 13 1 0 92%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector.repo_add 27 12 0 56%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector.repo_update 7 0 0 100%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector.repo_list 12 3 0 75%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector.repo_remove 6 0 0 100%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector.reset 25 5 0 80%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector._is_helm_chart_a_file 1 0 0 100%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector._is_helm_chart_a_url 2 0 0 100%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector._install_impl 19 5 0 74%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector.upgrade 37 8 0 78%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector.scale 30 6 0 80%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector.get_scale_count 16 16 0 0%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector.rollback 26 5 0 81%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector.uninstall 12 2 0 83%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector.instances_list 5 0 0 100%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector.get_instance_info 6 6 0 0%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector.upgrade_charm 1 1 0 0%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector.exec_primitive 1 1 0 0%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector.get_services 10 0 0 100%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector.get_service 5 0 0 100%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector.status_kdu 10 10 0 0%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector.get_values_kdu 2 0 0 100%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector.values_kdu 2 0 0 100%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector.help_kdu 2 0 0 100%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector.synchronize_repos 36 12 0 67%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector._get_db_repos_dict 5 0 0 100%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector._init_paths_env 0 0 0 100%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector._cluster_init 0 0 0 100%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector._instances_list 0 0 0 100%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector._get_services 0 0 0 100%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector._status_kdu 0 0 0 100%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector._get_install_command 0 0 0 100%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector._get_upgrade_scale_command 0 0 0 100%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector._get_upgrade_command 0 0 0 100%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector._get_rollback_command 0 0 0 100%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector._get_uninstall_command 0 0 0 100%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector._get_inspect_command 0 0 0 100%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector._get_get_command 0 0 0 100%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector._uninstall_sw 0 0 0 100%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector._get_helm_chart_repos_ids 0 0 0 100%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector._check_file_exists 5 5 0 0%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector._remove_multiple_spaces 4 4 0 0%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector._output_to_lines 7 7 0 0%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector._output_to_table 12 8 0 33%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector._parse_services 10 10 0 0%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector._get_deep 11 3 0 73%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector._find_in_lines 9 9 0 0%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector._lower_keys_list 6 6 0 0%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector._local_async_exec 37 37 0 0%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector._local_async_exec_pipe 46 46 0 0%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector._get_service 10 3 0 70%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector._exec_get_command 3 0 0 100%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector._exec_inspect_command 11 1 0 91%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector._get_replica_count_url 34 13 0 62%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector._get_replica_count_instance 12 12 0 0%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector._labels_dict 20 20 0 0%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector._contains_labels 9 9 0 0%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector._store_status 11 5 0 55%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector._params_to_file_option 14 12 0 14%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector._params_to_file_option.get_random_number 5 5 0 0%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector._params_to_set_option 4 1 0 75%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector.generate_kdu_instance_name 18 18 0 0%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector.generate_kdu_instance_name.get_random_number 4 4 0 0%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector._split_version 7 0 0 100%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector._split_repo 7 0 0 100%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector._find_repo 9 0 0 100%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector._repo_to_oci_url 3 3 0 0%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector._prepare_helm_chart 8 1 0 88%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector.create_certificate 3 3 0 0%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector.delete_certificate 3 3 0 0%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector.create_namespace 3 3 0 0%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector.delete_namespace 3 3 0 0%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector.copy_secret_data 5 5 0 0%
n2vc/k8s_helm_base_conn.py K8sHelmBaseConnector.setup_default_rbac 4 4 0 0%
n2vc/k8s_helm_base_conn.py (no function) 120 0 0 100%
n2vc/k8s_juju_conn.py generate_rbac_id 1 0 0 100%
n2vc/k8s_juju_conn.py K8sJujuConnector.__init__ 8 0 0 100%
n2vc/k8s_juju_conn.py K8sJujuConnector.init_env 34 0 0 100%
n2vc/k8s_juju_conn.py K8sJujuConnector.repo_add 1 0 0 100%
n2vc/k8s_juju_conn.py K8sJujuConnector.repo_list 1 0 0 100%
n2vc/k8s_juju_conn.py K8sJujuConnector.repo_remove 1 0 0 100%
n2vc/k8s_juju_conn.py K8sJujuConnector.synchronize_repos 1 0 0 100%
n2vc/k8s_juju_conn.py K8sJujuConnector.reset 22 2 0 91%
n2vc/k8s_juju_conn.py K8sJujuConnector.install 34 2 0 94%
n2vc/k8s_juju_conn.py K8sJujuConnector.scale 9 0 0 100%
n2vc/k8s_juju_conn.py K8sJujuConnector.get_scale_count 9 4 0 56%
n2vc/k8s_juju_conn.py K8sJujuConnector.instances_list 1 0 0 100%
n2vc/k8s_juju_conn.py K8sJujuConnector.upgrade 2 0 0 100%
n2vc/k8s_juju_conn.py K8sJujuConnector.rollback 1 0 0 100%
n2vc/k8s_juju_conn.py K8sJujuConnector.uninstall 19 4 0 79%
n2vc/k8s_juju_conn.py K8sJujuConnector.upgrade_charm 1 1 0 0%
n2vc/k8s_juju_conn.py K8sJujuConnector.exec_primitive 20 1 0 95%
n2vc/k8s_juju_conn.py K8sJujuConnector.inspect_kdu 8 0 0 100%
n2vc/k8s_juju_conn.py K8sJujuConnector.help_kdu 9 0 0 100%
n2vc/k8s_juju_conn.py K8sJujuConnector.status_kdu 12 3 0 75%
n2vc/k8s_juju_conn.py K8sJujuConnector.add_relation 18 0 0 100%
n2vc/k8s_juju_conn.py K8sJujuConnector.update_vca_status 10 0 0 100%
n2vc/k8s_juju_conn.py K8sJujuConnector.get_services 4 0 0 100%
n2vc/k8s_juju_conn.py K8sJujuConnector.get_service 3 0 0 100%
n2vc/k8s_juju_conn.py K8sJujuConnector.get_credentials 3 0 0 100%
n2vc/k8s_juju_conn.py K8sJujuConnector._get_credential_name 1 0 0 100%
n2vc/k8s_juju_conn.py K8sJujuConnector.get_namespace 1 0 0 100%
n2vc/k8s_juju_conn.py K8sJujuConnector.generate_kdu_instance_name 6 6 0 0%
n2vc/k8s_juju_conn.py K8sJujuConnector._get_libjuju 10 6 0 40%
n2vc/k8s_juju_conn.py K8sJujuConnector._get_kubectl 4 4 0 0%
n2vc/k8s_juju_conn.py K8sJujuConnector._obtain_namespace 1 0 0 100%
n2vc/k8s_juju_conn.py K8sJujuConnector._obtain_namespace_from_db 5 5 0 0%
n2vc/k8s_juju_conn.py (no function) 62 0 0 100%
n2vc/kubectl.py Kubectl.__init__ 4 0 0 100%
n2vc/kubectl.py Kubectl.configuration 1 0 0 100%
n2vc/kubectl.py Kubectl.clients 1 0 0 100%
n2vc/kubectl.py Kubectl.get_services 11 0 0 100%
n2vc/kubectl.py Kubectl.get_default_storage_class 11 0 0 100%
n2vc/kubectl.py Kubectl.create_cluster_role 6 6 0 0%
n2vc/kubectl.py Kubectl.create_role 6 3 0 50%
n2vc/kubectl.py Kubectl.delete_cluster_role 1 1 0 0%
n2vc/kubectl.py Kubectl._get_kubectl_version 2 0 0 100%
n2vc/kubectl.py Kubectl._need_to_create_new_secret 3 0 0 100%
n2vc/kubectl.py Kubectl._get_secret_name 2 0 0 100%
n2vc/kubectl.py Kubectl._create_service_account_secret 9 0 0 100%
n2vc/kubectl.py Kubectl._get_secret_reference_list 1 0 0 100%
n2vc/kubectl.py Kubectl.create_service_account 13 0 0 100%
n2vc/kubectl.py Kubectl.delete_secret 1 1 0 0%
n2vc/kubectl.py Kubectl.delete_service_account 1 1 0 0%
n2vc/kubectl.py Kubectl.create_cluster_role_binding 5 5 0 0%
n2vc/kubectl.py Kubectl.create_role_binding 5 2 0 60%
n2vc/kubectl.py Kubectl.delete_cluster_role_binding 1 1 0 0%
n2vc/kubectl.py Kubectl.get_secret_data 14 14 0 0%
n2vc/kubectl.py Kubectl.get_secret_content 3 0 0 100%
n2vc/kubectl.py Kubectl.create_secret 9 9 0 0%
n2vc/kubectl.py Kubectl.create_certificate 9 1 0 89%
n2vc/kubectl.py Kubectl.delete_certificate 8 1 0 88%
n2vc/kubectl.py Kubectl.create_namespace 11 1 0 91%
n2vc/kubectl.py Kubectl.delete_namespace 5 1 0 80%
n2vc/kubectl.py Kubectl.get_secrets 7 7 0 0%
n2vc/kubectl.py Kubectl.create_generic_object 10 10 0 0%
n2vc/kubectl.py Kubectl.delete_generic_object 10 10 0 0%
n2vc/kubectl.py Kubectl.get_generic_object 15 15 0 0%
n2vc/kubectl.py Kubectl.list_generic_object 14 14 0 0%
n2vc/kubectl.py Kubectl.create_secret_string 4 4 0 0%
n2vc/kubectl.py Kubectl.create_pvc 8 8 0 0%
n2vc/kubectl.py Kubectl.delete_pvc 1 1 0 0%
n2vc/kubectl.py Kubectl.copy_file_to_pod 8 8 0 0%
n2vc/kubectl.py Kubectl.create_pvc_with_content 11 11 0 0%
n2vc/kubectl.py Kubectl.create_copy_pod 2 2 0 0%
n2vc/kubectl.py Kubectl.delete_pod 1 1 0 0%
n2vc/kubectl.py (no function) 75 0 0 100%
n2vc/libjuju.py retry_callback 2 0 0 100%
n2vc/libjuju.py Libjuju.__init__ 6 0 0 100%
n2vc/libjuju.py Libjuju._create_health_check_task 1 0 0 100%
n2vc/libjuju.py Libjuju.get_controller 16 0 0 100%
n2vc/libjuju.py Libjuju.disconnect 2 0 0 100%
n2vc/libjuju.py Libjuju.disconnect_model 1 0 0 100%
n2vc/libjuju.py Libjuju.disconnect_controller 2 0 0 100%
n2vc/libjuju.py Libjuju.add_model 17 5 0 71%
n2vc/libjuju.py Libjuju.get_executed_actions 23 0 0 100%
n2vc/libjuju.py Libjuju.get_application_configs 13 0 0 100%
n2vc/libjuju.py Libjuju.get_model 1 0 0 100%
n2vc/libjuju.py Libjuju.model_exists 8 0 0 100%
n2vc/libjuju.py Libjuju.models_exist 7 0 0 100%
n2vc/libjuju.py Libjuju.get_model_status 6 0 0 100%
n2vc/libjuju.py Libjuju.create_machine 24 0 0 100%
n2vc/libjuju.py Libjuju.provision_machine 39 39 0 0%
n2vc/libjuju.py Libjuju.deploy 13 0 0 100%
n2vc/libjuju.py Libjuju._validate_instantiation_params 6 0 0 100%
n2vc/libjuju.py Libjuju._get_apps_in_original_bundle 6 0 0 100%
n2vc/libjuju.py Libjuju._get_apps_in_instantiation_params 6 0 0 100%
n2vc/libjuju.py Libjuju._get_overlays 5 0 0 100%
n2vc/libjuju.py Libjuju._write_overlay_file 2 0 0 100%
n2vc/libjuju.py Libjuju._remove_overlay_file 7 0 0 100%
n2vc/libjuju.py Libjuju.add_unit 15 0 0 100%
n2vc/libjuju.py Libjuju.destroy_unit 26 5 0 81%
n2vc/libjuju.py Libjuju.deploy_charm 24 3 0 88%
n2vc/libjuju.py Libjuju.upgrade_charm 23 23 0 0%
n2vc/libjuju.py Libjuju.resolve_application 17 17 0 0%
n2vc/libjuju.py Libjuju.resolve 20 20 0 0%
n2vc/libjuju.py Libjuju.scale_application 24 1 0 96%
n2vc/libjuju.py Libjuju._get_application_count 3 0 0 100%
n2vc/libjuju.py Libjuju._get_application 2 0 0 100%
n2vc/libjuju.py Libjuju._get_unit 6 0 0 100%
n2vc/libjuju.py Libjuju._get_machine_info 6 0 0 100%
n2vc/libjuju.py Libjuju.execute_action 27 4 0 85%
n2vc/libjuju.py Libjuju.get_actions 8 0 0 100%
n2vc/libjuju.py Libjuju.get_metrics 12 0 0 100%
n2vc/libjuju.py Libjuju.add_relation 15 0 0 100%
n2vc/libjuju.py Libjuju._relation_is_not_found 2 0 0 100%
n2vc/libjuju.py Libjuju._relation_already_exist 2 0 0 100%
n2vc/libjuju.py Libjuju.offer 17 2 0 88%
n2vc/libjuju.py Libjuju.consume 16 0 0 100%
n2vc/libjuju.py Libjuju.destroy_model 21 21 0 0%
n2vc/libjuju.py Libjuju._destroy_model 14 14 0 0%
n2vc/libjuju.py Libjuju._destroy_model._destroy_model_gracefully 9 9 0 0%
n2vc/libjuju.py Libjuju._destroy_model._destroy_model_forcefully 5 5 0 0%
n2vc/libjuju.py Libjuju.destroy_application 22 3 0 86%
n2vc/libjuju.py Libjuju._destroy_pending_machines 8 8 0 0%
n2vc/libjuju.py Libjuju.configure_application 11 0 0 100%
n2vc/libjuju.py Libjuju.health_check 8 2 0 75%
n2vc/libjuju.py Libjuju.list_models 7 0 0 100%
n2vc/libjuju.py Libjuju._list_offers 12 0 0 100%
n2vc/libjuju.py Libjuju.add_k8s 11 0 0 100%
n2vc/libjuju.py Libjuju.get_k8s_cloud_credential 31 6 0 81%
n2vc/libjuju.py Libjuju.add_cloud 7 0 0 100%
n2vc/libjuju.py Libjuju.remove_cloud 8 3 0 62%
n2vc/libjuju.py Libjuju._get_leader_unit 8 0 0 100%
n2vc/libjuju.py Libjuju.get_cloud_credentials 7 7 0 0%
n2vc/libjuju.py Libjuju.check_application_exists 9 0 0 100%
n2vc/libjuju.py (no function) 90 0 0 100%
n2vc/loggable.py Loggable.__init__ 6 0 0 100%
n2vc/loggable.py Loggable.debug 1 1 0 0%
n2vc/loggable.py Loggable.info 1 1 0 0%
n2vc/loggable.py Loggable.warning 1 1 0 0%
n2vc/loggable.py Loggable.error 1 1 0 0%
n2vc/loggable.py Loggable.critical 1 1 0 0%
n2vc/loggable.py Loggable._log_msg 14 14 0 0%
n2vc/loggable.py Loggable._format_log 35 35 0 0%
n2vc/loggable.py Loggable._format_log.print_cor_name 7 7 0 0%
n2vc/loggable.py (no function) 15 0 0 100%
n2vc/n2vc_conn.py N2VCConnector.__init__ 10 2 0 80%
n2vc/n2vc_conn.py N2VCConnector.get_status 0 0 0 100%
n2vc/n2vc_conn.py N2VCConnector.get_public_key 19 19 0 0%
n2vc/n2vc_conn.py N2VCConnector.create_execution_environment 0 0 0 100%
n2vc/n2vc_conn.py N2VCConnector.register_execution_environment 0 0 0 100%
n2vc/n2vc_conn.py N2VCConnector.install_configuration_sw 0 0 0 100%
n2vc/n2vc_conn.py N2VCConnector.install_k8s_proxy_charm 0 0 0 100%
n2vc/n2vc_conn.py N2VCConnector.get_ee_ssh_public__key 0 0 0 100%
n2vc/n2vc_conn.py N2VCConnector.add_relation 0 0 0 100%
n2vc/n2vc_conn.py N2VCConnector.remove_relation 0 0 0 100%
n2vc/n2vc_conn.py N2VCConnector.deregister_execution_environments 0 0 0 100%
n2vc/n2vc_conn.py N2VCConnector.delete_namespace 0 0 0 100%
n2vc/n2vc_conn.py N2VCConnector.delete_execution_environment 0 0 0 100%
n2vc/n2vc_conn.py N2VCConnector.upgrade_charm 0 0 0 100%
n2vc/n2vc_conn.py N2VCConnector.exec_primitive 0 0 0 100%
n2vc/n2vc_conn.py N2VCConnector.disconnect 0 0 0 100%
n2vc/n2vc_conn.py N2VCConnector._get_namespace_components 21 2 0 90%
n2vc/n2vc_conn.py N2VCConnector.write_app_status_to_db 19 19 0 0%
n2vc/n2vc_conn.py N2VCConnector.osm_status 4 4 0 0%
n2vc/n2vc_conn.py obj_to_yaml 9 9 0 0%
n2vc/n2vc_conn.py obj_to_dict 2 2 0 0%
n2vc/n2vc_conn.py (no function) 50 0 0 100%
n2vc/n2vc_juju_conn.py N2VCJujuConnector.__init__ 10 0 0 100%
n2vc/n2vc_juju_conn.py N2VCJujuConnector.get_status 14 14 0 0%
n2vc/n2vc_juju_conn.py N2VCJujuConnector.update_vca_status 9 0 0 100%
n2vc/n2vc_juju_conn.py N2VCJujuConnector.create_execution_environment 24 24 0 0%
n2vc/n2vc_juju_conn.py N2VCJujuConnector.register_execution_environment 27 27 0 0%
n2vc/n2vc_juju_conn.py N2VCJujuConnector.install_configuration_sw 30 30 0 0%
n2vc/n2vc_juju_conn.py N2VCJujuConnector.install_k8s_proxy_charm 27 2 0 93%
n2vc/n2vc_juju_conn.py N2VCJujuConnector.get_ee_ssh_public__key 24 24 0 0%
n2vc/n2vc_juju_conn.py N2VCJujuConnector.get_metrics 2 0 0 100%
n2vc/n2vc_juju_conn.py N2VCJujuConnector.add_relation 18 0 0 100%
n2vc/n2vc_juju_conn.py N2VCJujuConnector.remove_relation 2 2 0 0%
n2vc/n2vc_juju_conn.py N2VCJujuConnector.deregister_execution_environments 2 2 0 0%
n2vc/n2vc_juju_conn.py N2VCJujuConnector.delete_namespace 31 31 0 0%
n2vc/n2vc_juju_conn.py N2VCJujuConnector.delete_execution_environment 21 6 0 71%
n2vc/n2vc_juju_conn.py N2VCJujuConnector.exec_primitive 51 51 0 0%
n2vc/n2vc_juju_conn.py N2VCJujuConnector.upgrade_charm 14 0 0 100%
n2vc/n2vc_juju_conn.py N2VCJujuConnector.disconnect 6 6 0 0%
n2vc/n2vc_juju_conn.py N2VCJujuConnector._get_libjuju 10 6 0 40%
n2vc/n2vc_juju_conn.py N2VCJujuConnector._write_ee_id_db 12 7 0 42%
n2vc/n2vc_juju_conn.py N2VCJujuConnector._build_ee_id 1 0 0 100%
n2vc/n2vc_juju_conn.py N2VCJujuConnector._get_ee_id_components 1 1 0 0%
n2vc/n2vc_juju_conn.py N2VCJujuConnector._find_charm_level 8 0 0 100%
n2vc/n2vc_juju_conn.py N2VCJujuConnector._generate_backward_compatible_application_name 12 0 0 100%
n2vc/n2vc_juju_conn.py N2VCJujuConnector._get_vca_record 1 0 0 100%
n2vc/n2vc_juju_conn.py N2VCJujuConnector._generate_application_name 24 1 0 96%
n2vc/n2vc_juju_conn.py N2VCJujuConnector._get_vnf_count_and_record 7 0 0 100%
n2vc/n2vc_juju_conn.py N2VCJujuConnector._get_vca_records 6 0 0 100%
n2vc/n2vc_juju_conn.py N2VCJujuConnector._get_application_name 11 1 0 91%
n2vc/n2vc_juju_conn.py N2VCJujuConnector._format_model_name 1 1 0 0%
n2vc/n2vc_juju_conn.py N2VCJujuConnector._format_app_name 18 1 0 94%
n2vc/n2vc_juju_conn.py N2VCJujuConnector._format_app_name.all_numbers 4 0 0 100%
n2vc/n2vc_juju_conn.py N2VCJujuConnector.validate_vca 4 4 0 0%
n2vc/n2vc_juju_conn.py (no function) 58 0 0 100%
n2vc/provisioner.py normalize_arch 3 3 0 0%
n2vc/provisioner.py AsyncSSHProvisioner.__init__ 4 4 0 0%
n2vc/provisioner.py AsyncSSHProvisioner._scp 7 7 0 0%
n2vc/provisioner.py AsyncSSHProvisioner._ssh 9 9 0 0%
n2vc/provisioner.py AsyncSSHProvisioner._init_ubuntu_user 23 23 0 0%
n2vc/provisioner.py AsyncSSHProvisioner._detect_hardware_and_os 19 19 0 0%
n2vc/provisioner.py AsyncSSHProvisioner.provision_machine 9 9 0 0%
n2vc/provisioner.py AsyncSSHProvisioner.install_agent 31 31 0 0%
n2vc/provisioner.py AsyncSSHProvisioner._run_configure_script 6 6 0 0%
n2vc/provisioner.py (no function) 27 0 0 100%
n2vc/store.py Store.get_vca_connection_data 0 0 0 100%
n2vc/store.py Store.update_vca_endpoints 0 0 0 100%
n2vc/store.py Store.get_vca_endpoints 0 0 0 100%
n2vc/store.py Store.get_vca_id 0 0 0 100%
n2vc/store.py DbMongoStore.__init__ 1 0 0 100%
n2vc/store.py DbMongoStore.get_vca_connection_data 3 0 0 100%
n2vc/store.py DbMongoStore.update_vca_endpoints 13 0 0 100%
n2vc/store.py DbMongoStore.get_vca_endpoints 7 0 0 100%
n2vc/store.py DbMongoStore.get_vca_id 1 0 0 100%
n2vc/store.py DbMongoStore._update 1 0 0 100%
n2vc/store.py DbMongoStore._get_juju_info 1 0 0 100%
n2vc/store.py MotorStore.__init__ 4 0 0 100%
n2vc/store.py MotorStore._database 1 0 0 100%
n2vc/store.py MotorStore._vca_collection 1 0 0 100%
n2vc/store.py MotorStore._admin_collection 1 0 0 100%
n2vc/store.py MotorStore._vim_accounts_collection 1 0 0 100%
n2vc/store.py MotorStore.get_vca_connection_data 5 0 0 100%
n2vc/store.py MotorStore.update_vca_endpoints 13 0 0 100%
n2vc/store.py MotorStore.get_vca_endpoints 7 0 0 100%
n2vc/store.py MotorStore.get_vca_id 6 0 0 100%
n2vc/store.py MotorStore._get_juju_info 1 0 0 100%
n2vc/store.py (no function) 40 0 0 100%
n2vc/tests/__init__.py (no function) 0 0 0 100%
n2vc/tests/unit/__init__.py (no function) 0 0 0 100%
n2vc/tests/unit/test_config.py generate_os_environ_dict 1 0 0 100%
n2vc/tests/unit/test_config.py TestEnvironConfig.setUp 1 0 0 100%
n2vc/tests/unit/test_config.py TestEnvironConfig.test_environ_config_lcm 5 0 0 100%
n2vc/tests/unit/test_config.py TestEnvironConfig.test_environ_config_mon 5 0 0 100%
n2vc/tests/unit/test_config.py TestModelConfig.setUp 3 0 0 100%
n2vc/tests/unit/test_config.py TestModelConfig.test_model_config 2 0 0 100%
n2vc/tests/unit/test_config.py (no function) 13 0 0 100%
n2vc/tests/unit/test_connection.py TestConnection.setUp 2 0 0 100%
n2vc/tests/unit/test_connection.py TestConnection.test_load_from_store 2 0 0 100%
n2vc/tests/unit/test_connection.py TestConnection.test_cloud_properties 10 0 0 100%
n2vc/tests/unit/test_connection.py TestConnection.test_load_from_env 5 0 0 100%
n2vc/tests/unit/test_connection.py (no function) 12 0 0 100%
n2vc/tests/unit/test_definitions.py RelationEndpointTest.test_success 8 0 0 100%
n2vc/tests/unit/test_definitions.py OfferTest.test_success 6 0 0 100%
n2vc/tests/unit/test_definitions.py (no function) 9 0 0 100%
n2vc/tests/unit/test_juju_watcher.py JujuWatcherTest.setUp 3 0 0 100%
n2vc/tests/unit/test_juju_watcher.py JujuWatcherTest.test_get_status 6 0 0 100%
n2vc/tests/unit/test_juju_watcher.py JujuWatcherTest.test_model_watcher 8 0 0 100%
n2vc/tests/unit/test_juju_watcher.py JujuWatcherTest.test_wait_for 4 0 0 100%
n2vc/tests/unit/test_juju_watcher.py JujuWatcherTest.test_wait_for_exception 6 0 0 100%
n2vc/tests/unit/test_juju_watcher.py JujuWatcherTest.test_wait_for_invalid_entity_exception 2 0 0 100%
n2vc/tests/unit/test_juju_watcher.py EntityReadyTest.setUp 2 0 0 100%
n2vc/tests/unit/test_juju_watcher.py EntityReadyTest.test_invalid_entity 2 0 0 100%
n2vc/tests/unit/test_juju_watcher.py EntityReadyTest.test_machine_entity 3 0 0 100%
n2vc/tests/unit/test_juju_watcher.py EntityReadyTest.test_action_entity 3 0 0 100%
n2vc/tests/unit/test_juju_watcher.py EntityReadyTest.test_application_entity 3 0 0 100%
n2vc/tests/unit/test_juju_watcher.py EntityStateTest.setUp 6 0 0 100%
n2vc/tests/unit/test_juju_watcher.py EntityStateTest._fetch_next_delta 27 3 0 89%
n2vc/tests/unit/test_juju_watcher.py EntityStateTest._ensure_state 8 1 0 88%
n2vc/tests/unit/test_juju_watcher.py EntityStateTest._slow_changes 2 0 0 100%
n2vc/tests/unit/test_juju_watcher.py EntityStateTest.test_timeout 9 0 0 100%
n2vc/tests/unit/test_juju_watcher.py EntityStateTest.test_machine_unit_upgrade 11 0 0 100%
n2vc/tests/unit/test_juju_watcher.py EntityStateTest.test_operator_upgrade 5 0 0 100%
n2vc/tests/unit/test_juju_watcher.py EntityStateTest.test_podspec_stateful_upgrade 5 0 0 100%
n2vc/tests/unit/test_juju_watcher.py EntityStateTest.test_podspec_stateless_upgrade 5 0 0 100%
n2vc/tests/unit/test_juju_watcher.py EntityStateTest.test_sidecar_upgrade 5 0 0 100%
n2vc/tests/unit/test_juju_watcher.py StatusTest.setUp 2 0 0 100%
n2vc/tests/unit/test_juju_watcher.py StatusTest.test_invalid_entity 9 0 0 100%
n2vc/tests/unit/test_juju_watcher.py StatusTest.test_invalid_entity.FakeUnit.workload_status 1 0 0 100%
n2vc/tests/unit/test_juju_watcher.py WaitForModelTest.setUp 2 0 0 100%
n2vc/tests/unit/test_juju_watcher.py WaitForModelTest.test_wait_for_model 2 0 0 100%
n2vc/tests/unit/test_juju_watcher.py WaitForModelTest.test_wait_for_model_exception 6 0 0 100%
n2vc/tests/unit/test_juju_watcher.py (no function) 62 0 0 100%
n2vc/tests/unit/test_k8s_helm3_conn.py TestK8sHelm3Conn.setUp 12 0 0 100%
n2vc/tests/unit/test_k8s_helm3_conn.py TestK8sHelm3Conn.test_init_env 13 0 0 100%
n2vc/tests/unit/test_k8s_helm3_conn.py TestK8sHelm3Conn.test_repo_add 16 0 0 100%
n2vc/tests/unit/test_k8s_helm3_conn.py TestK8sHelm3Conn.test_repo_list 6 0 0 100%
n2vc/tests/unit/test_k8s_helm3_conn.py TestK8sHelm3Conn.test_repo_remove 7 0 0 100%
n2vc/tests/unit/test_k8s_helm3_conn.py TestK8sHelm3Conn.test_install 25 0 0 100%
n2vc/tests/unit/test_k8s_helm3_conn.py TestK8sHelm3Conn.test_namespace_exists 9 0 0 100%
n2vc/tests/unit/test_k8s_helm3_conn.py TestK8sHelm3Conn.test_upgrade 20 0 0 100%
n2vc/tests/unit/test_k8s_helm3_conn.py TestK8sHelm3Conn.test_upgrade_namespace 14 0 0 100%
n2vc/tests/unit/test_k8s_helm3_conn.py TestK8sHelm3Conn.test_scale 20 0 0 100%
n2vc/tests/unit/test_k8s_helm3_conn.py TestK8sHelm3Conn.test_rollback 12 0 0 100%
n2vc/tests/unit/test_k8s_helm3_conn.py TestK8sHelm3Conn.test_uninstall 10 0 0 100%
n2vc/tests/unit/test_k8s_helm3_conn.py TestK8sHelm3Conn.test_get_services 13 0 0 100%
n2vc/tests/unit/test_k8s_helm3_conn.py TestK8sHelm3Conn.test_get_service 7 0 0 100%
n2vc/tests/unit/test_k8s_helm3_conn.py TestK8sHelm3Conn.test_inspect_kdu 6 0 0 100%
n2vc/tests/unit/test_k8s_helm3_conn.py TestK8sHelm3Conn.test_help_kdu 6 0 0 100%
n2vc/tests/unit/test_k8s_helm3_conn.py TestK8sHelm3Conn.test_values_kdu 6 0 0 100%
n2vc/tests/unit/test_k8s_helm3_conn.py TestK8sHelm3Conn.test_get_values_kdu 5 0 0 100%
n2vc/tests/unit/test_k8s_helm3_conn.py TestK8sHelm3Conn.test_instances_list 6 0 0 100%
n2vc/tests/unit/test_k8s_helm3_conn.py TestK8sHelm3Conn.test_status_kdu 5 0 0 100%
n2vc/tests/unit/test_k8s_helm3_conn.py TestK8sHelm3Conn.test_store_status 8 0 0 100%
n2vc/tests/unit/test_k8s_helm3_conn.py TestK8sHelm3Conn.test_reset_uninstall_false 5 0 0 100%
n2vc/tests/unit/test_k8s_helm3_conn.py TestK8sHelm3Conn.test_reset_uninstall 13 0 0 100%
n2vc/tests/unit/test_k8s_helm3_conn.py TestK8sHelm3Conn.test_sync_repos_add 12 0 0 100%
n2vc/tests/unit/test_k8s_helm3_conn.py TestK8sHelm3Conn.test_sync_repos_add.get_one_result 4 0 0 100%
n2vc/tests/unit/test_k8s_helm3_conn.py TestK8sHelm3Conn.test_sync_repos_delete 12 0 0 100%
n2vc/tests/unit/test_k8s_helm3_conn.py TestK8sHelm3Conn.test_sync_repos_delete.get_one_result 2 0 0 100%
n2vc/tests/unit/test_k8s_helm3_conn.py (no function) 61 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py K8sJujuConnTestCase.setUp 22 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py InitEnvTest.setUp 2 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py InitEnvTest.test_with_cluster_uuid 6 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py InitEnvTest.test_with_no_cluster_uuid 5 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py InitEnvTest.test_init_env_exception 15 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py NotImplementedTest.setUp 1 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py NotImplementedTest.test_repo_add 2 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py NotImplementedTest.test_repo_list 2 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py NotImplementedTest.test_repo_remove 2 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py NotImplementedTest.test_synchronize_repos 1 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py NotImplementedTest.test_upgrade 2 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py NotImplementedTest.test_rollback 2 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py NotImplementedTest.test_get_namespace 1 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py NotImplementedTest.test_instances_list 2 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py ResetTest.setUp 8 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py ResetTest.test_success 3 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py ResetTest.test_exception 6 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py InstallTest.setUp 8 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py InstallTest.test_success_local 4 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py InstallTest.test_success_cs 3 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py InstallTest.test_success_http 4 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py InstallTest.test_success_not_kdu_name 4 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py InstallTest.test_missing_db_dict 6 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py InstallTest.test_getcwd_exception 4 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py InstallTest.test_missing_bundle 4 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py InstallTest.test_missing_exception 5 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py UninstallTest.setUp 2 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py UninstallTest.test_success 3 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py UninstallTest.test_exception 6 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py ExecPrimitivesTest.setUp 5 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py ExecPrimitivesTest.test_success 8 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py ExecPrimitivesTest.test_exception 10 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py ExecPrimitivesTest.test_missing_application_name_in_params 7 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py ExecPrimitivesTest.test_missing_params 6 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py ExecPrimitivesTest.test_missing_action 10 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py ExecPrimitivesTest.test_missing_not_completed 10 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py InspectKduTest.setUp 1 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py InspectKduTest.test_existing_file 7 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py InspectKduTest.test_not_existing_file 7 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py HelpKduTest.setUp 1 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py HelpKduTest.test_existing_file 8 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py HelpKduTest.test_not_existing_file 6 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py StatusKduTest.setUp 2 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py StatusKduTest.test_success 6 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py StatusKduTest.test_exception 6 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py GetServicesTest.setUp 1 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py GetServicesTest.test_success 4 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py GetServiceTest.setUp 1 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py GetServiceTest.test_success 4 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py GetCredentialsTest.setUp 1 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py GetCredentialsTest.test_success 5 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py UpdateVcaStatusTest.setUp 5 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py UpdateVcaStatusTest.test_success 3 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py UpdateVcaStatusTest.test_exception 6 1 0 83%
n2vc/tests/unit/test_k8s_juju_conn.py ScaleTest.setUp 5 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py ScaleTest.test_success 2 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py ScaleTest.test_exception 4 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py GetScaleCount.setUp 2 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py GetScaleCount.test_success 6 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py GetScaleCount.test_exception 6 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py AddRelationTest.setUp 5 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py AddRelationTest.test_standard_relation_same_model_and_controller 6 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py AddRelationTest.test_cmr_relation_same_controller 9 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py AddRelationTest.test_cmr_relation_different_controller 10 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py AddRelationTest.test_relation_exception 5 0 0 100%
n2vc/tests/unit/test_k8s_juju_conn.py (no function) 109 0 0 100%
n2vc/tests/unit/test_kubectl.py FakeK8sResourceMetadata.__init__ 4 0 0 100%
n2vc/tests/unit/test_kubectl.py FakeK8sResourceMetadata.name 1 0 0 100%
n2vc/tests/unit/test_kubectl.py FakeK8sResourceMetadata.namespace 1 1 0 0%
n2vc/tests/unit/test_kubectl.py FakeK8sResourceMetadata.labels 1 1 0 0%
n2vc/tests/unit/test_kubectl.py FakeK8sResourceMetadata.annotations 1 0 0 100%
n2vc/tests/unit/test_kubectl.py FakeK8sStorageClass.__init__ 1 0 0 100%
n2vc/tests/unit/test_kubectl.py FakeK8sStorageClass.metadata 1 0 0 100%
n2vc/tests/unit/test_kubectl.py FakeK8sStorageClassesList.__init__ 1 0 0 100%
n2vc/tests/unit/test_kubectl.py FakeK8sStorageClassesList.items 1 0 0 100%
n2vc/tests/unit/test_kubectl.py FakeK8sServiceAccountsList.__init__ 1 0 0 100%
n2vc/tests/unit/test_kubectl.py FakeK8sServiceAccountsList.items 1 0 0 100%
n2vc/tests/unit/test_kubectl.py FakeK8sSecretList.__init__ 1 0 0 100%
n2vc/tests/unit/test_kubectl.py FakeK8sSecretList.items 1 0 0 100%
n2vc/tests/unit/test_kubectl.py FakeK8sRoleList.__init__ 1 0 0 100%
n2vc/tests/unit/test_kubectl.py FakeK8sRoleList.items 1 0 0 100%
n2vc/tests/unit/test_kubectl.py FakeK8sRoleBindingList.__init__ 1 0 0 100%
n2vc/tests/unit/test_kubectl.py FakeK8sRoleBindingList.items 1 0 0 100%
n2vc/tests/unit/test_kubectl.py FakeK8sVersionApiCode.__init__ 2 0 0 100%
n2vc/tests/unit/test_kubectl.py FakeK8sVersionApiCode.major 1 0 0 100%
n2vc/tests/unit/test_kubectl.py FakeK8sVersionApiCode.minor 1 0 0 100%
n2vc/tests/unit/test_kubectl.py KubectlTestCase.setUp 1 0 0 100%
n2vc/tests/unit/test_kubectl.py FakeCoreV1Api.list_service_for_all_namespaces 1 1 0 0%
n2vc/tests/unit/test_kubectl.py GetServices.setUp 3 0 0 100%
n2vc/tests/unit/test_kubectl.py GetServices.test_get_service 4 0 0 100%
n2vc/tests/unit/test_kubectl.py GetServices.test_get_service_exception 3 0 0 100%
n2vc/tests/unit/test_kubectl.py GetConfiguration.setUp 1 0 0 100%
n2vc/tests/unit/test_kubectl.py GetConfiguration.test_get_configuration 7 0 0 100%
n2vc/tests/unit/test_kubectl.py GetDefaultStorageClass.setUp 9 0 0 100%
n2vc/tests/unit/test_kubectl.py GetDefaultStorageClass.test_get_default_storage_class_exists_default 6 0 0 100%
n2vc/tests/unit/test_kubectl.py GetDefaultStorageClass.test_get_default_storage_class_exists_default_old 6 0 0 100%
n2vc/tests/unit/test_kubectl.py GetDefaultStorageClass.test_get_default_storage_class_none 5 0 0 100%
n2vc/tests/unit/test_kubectl.py GetDefaultStorageClass.test_get_default_storage_class_exists_not_default 6 0 0 100%
n2vc/tests/unit/test_kubectl.py GetDefaultStorageClass.test_get_default_storage_class_choose 6 0 0 100%
n2vc/tests/unit/test_kubectl.py CreateServiceAccountClass.setUp 6 0 0 100%
n2vc/tests/unit/test_kubectl.py CreateServiceAccountClass.assert_create_secret 5 0 0 100%
n2vc/tests/unit/test_kubectl.py CreateServiceAccountClass.assert_create_service_account_v_1_24 4 0 0 100%
n2vc/tests/unit/test_kubectl.py CreateServiceAccountClass.assert_create_service_account_v_1_23 3 0 0 100%
n2vc/tests/unit/test_kubectl.py CreateServiceAccountClass.test_secret_is_created_when_k8s_1_24 8 0 0 100%
n2vc/tests/unit/test_kubectl.py CreateServiceAccountClass.test_secret_is_not_created_when_k8s_1_23 6 0 0 100%
n2vc/tests/unit/test_kubectl.py CreateServiceAccountClass.test_raise_exception_if_service_account_already_exists 6 0 0 100%
n2vc/tests/unit/test_kubectl.py CreateServiceAccountClass.test_raise_exception_if_secret_already_exists 9 0 0 100%
n2vc/tests/unit/test_kubectl.py CreateCertificateClass.setUp 8 0 0 100%
n2vc/tests/unit/test_kubectl.py CreateCertificateClass.test_certificate_is_created 5 0 0 100%
n2vc/tests/unit/test_kubectl.py CreateCertificateClass.test_no_exception_if_alreadyexists 9 2 0 78%
n2vc/tests/unit/test_kubectl.py CreateCertificateClass.test_other_exceptions 3 0 0 100%
n2vc/tests/unit/test_kubectl.py DeleteCertificateClass.setUp 4 0 0 100%
n2vc/tests/unit/test_kubectl.py DeleteCertificateClass.test_no_exception_if_notfound 9 2 0 78%
n2vc/tests/unit/test_kubectl.py DeleteCertificateClass.test_other_exceptions 3 0 0 100%
n2vc/tests/unit/test_kubectl.py CreateRoleClass.setUp 8 0 0 100%
n2vc/tests/unit/test_kubectl.py CreateRoleClass.assert_create_role 4 4 0 0%
n2vc/tests/unit/test_kubectl.py CreateRoleClass.test_raise_exception_if_role_already_exists 5 0 0 100%
n2vc/tests/unit/test_kubectl.py CreateRoleBindingClass.setUp 7 0 0 100%
n2vc/tests/unit/test_kubectl.py CreateRoleBindingClass.assert_create_role_binding 3 3 0 0%
n2vc/tests/unit/test_kubectl.py CreateRoleBindingClass.test_raise_exception_if_role_binding_already_exists 5 0 0 100%
n2vc/tests/unit/test_kubectl.py CreateSecretClass.setUp 6 6 0 0%
n2vc/tests/unit/test_kubectl.py CreateSecretClass.assert_create_secret 4 4 0 0%
n2vc/tests/unit/test_kubectl.py CreateNamespaceClass.setUp 4 0 0 100%
n2vc/tests/unit/test_kubectl.py CreateNamespaceClass.test_namespace_is_created 4 0 0 100%
n2vc/tests/unit/test_kubectl.py CreateNamespaceClass.test_namespace_is_created_default_labels 4 0 0 100%
n2vc/tests/unit/test_kubectl.py CreateNamespaceClass.test_no_exception_if_alreadyexists 9 2 0 78%
n2vc/tests/unit/test_kubectl.py CreateNamespaceClass.test_other_exceptions 3 0 0 100%
n2vc/tests/unit/test_kubectl.py DeleteNamespaceClass.setUp 3 0 0 100%
n2vc/tests/unit/test_kubectl.py DeleteNamespaceClass.test_no_exception_if_notfound 9 2 0 78%
n2vc/tests/unit/test_kubectl.py DeleteNamespaceClass.test_other_exceptions 3 0 0 100%
n2vc/tests/unit/test_kubectl.py GetSecretContentClass.setUp 6 0 0 100%
n2vc/tests/unit/test_kubectl.py GetSecretContentClass.test_return_type_is_dict 5 0 0 100%
n2vc/tests/unit/test_kubectl.py (no function) 159 0 0 100%
n2vc/tests/unit/test_libjuju.py LibjujuTestCase.setUp 8 0 0 100%
n2vc/tests/unit/test_libjuju.py GetControllerTest.setUp 1 0 0 100%
n2vc/tests/unit/test_libjuju.py GetControllerTest.test_diff_endpoint 3 0 0 100%
n2vc/tests/unit/test_libjuju.py GetControllerTest.test_exception 7 0 0 100%
n2vc/tests/unit/test_libjuju.py GetControllerTest.test_same_endpoint_get_controller 3 0 0 100%
n2vc/tests/unit/test_libjuju.py DisconnectTest.setUp 1 0 0 100%
n2vc/tests/unit/test_libjuju.py DisconnectTest.test_disconnect_model 2 0 0 100%
n2vc/tests/unit/test_libjuju.py DisconnectTest.test_disconnect_controller 2 0 0 100%
n2vc/tests/unit/test_libjuju.py AddModelTest.setUp 1 0 0 100%
n2vc/tests/unit/test_libjuju.py AddModelTest.test_existing_model 3 0 0 100%
n2vc/tests/unit/test_libjuju.py AddModelTest.test_non_existing_model 6 0 0 100%
n2vc/tests/unit/test_libjuju.py GetExecutedActionsTest.setUp 1 0 0 100%
n2vc/tests/unit/test_libjuju.py GetExecutedActionsTest.test_exception 7 0 0 100%
n2vc/tests/unit/test_libjuju.py GetExecutedActionsTest.test_success 13 0 0 100%
n2vc/tests/unit/test_libjuju.py GetApplicationConfigsTest.setUp 1 0 0 100%
n2vc/tests/unit/test_libjuju.py GetApplicationConfigsTest.test_exception 7 0 0 100%
n2vc/tests/unit/test_libjuju.py GetApplicationConfigsTest.test_success 7 0 0 100%
n2vc/tests/unit/test_libjuju.py GetModelTest.setUp 1 0 0 100%
n2vc/tests/unit/test_libjuju.py GetModelTest.test_get_model 3 0 0 100%
n2vc/tests/unit/test_libjuju.py ModelExistsTest.setUp 1 0 0 100%
n2vc/tests/unit/test_libjuju.py ModelExistsTest.test_existing_model 2 0 0 100%
n2vc/tests/unit/test_libjuju.py ModelExistsTest.test_no_controller 4 0 0 100%
n2vc/tests/unit/test_libjuju.py ModelExistsTest.test_non_existing_model 2 0 0 100%
n2vc/tests/unit/test_libjuju.py GetModelStatusTest.setUp 1 0 0 100%
n2vc/tests/unit/test_libjuju.py GetModelStatusTest.test_success 7 0 0 100%
n2vc/tests/unit/test_libjuju.py GetModelStatusTest.test_exception 8 0 0 100%
n2vc/tests/unit/test_libjuju.py CreateMachineTest.setUp 1 0 0 100%
n2vc/tests/unit/test_libjuju.py CreateMachineTest.test_existing_machine 7 0 0 100%
n2vc/tests/unit/test_libjuju.py CreateMachineTest.test_non_existing_machine 9 0 0 100%
n2vc/tests/unit/test_libjuju.py CreateMachineTest.test_no_machine 9 0 0 100%
n2vc/tests/unit/test_libjuju.py DeployTest.setUp 7 0 0 100%
n2vc/tests/unit/test_libjuju.py DeployTest.setup_bundle_download_mocks 7 0 0 100%
n2vc/tests/unit/test_libjuju.py DeployTest.assert_overlay_file_is_written 3 0 0 100%
n2vc/tests/unit/test_libjuju.py DeployTest.assert_overlay_file_is_not_written 3 0 0 100%
n2vc/tests/unit/test_libjuju.py DeployTest.assert_bundle_is_downloaded 3 0 0 100%
n2vc/tests/unit/test_libjuju.py DeployTest.assert_bundle_is_not_downloaded 3 0 0 100%
n2vc/tests/unit/test_libjuju.py DeployTest.test_deploy 9 0 0 100%
n2vc/tests/unit/test_libjuju.py DeployTest.test_deploy_no_wait 8 0 0 100%
n2vc/tests/unit/test_libjuju.py DeployTest.test_deploy_exception 10 0 0 100%
n2vc/tests/unit/test_libjuju.py DeployTest.test_deploy_with_instantiation_params 10 0 0 100%
n2vc/tests/unit/test_libjuju.py DeployTest.test_deploy_with_instantiation_params_no_applications 11 0 0 100%
n2vc/tests/unit/test_libjuju.py DeployTest.test_deploy_with_instantiation_params_applications_not_found 10 0 0 100%
n2vc/tests/unit/test_libjuju.py DeployTest.test_deploy_overlay_contains_invalid_app 12 0 0 100%
n2vc/tests/unit/test_libjuju.py DeployTest.test_deploy_exception_with_instantiation_params 12 0 0 100%
n2vc/tests/unit/test_libjuju.py DeployTest.test_deploy_exception_when_deleting_file_is_not_propagated 12 0 0 100%
n2vc/tests/unit/test_libjuju.py DeployCharmTest.setUp 1 0 0 100%
n2vc/tests/unit/test_libjuju.py DeployCharmTest.test_existing_app 8 0 0 100%
n2vc/tests/unit/test_libjuju.py DeployCharmTest.test_non_existing_machine 8 0 0 100%
n2vc/tests/unit/test_libjuju.py DeployCharmTest.test_2_units 11 0 0 100%
n2vc/tests/unit/test_libjuju.py DeployCharmTest.test_1_unit 9 0 0 100%
n2vc/tests/unit/test_libjuju.py GetApplicationTest.setUp 1 0 0 100%
n2vc/tests/unit/test_libjuju.py GetApplicationTest.test_existing_application 4 0 0 100%
n2vc/tests/unit/test_libjuju.py GetApplicationTest.test_non_existing_application 4 0 0 100%
n2vc/tests/unit/test_libjuju.py ExecuteActionTest.setUp 1 0 0 100%
n2vc/tests/unit/test_libjuju.py ExecuteActionTest.test_no_application 10 0 0 100%
n2vc/tests/unit/test_libjuju.py ExecuteActionTest.test_no_action 10 0 0 100%
n2vc/tests/unit/test_libjuju.py ExecuteActionTest.test_no_leader 11 0 0 100%
n2vc/tests/unit/test_libjuju.py ExecuteActionTest.test_successful_exec 10 0 0 100%
n2vc/tests/unit/test_libjuju.py GetActionTest.setUp 1 0 0 100%
n2vc/tests/unit/test_libjuju.py GetActionTest.test_exception 7 0 0 100%
n2vc/tests/unit/test_libjuju.py GetActionTest.test_success 7 0 0 100%
n2vc/tests/unit/test_libjuju.py GetMetricsTest.setUp 1 0 0 100%
n2vc/tests/unit/test_libjuju.py GetMetricsTest.test_get_metrics_success 5 0 0 100%
n2vc/tests/unit/test_libjuju.py GetMetricsTest.test_get_metrics_exception 6 0 0 100%
n2vc/tests/unit/test_libjuju.py GetMetricsTest.test_missing_args_exception 7 0 0 100%
n2vc/tests/unit/test_libjuju.py AddRelationTest.setUp 1 0 0 100%
n2vc/tests/unit/test_libjuju.py AddRelationTest.test_not_found 7 0 0 100%
n2vc/tests/unit/test_libjuju.py AddRelationTest.test_not_found_in_error_code 7 0 0 100%
n2vc/tests/unit/test_libjuju.py AddRelationTest.test_already_exists 7 0 0 100%
n2vc/tests/unit/test_libjuju.py AddRelationTest.test_already_exists_error_code 7 0 0 100%
n2vc/tests/unit/test_libjuju.py AddRelationTest.test_exception 7 0 0 100%
n2vc/tests/unit/test_libjuju.py AddRelationTest.test_success 5 0 0 100%
n2vc/tests/unit/test_libjuju.py AddRelationTest.test_saas 5 0 0 100%
n2vc/tests/unit/test_libjuju.py DestroyApplicationTest.setUp 1 0 0 100%
n2vc/tests/unit/test_libjuju.py DestroyApplicationTest.test_success 6 0 0 100%
n2vc/tests/unit/test_libjuju.py DestroyApplicationTest.test_no_application 4 0 0 100%
n2vc/tests/unit/test_libjuju.py DestroyApplicationTest.test_exception 5 1 0 80%
n2vc/tests/unit/test_libjuju.py ConfigureApplicationTest.setUp 1 0 0 100%
n2vc/tests/unit/test_libjuju.py ConfigureApplicationTest.test_success 5 0 0 100%
n2vc/tests/unit/test_libjuju.py ConfigureApplicationTest.test_exception 5 0 0 100%
n2vc/tests/unit/test_libjuju.py ConfigureApplicationTest.test_controller_exception 7 0 0 100%
n2vc/tests/unit/test_libjuju.py ConfigureApplicationTest.test_get_model_exception 7 0 0 100%
n2vc/tests/unit/test_libjuju.py ListModelsTest.setUp 1 0 0 100%
n2vc/tests/unit/test_libjuju.py ListModelsTest.test_containing 5 0 0 100%
n2vc/tests/unit/test_libjuju.py ListModelsTest.test_not_containing 5 0 0 100%
n2vc/tests/unit/test_libjuju.py ListModelsTest.test_no_contains_arg 5 0 0 100%
n2vc/tests/unit/test_libjuju.py ModelsExistTest.setUp 1 0 0 100%
n2vc/tests/unit/test_libjuju.py ModelsExistTest.test_model_names_none 3 0 0 100%
n2vc/tests/unit/test_libjuju.py ModelsExistTest.test_model_names_empty 3 0 0 100%
n2vc/tests/unit/test_libjuju.py ModelsExistTest.test_model_names_not_existing 4 0 0 100%
n2vc/tests/unit/test_libjuju.py ModelsExistTest.test_model_names_exist 4 0 0 100%
n2vc/tests/unit/test_libjuju.py ListOffers.setUp 1 0 0 100%
n2vc/tests/unit/test_libjuju.py ListOffers.test_disconnect_controller 5 0 0 100%
n2vc/tests/unit/test_libjuju.py ListOffers.test_empty_list 7 0 0 100%
n2vc/tests/unit/test_libjuju.py ListOffers.test_non_empty_list 8 0 0 100%
n2vc/tests/unit/test_libjuju.py ListOffers.test_matching_offer_name 11 0 0 100%
n2vc/tests/unit/test_libjuju.py ListOffers.test_not_matching_offer_name 11 0 0 100%
n2vc/tests/unit/test_libjuju.py OfferTest.setUp 1 0 0 100%
n2vc/tests/unit/test_libjuju.py OfferTest.test_offer 9 0 0 100%
n2vc/tests/unit/test_libjuju.py OfferTest.test_offer_exception 11 0 0 100%
n2vc/tests/unit/test_libjuju.py ConsumeTest.setUp 3 0 0 100%
n2vc/tests/unit/test_libjuju.py ConsumeTest.test_consume 8 0 0 100%
n2vc/tests/unit/test_libjuju.py ConsumeTest.test_parsing_error_exception 8 0 0 100%
n2vc/tests/unit/test_libjuju.py ConsumeTest.test_juju_error_exception 8 0 0 100%
n2vc/tests/unit/test_libjuju.py ConsumeTest.test_juju_api_error_exception 8 0 0 100%
n2vc/tests/unit/test_libjuju.py AddK8sTest.setUp 9 0 0 100%
n2vc/tests/unit/test_libjuju.py AddK8sTest.test_add_k8s 3 0 0 100%
n2vc/tests/unit/test_libjuju.py AddK8sTest.test_add_k8s_exception 5 0 0 100%
n2vc/tests/unit/test_libjuju.py AddK8sTest.test_add_k8s_missing_name 4 0 0 100%
n2vc/tests/unit/test_libjuju.py AddK8sTest.test_add_k8s_missing_storage_name 4 0 0 100%
n2vc/tests/unit/test_libjuju.py AddK8sTest.test_add_k8s_missing_configuration_keys 4 0 0 100%
n2vc/tests/unit/test_libjuju.py AddCloudTest.setUp 3 0 0 100%
n2vc/tests/unit/test_libjuju.py AddCloudTest.test_add_cloud_with_credential 6 0 0 100%
n2vc/tests/unit/test_libjuju.py AddCloudTest.test_add_cloud_no_credential 6 0 0 100%
n2vc/tests/unit/test_libjuju.py AddCloudTest.test_add_cloud_exception 7 0 0 100%
n2vc/tests/unit/test_libjuju.py AddCloudTest.test_add_credential_exception 7 0 0 100%
n2vc/tests/unit/test_libjuju.py RemoveCloudTest.setUp 1 0 0 100%
n2vc/tests/unit/test_libjuju.py RemoveCloudTest.test_remove_cloud 4 0 0 100%
n2vc/tests/unit/test_libjuju.py RemoveCloudTest.test_remove_cloud_exception 6 0 0 100%
n2vc/tests/unit/test_libjuju.py GetK8sCloudCredentials.setUp 3 0 0 100%
n2vc/tests/unit/test_libjuju.py GetK8sCloudCredentials.test_not_supported 14 0 0 100%
n2vc/tests/unit/test_libjuju.py GetK8sCloudCredentials.test_user_pass 9 0 0 100%
n2vc/tests/unit/test_libjuju.py GetK8sCloudCredentials.test_user_pass_with_cert 8 0 0 100%
n2vc/tests/unit/test_libjuju.py GetK8sCloudCredentials.test_user_no_pass 11 0 0 100%
n2vc/tests/unit/test_libjuju.py GetK8sCloudCredentials.test_cert 11 0 0 100%
n2vc/tests/unit/test_libjuju.py GetK8sCloudCredentials.test_exception_cannot_set_token_and_userpass 13 0 0 100%
n2vc/tests/unit/test_libjuju.py ScaleApplicationTest.setUp 1 0 0 100%
n2vc/tests/unit/test_libjuju.py ScaleApplicationTest.test_scale_application 6 0 0 100%
n2vc/tests/unit/test_libjuju.py ScaleApplicationTest.test_no_application 6 0 0 100%
n2vc/tests/unit/test_libjuju.py ScaleApplicationTest.test_exception 5 0 0 100%
n2vc/tests/unit/test_libjuju.py GetUnitNumberTest.setUp 1 0 0 100%
n2vc/tests/unit/test_libjuju.py GetUnitNumberTest.test_successful_get_unit_number 4 0 0 100%
n2vc/tests/unit/test_libjuju.py GetUnitNumberTest.test_non_existing_application 4 0 0 100%
n2vc/tests/unit/test_libjuju.py GetMachineInfoTest.setUp 1 0 0 100%
n2vc/tests/unit/test_libjuju.py GetMachineInfoTest.test_successful 5 0 0 100%
n2vc/tests/unit/test_libjuju.py GetMachineInfoTest.test_exception 7 0 0 100%
n2vc/tests/unit/test_libjuju.py GetUnitTest.setUp 1 0 0 100%
n2vc/tests/unit/test_libjuju.py GetUnitTest.test_successful 2 0 0 100%
n2vc/tests/unit/test_libjuju.py GetUnitTest.test_return_none 2 0 0 100%
n2vc/tests/unit/test_libjuju.py CheckApplicationExists.setUp 1 0 0 100%
n2vc/tests/unit/test_libjuju.py CheckApplicationExists.test_successful 9 0 0 100%
n2vc/tests/unit/test_libjuju.py CheckApplicationExists.test_no_application 9 0 0 100%
n2vc/tests/unit/test_libjuju.py AddUnitTest.setUp 1 0 0 100%
n2vc/tests/unit/test_libjuju.py AddUnitTest.test_successful 10 0 0 100%
n2vc/tests/unit/test_libjuju.py AddUnitTest.test_no_app 9 0 0 100%
n2vc/tests/unit/test_libjuju.py AddUnitTest.test_no_machine 10 0 0 100%
n2vc/tests/unit/test_libjuju.py DestroyUnitTest.setUp 1 0 0 100%
n2vc/tests/unit/test_libjuju.py DestroyUnitTest.test_successful 9 0 0 100%
n2vc/tests/unit/test_libjuju.py DestroyUnitTest.test_no_app 9 0 0 100%
n2vc/tests/unit/test_libjuju.py DestroyUnitTest.test_no_unit 11 0 0 100%
n2vc/tests/unit/test_libjuju.py (no function) 364 0 0 100%
n2vc/tests/unit/test_n2vc_juju_conn.py N2VCJujuConnTestCase.setUp 12 0 0 100%
n2vc/tests/unit/test_n2vc_juju_conn.py GetMetricssTest.setUp 2 0 0 100%
n2vc/tests/unit/test_n2vc_juju_conn.py GetMetricssTest.test_success 2 0 0 100%
n2vc/tests/unit/test_n2vc_juju_conn.py GetMetricssTest.test_except 4 0 0 100%
n2vc/tests/unit/test_n2vc_juju_conn.py UpdateVcaStatusTest.setUp 7 0 0 100%
n2vc/tests/unit/test_n2vc_juju_conn.py UpdateVcaStatusTest.test_success 4 0 0 100%
n2vc/tests/unit/test_n2vc_juju_conn.py UpdateVcaStatusTest.test_exception 7 2 0 71%
n2vc/tests/unit/test_n2vc_juju_conn.py K8sProxyCharmsTest.setUp 12 0 0 100%
n2vc/tests/unit/test_n2vc_juju_conn.py K8sProxyCharmsTest.test_success 6 0 0 100%
n2vc/tests/unit/test_n2vc_juju_conn.py K8sProxyCharmsTest.test_no_artifact_path 3 1 0 67%
n2vc/tests/unit/test_n2vc_juju_conn.py K8sProxyCharmsTest.test_no_db 3 1 0 67%
n2vc/tests/unit/test_n2vc_juju_conn.py K8sProxyCharmsTest.test_file_not_exists 5 1 0 80%
n2vc/tests/unit/test_n2vc_juju_conn.py K8sProxyCharmsTest.test_exception 8 1 0 88%
n2vc/tests/unit/test_n2vc_juju_conn.py AddRelationTest.setUp 5 0 0 100%
n2vc/tests/unit/test_n2vc_juju_conn.py AddRelationTest.test_standard_relation_same_model_and_controller 6 0 0 100%
n2vc/tests/unit/test_n2vc_juju_conn.py AddRelationTest.test_cmr_relation_same_controller 9 0 0 100%
n2vc/tests/unit/test_n2vc_juju_conn.py AddRelationTest.test_cmr_relation_different_controller 10 0 0 100%
n2vc/tests/unit/test_n2vc_juju_conn.py AddRelationTest.test_relation_exception 5 0 0 100%
n2vc/tests/unit/test_n2vc_juju_conn.py UpgradeCharmTest.setUp 4 0 0 100%
n2vc/tests/unit/test_n2vc_juju_conn.py UpgradeCharmTest.test_empty_ee_id 5 0 0 100%
n2vc/tests/unit/test_n2vc_juju_conn.py UpgradeCharmTest.test_wrong_ee_id 6 0 0 100%
n2vc/tests/unit/test_n2vc_juju_conn.py UpgradeCharmTest.test_charm_upgrade_succeded 5 0 0 100%
n2vc/tests/unit/test_n2vc_juju_conn.py UpgradeCharmTest.test_charm_upgrade_failed 7 0 0 100%
n2vc/tests/unit/test_n2vc_juju_conn.py GenerateApplicationNameTest.setUp 2 0 0 100%
n2vc/tests/unit/test_n2vc_juju_conn.py GenerateApplicationNameTest.test_generate_backward_compatible_application_name 5 0 0 100%
n2vc/tests/unit/test_n2vc_juju_conn.py GenerateApplicationNameTest.test_generate_backward_compatible_application_name_without_vnf_id_vdu_id 7 0 0 100%
n2vc/tests/unit/test_n2vc_juju_conn.py GenerateApplicationNameTest.test_find_charm_level_with_vnf_id 4 0 0 100%
n2vc/tests/unit/test_n2vc_juju_conn.py GenerateApplicationNameTest.test_find_charm_level_with_vdu_id 4 0 0 100%
n2vc/tests/unit/test_n2vc_juju_conn.py GenerateApplicationNameTest.test_find_charm_level_with_vnf_id_and_vdu_id 4 0 0 100%
n2vc/tests/unit/test_n2vc_juju_conn.py GenerateApplicationNameTest.test_find_charm_level_without_vnf_id_and_vdu_id 5 0 0 100%
n2vc/tests/unit/test_n2vc_juju_conn.py GenerateApplicationNameTest.test_generate_application_name_ns_charm 10 0 0 100%
n2vc/tests/unit/test_n2vc_juju_conn.py GenerateApplicationNameTest.test_generate_application_name_ns_charm_empty_vca_records 8 0 0 100%
n2vc/tests/unit/test_n2vc_juju_conn.py GenerateApplicationNameTest.test_generate_application_name_vnf_charm 10 0 0 100%
n2vc/tests/unit/test_n2vc_juju_conn.py GenerateApplicationNameTest.test_generate_application_name_vdu_charm_kdu_name_in_vca_record_is_none 10 0 0 100%
n2vc/tests/unit/test_n2vc_juju_conn.py GenerateApplicationNameTest.test_generate_application_name_vdu_charm_vdu_id_kdu_name_in_vca_record_are_both_set 10 0 0 100%
n2vc/tests/unit/test_n2vc_juju_conn.py GenerateApplicationNameTest.test_generate_application_name_vdu_charm_both_vdu_id_kdu_name_in_vca_record_are_none 8 0 0 100%
n2vc/tests/unit/test_n2vc_juju_conn.py GenerateApplicationNameTest.test_generate_application_name_vdu_charm_given_vdu_id_is_none 8 0 0 100%
n2vc/tests/unit/test_n2vc_juju_conn.py GenerateApplicationNameTest.test_generate_application_name_vdu_charm_vdu_id_does_not_match_with_the_key_in_vca_record 8 0 0 100%
n2vc/tests/unit/test_n2vc_juju_conn.py GenerateApplicationNameTest.test_generate_application_name_vdu_charm_vdu_id_in_vca_record_is_none 10 0 0 100%
n2vc/tests/unit/test_n2vc_juju_conn.py GenerateApplicationNameTest.test_get_vnf_count_db_vnfr_ns_charm 7 0 0 100%
n2vc/tests/unit/test_n2vc_juju_conn.py GenerateApplicationNameTest.test_get_vnf_count_db_vnfr_vnf_charm 7 0 0 100%
n2vc/tests/unit/test_n2vc_juju_conn.py GenerateApplicationNameTest.test_get_vnf_count_db_vnfr_vdu_charm 7 0 0 100%
n2vc/tests/unit/test_n2vc_juju_conn.py GenerateApplicationNameTest.test_get_vca_records_vdu_charm 6 0 0 100%
n2vc/tests/unit/test_n2vc_juju_conn.py GenerateApplicationNameTest.test_get_vca_records_vnf_charm_member_vnf_index_mismatch 6 0 0 100%
n2vc/tests/unit/test_n2vc_juju_conn.py GenerateApplicationNameTest.test_get_vca_records_ns_charm 6 0 0 100%
n2vc/tests/unit/test_n2vc_juju_conn.py GenerateApplicationNameTest.test_get_vca_records_ns_charm_empty_charm_name 6 0 0 100%
n2vc/tests/unit/test_n2vc_juju_conn.py GenerateApplicationNameTest.test_get_application_name_vnf_charm 13 0 0 100%
n2vc/tests/unit/test_n2vc_juju_conn.py GenerateApplicationNameTest.test_get_application_name_vnf_charm_old_naming 12 0 0 100%
n2vc/tests/unit/test_n2vc_juju_conn.py GenerateApplicationNameTest.test_get_application_name_vnf_charm_vnf_index_ref_mismatch 11 2 0 82%
n2vc/tests/unit/test_n2vc_juju_conn.py GenerateApplicationNameTest.test_get_application_name_vdu_charm 13 0 0 100%
n2vc/tests/unit/test_n2vc_juju_conn.py GenerateApplicationNameTest.test_get_application_name_kdu_charm 13 0 0 100%
n2vc/tests/unit/test_n2vc_juju_conn.py GenerateApplicationNameTest.test_get_application_name_vdu_charm_old_naming 13 0 0 100%
n2vc/tests/unit/test_n2vc_juju_conn.py GenerateApplicationNameTest.test_get_application_name_ns_charm 13 0 0 100%
n2vc/tests/unit/test_n2vc_juju_conn.py GenerateApplicationNameTest.test_get_application_name_ns_charm_empty_charm_name 11 2 0 82%
n2vc/tests/unit/test_n2vc_juju_conn.py GenerateApplicationNameTest.test_get_application_name_ns_charm_old_naming 13 0 0 100%
n2vc/tests/unit/test_n2vc_juju_conn.py DeleteExecutionEnvironmentTest.setUp 4 0 0 100%
n2vc/tests/unit/test_n2vc_juju_conn.py DeleteExecutionEnvironmentTest.test_remove_ee__target_application_exists__model_is_deleted 10 0 0 100%
n2vc/tests/unit/test_n2vc_juju_conn.py DeleteExecutionEnvironmentTest.test_remove_ee__multiple_applications_exist__model_is_not_deleted 10 0 0 100%
n2vc/tests/unit/test_n2vc_juju_conn.py DeleteExecutionEnvironmentTest.test_remove_ee__target_application_does_not_exist__model_is_deleted 5 0 0 100%
n2vc/tests/unit/test_n2vc_juju_conn.py (no function) 91 0 0 100%
n2vc/tests/unit/test_provisioner.py ProvisionerTest.setUp 1 1 0 0%
n2vc/tests/unit/test_provisioner.py (no function) 3 0 0 100%
n2vc/tests/unit/test_store.py TestDbMongoStore.setUp 2 0 0 100%
n2vc/tests/unit/test_store.py TestDbMongoStore.test_get_vca_connection_data 7 0 0 100%
n2vc/tests/unit/test_store.py TestDbMongoStore.test_update_vca_endpoints 7 0 0 100%
n2vc/tests/unit/test_store.py TestDbMongoStore.test_update_vca_endpoints_exception 7 0 0 100%
n2vc/tests/unit/test_store.py TestDbMongoStore.test_update_vca_endpoints_with_vca_id 5 0 0 100%
n2vc/tests/unit/test_store.py TestDbMongoStore.test_get_vca_endpoints 11 0 0 100%
n2vc/tests/unit/test_store.py TestDbMongoStore.test_get_vca_endpoints_with_vca_id 7 0 0 100%
n2vc/tests/unit/test_store.py TestDbMongoStore.test_get_vca_id 1 0 0 100%
n2vc/tests/unit/test_store.py TestDbMongoStore.test_get_vca_id_with_vim_id 4 0 0 100%
n2vc/tests/unit/test_store.py TestMotorStore.setUp 19 0 0 100%
n2vc/tests/unit/test_store.py TestMotorStore.test_get_vca_connection_data 8 0 0 100%
n2vc/tests/unit/test_store.py TestMotorStore.test_get_vca_connection_data_exception 4 0 0 100%
n2vc/tests/unit/test_store.py TestMotorStore.test_update_vca_endpoints 6 0 0 100%
n2vc/tests/unit/test_store.py TestMotorStore.test_get_vca_connection_data_with_id 11 0 0 100%
n2vc/tests/unit/test_store.py TestMotorStore.test_update_vca_endpoints_exception 7 0 0 100%
n2vc/tests/unit/test_store.py TestMotorStore.test_update_vca_endpoints_with_vca_id 5 0 0 100%
n2vc/tests/unit/test_store.py TestMotorStore.test_get_vca_endpoints 10 0 0 100%
n2vc/tests/unit/test_store.py TestMotorStore.test_get_vca_endpoints_with_vca_id 7 0 0 100%
n2vc/tests/unit/test_store.py TestMotorStore.test_get_vca_id 1 0 0 100%
n2vc/tests/unit/test_store.py TestMotorStore.test_get_vca_id_with_vim_id 4 0 0 100%
n2vc/tests/unit/test_store.py (no function) 35 0 0 100%
n2vc/tests/unit/test_utils.py UtilsTest.test_dict 2 0 0 100%
n2vc/tests/unit/test_utils.py UtilsTest.test_entity_type 8 0 0 100%
n2vc/tests/unit/test_utils.py UtilsTest.test_juju_status_to_osm 9 0 0 100%
n2vc/tests/unit/test_utils.py GetEEComponentTest.test_valid 4 0 0 100%
n2vc/tests/unit/test_utils.py GetEEComponentTest.test_invalid 4 0 0 100%
n2vc/tests/unit/test_utils.py (no function) 13 0 0 100%
n2vc/tests/unit/testdata/test_db_descriptors.py (no function) 2 0 0 100%
n2vc/tests/unit/utils.py AsyncMockFunc 1 1 0 0%
n2vc/tests/unit/utils.py AsyncMock.__call__ 1 0 0 100%
n2vc/tests/unit/utils.py FakeN2VC.write_app_status_to_db 1 1 0 0%
n2vc/tests/unit/utils.py FakeMachine.destroy 1 1 0 0%
n2vc/tests/unit/utils.py FakeManualMachine.destroy 1 1 0 0%
n2vc/tests/unit/utils.py FakeWatcher.Next 1 0 0 100%
n2vc/tests/unit/utils.py FakeModel.__init__ 1 0 0 100%
n2vc/tests/unit/utils.py FakeModel.applications 1 0 0 100%
n2vc/tests/unit/utils.py FakeUnit.is_leader_from_status 1 0 0 100%
n2vc/tests/unit/utils.py FakeUnit.run_action 1 0 0 100%
n2vc/tests/unit/utils.py FakeUnit.machine_id 1 0 0 100%
n2vc/tests/unit/utils.py FakeApplication.set_config 1 0 0 100%
n2vc/tests/unit/utils.py FakeApplication.add_unit 1 0 0 100%
n2vc/tests/unit/utils.py FakeApplication.destroy_unit 1 0 0 100%
n2vc/tests/unit/utils.py FakeApplication.get_actions 1 0 0 100%
n2vc/tests/unit/utils.py FakeApplication.get_config 1 0 0 100%
n2vc/tests/unit/utils.py FakeApplication.scale 1 0 0 100%
n2vc/tests/unit/utils.py FakeFile.__init__ 1 0 0 100%
n2vc/tests/unit/utils.py FakeFile.read 1 0 0 100%
n2vc/tests/unit/utils.py FakeFileWrapper.__init__ 1 0 0 100%
n2vc/tests/unit/utils.py FakeFileWrapper.__enter__ 1 0 0 100%
n2vc/tests/unit/utils.py FakeFileWrapper.__exit__ 1 0 0 100%
n2vc/tests/unit/utils.py (no function) 69 0 0 100%
n2vc/utils.py base64_to_cacert 6 2 0 67%
n2vc/utils.py Dict.__getattribute__ 2 0 0 100%
n2vc/utils.py EntityType.has_value 1 0 0 100%
n2vc/utils.py EntityType.get_entity 1 0 0 100%
n2vc/utils.py EntityType.get_entity_from_delta 3 3 0 0%
n2vc/utils.py obj_to_yaml 9 9 0 0%
n2vc/utils.py obj_to_dict 2 2 0 0%
n2vc/utils.py get_ee_id_components 7 0 0 100%
n2vc/utils.py generate_random_alfanum_string 1 1 0 0%
n2vc/utils.py (no function) 38 0 0 100%
n2vc/vca/__init__.py (no function) 0 0 0 100%
n2vc/vca/cloud.py Cloud.__init__ 2 0 0 100%
n2vc/vca/cloud.py (no function) 2 0 0 100%
n2vc/vca/connection.py Connection.__init__ 4 0 0 100%
n2vc/vca/connection.py Connection.load 1 0 0 100%
n2vc/vca/connection.py Connection.is_default 1 0 0 100%
n2vc/vca/connection.py Connection.data 1 0 0 100%
n2vc/vca/connection.py Connection._load_vca_connection_data 11 0 0 100%
n2vc/vca/connection.py Connection.endpoints 1 0 0 100%
n2vc/vca/connection.py Connection.update_endpoints 2 0 0 100%
n2vc/vca/connection.py Connection.lxd_cloud 1 0 0 100%
n2vc/vca/connection.py Connection.k8s_cloud 1 0 0 100%
n2vc/vca/connection.py get_connection 3 0 0 100%
n2vc/vca/connection.py (no function) 21 0 0 100%
n2vc/vca/connection_data.py ConnectionData.__init__ 12 0 0 100%
n2vc/vca/connection_data.py (no function) 3 0 0 100%
Total   7443 1385 0 81%

No items found using the specified filter.