def test_service_category_create(mock_send_message_json):

    mock_send_message_json.return_value = CATEGORIES
    sc = ServiceCategory.create(name="Partner Domain Service")
    assert sc.name == "Partner Domain Service"
    assert sc.normalized_name == "partner domain service"
    assert sc.unique_id == "serviceNewCategory.partner domain service"
    assert not sc.version
    assert not sc.owner_id
    assert not sc.empty
    assert not sc.type
    ServiceCategory.create(name="New category")
Beispiel #2
0
    def get_category_for_new_resource(self) -> ServiceCategory:
        """Get category for service not created in SDC yet.

        If no category values are provided default category is going to be used.

        Returns:
            ServiceCategory: Category of the new service

        """
        if not self._category_name:
            return ServiceCategory.get(name="Network Service")
        return ServiceCategory.get(name=self._category_name)
def test_service_category_get(mock_send_message_json):

    mock_send_message_json.return_value = {}
    with pytest.raises(ValueError):
        ServiceCategory.get(name="Partner Domain Service")
    mock_send_message_json.return_value = CATEGORIES
    sc = ServiceCategory.get(name="Partner Domain Service")
    assert sc.name == "Partner Domain Service"
    assert sc.normalized_name == "partner domain service"
    assert sc.unique_id == "serviceNewCategory.partner domain service"
    assert not sc.version
    assert not sc.owner_id
    assert not sc.empty
    assert not sc.type
Beispiel #4
0
def test_service_category_exists(mock_send_message_json):

    sc = ServiceCategory(name="test_name")
    mock_send_message_json.return_value = CATEGORIES
    assert not sc.exists()
    sc = ServiceCategory(name="Partner Domain Service")
    assert sc.exists()
    mock_send_message_json.side_effect = APIError
    assert not sc.exists()
    mock_send_message_json.side_effect = KeyError
    assert not sc.exists()
Beispiel #5
0
    def category(self) -> Union[ResourceCategory, ServiceCategory]:
        """Sdc resource category.

        Depends on the resource type returns ResourceCategory or ServiceCategory.

        Returns:
            Uniton[ResourceCategory, ServiceCategory]: resource category

        """
        if self.created():
            if not any([self._category_name, self._subcategory_name]):
                self.deep_load()
            if all([self._category_name, self._subcategory_name]):
                return ResourceCategory.get(name=self._category_name,
                                            subcategory=self._subcategory_name)
            return ServiceCategory.get(name=self._category_name)
        return self.get_category_for_new_resource()