Example #1
0
    def test_createMongoObjectDefinition(self, client_mock):
        service = KubernetesService()
        client_mock.reset_mock()

        expected_def = V1beta1CustomResourceDefinition(
            api_version="apiextensions.k8s.io/v1beta1",
            kind="CustomResourceDefinition",
            metadata=V1ObjectMeta(name="mongos.operators.ultimaker.com"),
            spec=V1beta1CustomResourceDefinitionSpec(
                group="operators.ultimaker.com",
                version="v1",
                scope="Namespaced",
                names=V1beta1CustomResourceDefinitionNames(plural="mongos",
                                                           singular="mongo",
                                                           kind="Mongo",
                                                           short_names=["mng"
                                                                        ])))

        client_mock.ApiextensionsV1beta1Api.return_value.list_custom_resource_definition.return_value = \
            V1beta1CustomResourceDefinitionList(items=[])
        client_mock.ApiextensionsV1beta1Api.return_value.create_custom_resource_definition.return_value = expected_def

        result = service.createMongoObjectDefinition()

        self.assertEquals(expected_def, result)
        expected_calls = [
            call.ApiextensionsV1beta1Api().list_custom_resource_definition(),
            call.ApiextensionsV1beta1Api().create_custom_resource_definition(
                expected_def),
        ]
        self.assertEqual(expected_calls, client_mock.mock_calls)
Example #2
0
    def test_createMongoObjectDefinition_existing(self, client_mock):
        service = KubernetesService()
        client_mock.reset_mock()

        item = MagicMock()
        item.spec.names.plural = "mongos"
        client_mock.ApiextensionsV1beta1Api.return_value.list_custom_resource_definition.return_value.items = [
            item
        ]

        result = service.createMongoObjectDefinition()

        self.assertEquals(item, result)

        expected_calls = [
            call.ApiextensionsV1beta1Api().list_custom_resource_definition()
        ]
        self.assertEqual(expected_calls, client_mock.mock_calls)