def test_get_by_labels_invalid_args(self):
     name = object()
     try:
         K8sPod.get_by_labels(labels=name)
         self.fail("Should not fail.")
     except Exception as err:
         self.assertIsInstance(err, SyntaxError)
Beispiel #2
0
 def test_get_by_name_nonexistent(self):
     name = "yopod-{0}".format(str(uuid.uuid4()))
     config = K8sConfig(kubeconfig=_utils.kubeconfig_fallback)
     if _utils.is_reachable(config):
         pods = K8sPod.get_by_name(config=config, name=name)
         self.assertIsInstance(pods, list)
         self.assertEqual(0, len(pods))
Beispiel #3
0
 def test_get_by_labels_nonexistent(self):
     name = "yopod-{0}".format(str(uuid.uuid4()))
     config = K8sConfig(kubeconfig=utils.kubeconfig_fallback)
     if utils.is_reachable(config.api_host):
         pods = K8sPod.get_by_labels(config=config, labels={'name': name})
         self.assertIsInstance(pods, list)
         self.assertEqual(0, len(pods))
Beispiel #4
0
 def test_get_by_labels_nonexistent(self):
     name = "yopod-{0}".format(str(uuid.uuid4()))
     config = K8sConfig(kubeconfig=utils.kubeconfig_fallback)
     if utils.is_reachable(config.api_host):
         pods = K8sPod.get_by_labels(config=config, labels={'name': name})
         self.assertIsInstance(pods, list)
         self.assertEqual(0, len(pods))
Beispiel #5
0
 def test_update_labels(self):
     name = "yocontainer"
     container = utils.create_container(name=name)
     name = "yopod-{0}".format(str(uuid.uuid4()))
     pod1 = utils.create_pod(name=name)
     pod1.add_container(container)
     if utils.is_reachable(pod1.config.api_host):
         pod1.create()
         labels = pod1.get_labels()
         labels['yomama'] = 'sofat'
         pods = K8sPod.get_by_labels(config=pod1.config, labels=labels)
         self.assertIsInstance(pods, list)
         self.assertEqual(0, len(pods))
         pod1.set_labels(labels)
         pod1.update()
         pods = K8sPod.get_by_labels(config=pod1.config, labels=labels)
         self.assertIsInstance(pods, list)
         self.assertEqual(1, len(pods))
Beispiel #6
0
 def test_update_labels(self):
     name = "yocontainer"
     container = utils.create_container(name=name)
     name = "yopod-{0}".format(str(uuid.uuid4()))
     pod = utils.create_pod(name=name)
     pod.add_container(container)
     if utils.is_reachable(pod.config.api_host):
         pod.create()
         labels = pod.labels
         labels['yomama'] = 'sofat'
         pods = K8sPod.get_by_labels(config=pod.config, labels=labels)
         self.assertIsInstance(pods, list)
         self.assertEqual(0, len(pods))
         pod.labels = labels
         pod.update()
         pods = K8sPod.get_by_labels(config=pod.config, labels=labels)
         self.assertIsInstance(pods, list)
         self.assertEqual(1, len(pods))
Beispiel #7
0
 def test_init_no_args(self):
     try:
         K8sPod()
         self.fail("Should not fail.")
     except SyntaxError:
         pass
     except IOError:
         pass
     except Exception as err:
         self.fail("Unhandled exception: [ {0} ]".format(err.__class__.__name__))
Beispiel #8
0
 def test_get_by_name(self):
     name = "yocontainer"
     container = utils.create_container(name=name)
     name = "yopod-{0}".format(str(uuid.uuid4()))
     pod = utils.create_pod(name=name)
     pod.add_container(container)
     if utils.is_reachable(pod.config.api_host):
         pod.create()
         pods = K8sPod.get_by_name(config=pod.config, name=name)
         self.assertIsInstance(pods, list)
         self.assertEqual(1, len(pods))
Beispiel #9
0
 def test_get_by_labels(self):
     name = "yocontainer"
     container = utils.create_container(name=name)
     name = "yopod-{0}".format(str(uuid.uuid4()))
     pod = utils.create_pod(name=name)
     pod.add_container(container)
     if utils.is_reachable(pod.config.api_host):
         pod.create()
         pods = K8sPod.get_by_labels(config=pod.config, labels={'name': name})
         self.assertIsInstance(pods, list)
         self.assertEqual(1, len(pods))
