def test_do_resource_status_check_replica_set(self): self._prepare_master_node() tasks._do_resource_status_check( "ReplicaSet", {'status': { 'ready_replicas': 2, 'replicas': 2 }})
def test_do_resource_status_check_deployment(self): self._prepare_master_node() tasks._do_resource_status_check( "Deployment", {'status': { 'conditions': [{ 'type': 'Available' }] }})
def test_do_resource_status_check_replication_controller(self): self._prepare_master_node() tasks._do_resource_status_check( "ReplicationController", {'status': { 'ready_replicas': 2, 'replicas': 2 }})
def test_do_resource_status_check_persistent_volume_retry(self): self._prepare_master_node() with self.assertRaises(OperationRetry) as error: tasks._do_resource_status_check("PersistentVolume", {'status': { 'phase': 'Unknown' }}) self.assertEqual(str(error.exception), "Unknown PersistentVolume status Unknown")
def test_do_resource_status_check_persistent_volume(self): self._prepare_master_node() tasks._do_resource_status_check("PersistentVolume", {'status': { 'phase': 'Bound' }}) tasks._do_resource_status_check("PersistentVolume", {'status': { 'phase': 'Available' }})
def test_do_resource_status_check_pod_failed(self): # raise exception on 'Failed' self._prepare_master_node() with self.assertRaises(NonRecoverableError) as error: tasks._do_resource_status_check("Pod", {'status': { 'phase': 'Failed' }}) self.assertEqual(str(error.exception), "Status is {'phase': 'Failed'}")
def test_do_resource_status_check_replication_controller_retry(self): self._prepare_master_node() with self.assertRaises(OperationRetry) as error: tasks._do_resource_status_check( "ReplicationController", {'status': { 'ready_replicas': None, 'replicas': 0 }}) self.assertEqual(str(error.exception), "ReplicationController status not ready yet")
def test_do_resource_status_check_deployment_failed(self): self._prepare_master_node() with self.assertRaises(NonRecoverableError) as error: tasks._do_resource_status_check( "Deployment", { 'status': { 'conditions': [{ 'type': 'ReplicaFailure', 'reason': 'ReplicaFailure', 'message': 'ReplicaFailure' }] } }) self.assertEqual( str(error.exception), 'Deployment condition is ReplicaFailure ,' 'reason:ReplicaFailure, message: ReplicaFailure')
def test_do_resource_status_check_service_fail(self): # raise exception on empty balancer _, _ctx = self._prepare_master_node() current_ctx.set(_ctx) with self.assertRaises(OperationRetry) as error: tasks._do_resource_status_check( "Service", { 'spec': { 'type': 'Ingress' }, 'status': { 'load_balancer': { 'ingress': None } } }) self.assertEqual(str(error.exception), "Status is {'load_balancer': {'ingress': None}}")
def test_do_resource_status_check_replica_set_retry(self): self._prepare_master_node() with self.assertRaises(OperationRetry) as error: tasks._do_resource_status_check( "ReplicaSet", {'status': { 'ready_replicas': None, 'replicas': 0 }}) try: self.assertEqual( str(error.exception), "Status is {'ready_replicas': None, 'replicas': 0}") except AssertionError: self.assertEqual( str(error.exception), "Status is {'replicas': 0, 'ready_replicas': None}")
def test_do_resource_status_check_pod_retry(self): # raise exception on 'Pending', 'Unknown' self._prepare_master_node() with self.assertRaises(OperationRetry) as error: tasks._do_resource_status_check("Pod", {'status': { 'phase': 'Pending' }}) self.assertEqual(str(error.exception), "status Pending in phase ['Pending', 'Unknown']") with self.assertRaises(OperationRetry) as error: tasks._do_resource_status_check("Pod", {'status': { 'phase': 'Unknown' }}) self.assertEqual(str(error.exception), "status Unknown in phase ['Pending', 'Unknown']")
def test_do_resource_status_check_deployment_retry(self): self._prepare_master_node() with self.assertRaises(OperationRetry) as error: tasks._do_resource_status_check( "Deployment", {'status': { 'conditions': [{ 'type': 'Progressing' }] }}) self.assertEqual(str(error.exception), "Deployment condition is Progressing") with self.assertRaises(OperationRetry) as error: tasks._do_resource_status_check("Deployment", {'status': { 'conditions': None }}) self.assertEqual(str(error.exception), "Deployment condition is not ready yet")
def test_do_resource_status_check_replica_set_retry(self): self._prepare_master_node() with self.assertRaises(OperationRetry) as error: tasks._do_resource_status_check( "ReplicaSet", {'status': { 'ready_replicas': None, 'replicas': 2 }}) self.assertEqual(str(error.exception), "ReplicaSet status not ready yet") with self.assertRaises(OperationRetry) as error: tasks._do_resource_status_check( "ReplicaSet", {'status': { 'ready_replicas': 1, 'replicas': 2 }}) self.assertEqual(str(error.exception), "Only 1 of 2 replicas are ready")
def test_do_resource_status_check_pod(self): # never raise exception on 'Running', 'Succeeded' self._prepare_master_node() tasks._do_resource_status_check("Pod", {'status': { 'phase': 'Running' }}) tasks._do_resource_status_check("Pod", {'status': { 'phase': 'Succeeded' }}) tasks._do_resource_status_check("Pod", {'status': {'phase': 'Other'}})
def test_do_resource_status_check_unknow(self): # never raise exception on unknown types tasks._do_resource_status_check("unknow", {})
def test_do_resource_status_check_service(self): # never raise exception on empty status self._prepare_master_node() tasks._do_resource_status_check("Service", {'status': {}})
def test_do_resource_status_check_unknown(self): # never raise exception on unknown types _, __ = self._prepare_master_node() tasks._do_resource_status_check("unknown", {})