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")
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
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()
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()