Beispiel #10
0
 def test_init_with_invalid_name(self):
     name = object()
     try:
         K8sPod(name=name)
         self.fail("Should not fail.")
     except SyntaxError:
         pass
     except IOError:
         pass
     except Exception as err:
         self.fail("Unhandled exception: [ {0} ]".format(err.__class__.__name__))
Beispiel #11
0
 def test_get_by_labels(self):
     name = "yocontainer"
     container = _utils.create_container(name=name)
     name = "yopod-{0}".format(str(uuid.uuid4()))
     pod = _utils.create_pod(name=name)
     pod.add_container(container)
     if _utils.is_reachable(pod.config):
         pod.create()
         pods = K8sPod.get_by_labels(config=pod.config, labels={'name': name})
         self.assertIsInstance(pods, list)
         self.assertEqual(1, len(pods))
         self.assertEqual(pod, pods[0])
Beispiel #12
0
 def test_update_name_fails(self):
     name = "yocontainer"
     container = utils.create_container(name=name)
     name1 = "yopod1"
     name2 = "yopod2"
     pod = utils.create_pod(name=name1)
     pod.add_container(container)
     if utils.is_reachable(pod.config.api_host):
         pod.create()
         result = K8sPod.get_by_name(config=pod.config, name=name1)
         self.assertIsInstance(result, list)
         self.assertEqual(1, len(result))
         self.assertIsInstance(result[0], K8sPod)
         result[0].name = name2
         with self.assertRaises(NotFoundException):
             result[0].update()
Beispiel #13
0
 def test_update_namespace_fails(self):
     name = "yocontainer"
     container = utils.create_container(name=name)
     name = "yopod-{0}".format(str(uuid.uuid4()))
     nspace = "yonamespace"
     pod1 = utils.create_pod(name=name)
     pod1.add_container(container)
     if utils.is_reachable(pod1.config.api_host):
         pod1.create()
         result = K8sPod.get_by_name(config=pod1.config, name=name)
         self.assertIsInstance(result, list)
         self.assertEqual(1, len(result))
         pod2 = result[0]
         self.assertIsInstance(pod2, K8sPod)
         self.assertNotEqual(pod2.namespace, nspace)
         self.assertEqual(pod1, pod2)
         pod2.namespace = nspace
         with self.assertRaises(BadRequestException):
             pod2.update()
Beispiel #14
0
 def test_update_name_fails(self):
     name = "yocontainer"
     container = utils.create_container(name=name)
     name1 = "yopod1"
     name2 = "yopod2"
     pod = utils.create_pod(name=name1)
     pod.add_container(container)
     if utils.is_reachable(pod.config.api_host):
         pod.create()
         result = K8sPod.get_by_name(config=pod.config, name=name1)
         self.assertIsInstance(result, list)
         self.assertEqual(1, len(result))
         self.assertIsInstance(result[0], K8sPod)
         result[0].name = name2
         try:
             result[0].update()
             self.fail("Should not fail.")
         except Exception as err:
             self.assertIsInstance(err, BadRequestException)
Beispiel #15
0
 def test_update_namespace_fails(self):
     name = "yocontainer"
     container = utils.create_container(name=name)
     name = "yopod-{0}".format(str(uuid.uuid4()))
     nspace = "yonamespace"
     pod1 = utils.create_pod(name=name)
     pod1.add_container(container)
     if utils.is_reachable(pod1.config.api_host):
         pod1.create()
         result = K8sPod.get_by_name(config=pod1.config, name=name)
         self.assertIsInstance(result, list)
         self.assertEqual(1, len(result))
         pod2 = result[0]
         self.assertIsInstance(pod2, K8sPod)
         self.assertNotEqual(pod2.get_namespace(), nspace)
         self.assertEqual(pod1, pod2)
         pod2.set_namespace(nspace)
         try:
             pod2.update()
             self.fail("Should not fail.")
         except Exception as err:
             self.assertIsInstance(err, BadRequestException)
Beispiel #16
0
 def test_get_by_labels_invalid_args(self):
     name = object()
     config = utils.create_config()
     with self.assertRaises(SyntaxError):
         K8sPod.get_by_labels(config=config, labels=name)
Beispiel #17
0
 def test_get_by_labels_none_args(self):
     config = utils.create_config()
     with self.assertRaises(SyntaxError):
         K8sPod.get_by_labels(config=config)
 def test_get_by_labels_none_args(self):
     try:
         K8sPod.get_by_labels()
         self.fail("Should not fail.")
     except Exception as err:
         self.assertIsInstance(err, SyntaxError)