Search in sources :

Example 26 with CategoryEntity

use of io.gravitee.rest.api.model.CategoryEntity in project gravitee-management-rest-api by gravitee-io.

the class CategoryService_FindTest method shouldFindCategory.

@Test
public void shouldFindCategory() throws TechnicalException {
    Category category = mock(Category.class);
    when(category.getId()).thenReturn("category-id");
    when(category.getName()).thenReturn("category-name");
    when(category.getDescription()).thenReturn("category-description");
    when(category.getOrder()).thenReturn(1);
    when(category.isHidden()).thenReturn(true);
    when(category.getUpdatedAt()).thenReturn(new Date(1234567890L));
    when(category.getCreatedAt()).thenReturn(new Date(9876543210L));
    when(mockCategoryRepository.findAllByEnvironment(any())).thenReturn(singleton(category));
    List<CategoryEntity> list = categoryService.findAll();
    assertFalse(list.isEmpty());
    assertEquals("one element", 1, list.size());
    assertEquals("Id", "category-id", list.get(0).getId());
    assertEquals("Name", "category-name", list.get(0).getName());
    assertEquals("Description", "category-description", list.get(0).getDescription());
    assertEquals("Total APIs", 0, list.get(0).getTotalApis());
    assertEquals("Order", 1, list.get(0).getOrder());
    assertEquals("Hidden", true, list.get(0).isHidden());
    assertEquals("UpdatedAt", new Date(1234567890L), list.get(0).getUpdatedAt());
    assertEquals("CreatedAt", new Date(9876543210L), list.get(0).getCreatedAt());
    verify(mockCategoryRepository, times(1)).findAllByEnvironment(any());
}
Also used : Category(io.gravitee.repository.management.model.Category) Date(java.util.Date) CategoryEntity(io.gravitee.rest.api.model.CategoryEntity) Test(org.junit.Test)

Example 27 with CategoryEntity

use of io.gravitee.rest.api.model.CategoryEntity in project gravitee-management-rest-api by gravitee-io.

the class CategoryService_UpdateTest method shouldNotUpdateUnknownCategory_multi_mode.

@Test
public void shouldNotUpdateUnknownCategory_multi_mode() throws TechnicalException {
    UpdateCategoryEntity mockCategory = mock(UpdateCategoryEntity.class);
    when(mockCategory.getId()).thenReturn("unknown");
    when(mockCategoryRepository.findById("unknown")).thenReturn(Optional.empty());
    List<CategoryEntity> list = categoryService.update(singletonList(mockCategory));
    assertTrue(list.isEmpty());
    verify(mockCategoryRepository, times(1)).findById(any());
    verify(mockCategoryRepository, never()).update(any());
    verify(mockAuditService, never()).createEnvironmentAuditLog(any(), eq(CATEGORY_UPDATED), any(), any(), any());
}
Also used : UpdateCategoryEntity(io.gravitee.rest.api.model.UpdateCategoryEntity) CategoryEntity(io.gravitee.rest.api.model.CategoryEntity) UpdateCategoryEntity(io.gravitee.rest.api.model.UpdateCategoryEntity) Test(org.junit.Test)

Example 28 with CategoryEntity

use of io.gravitee.rest.api.model.CategoryEntity in project gravitee-management-rest-api by gravitee-io.

the class CategoryService_UpdateTest method shouldUpdateCategory_multi_mode.

@Test
public void shouldUpdateCategory_multi_mode() throws TechnicalException {
    UpdateCategoryEntity mockCategory = mock(UpdateCategoryEntity.class);
    when(mockCategory.getId()).thenReturn("known");
    when(mockCategory.getName()).thenReturn("Known");
    when(mockCategoryRepository.findById("known")).thenReturn(Optional.of(new Category()));
    Category updatedCategory = mock(Category.class);
    when(updatedCategory.getId()).thenReturn("category-id");
    when(updatedCategory.getName()).thenReturn("category-name");
    when(updatedCategory.getDescription()).thenReturn("category-description");
    when(updatedCategory.getOrder()).thenReturn(1);
    when(updatedCategory.isHidden()).thenReturn(true);
    when(updatedCategory.getUpdatedAt()).thenReturn(new Date(1234567890L));
    when(updatedCategory.getCreatedAt()).thenReturn(new Date(9876543210L));
    when(mockCategoryRepository.update(argThat(cat -> cat.getUpdatedAt() != null))).thenReturn(updatedCategory);
    List<CategoryEntity> list = categoryService.update(singletonList(mockCategory));
    assertFalse(list.isEmpty());
    assertEquals("one element", 1, list.size());
    assertEquals("Id", "category-id", list.get(0).getId());
    assertEquals("Name", "category-name", list.get(0).getName());
    assertEquals("Description", "category-description", list.get(0).getDescription());
    assertEquals("Total APIs", 0, list.get(0).getTotalApis());
    assertEquals("Order", 1, list.get(0).getOrder());
    assertEquals("Hidden", true, list.get(0).isHidden());
    assertEquals("UpdatedAt", new Date(1234567890L), list.get(0).getUpdatedAt());
    assertEquals("CreatedAt", new Date(9876543210L), list.get(0).getCreatedAt());
    verify(mockCategoryRepository, times(1)).findById(any());
    verify(mockCategoryRepository, times(1)).update(any());
    verify(mockAuditService, times(1)).createEnvironmentAuditLog(any(), eq(CATEGORY_UPDATED), any(), any(), any());
}
Also used : ArgumentMatchers.any(org.mockito.ArgumentMatchers.any) InjectMocks(org.mockito.InjectMocks) CategoryEntity(io.gravitee.rest.api.model.CategoryEntity) CategoryServiceImpl(io.gravitee.rest.api.service.impl.CategoryServiceImpl) Date(java.util.Date) Mock(org.mockito.Mock) TechnicalException(io.gravitee.repository.exceptions.TechnicalException) RunWith(org.junit.runner.RunWith) CategoryNotFoundException(io.gravitee.rest.api.service.exceptions.CategoryNotFoundException) AuditService(io.gravitee.rest.api.service.AuditService) Test(org.junit.Test) UpdateCategoryEntity(io.gravitee.rest.api.model.UpdateCategoryEntity) Collections.singletonList(java.util.Collections.singletonList) Mockito(org.mockito.Mockito) Category(io.gravitee.repository.management.model.Category) List(java.util.List) CategoryRepository(io.gravitee.repository.management.api.CategoryRepository) Optional(java.util.Optional) Assert(org.junit.Assert) CATEGORY_UPDATED(io.gravitee.repository.management.model.Category.AuditEvent.CATEGORY_UPDATED) MockitoJUnitRunner(org.mockito.junit.MockitoJUnitRunner) Category(io.gravitee.repository.management.model.Category) UpdateCategoryEntity(io.gravitee.rest.api.model.UpdateCategoryEntity) Date(java.util.Date) CategoryEntity(io.gravitee.rest.api.model.CategoryEntity) UpdateCategoryEntity(io.gravitee.rest.api.model.UpdateCategoryEntity) Test(org.junit.Test)

Example 29 with CategoryEntity

use of io.gravitee.rest.api.model.CategoryEntity in project gravitee-management-rest-api by gravitee-io.

the class PageService_DeleteTest method shouldNotDeletePageBecauseUsedInCategory.

@Test(expected = PageActionException.class)
public void shouldNotDeletePageBecauseUsedInCategory() throws TechnicalException {
    Page page = mock(Page.class);
    when(page.getType()).thenReturn(PageType.MARKDOWN.name());
    when(pageRepository.findById(PAGE_ID)).thenReturn(Optional.of(page));
    CategoryEntity category1 = new CategoryEntity();
    category1.setKey("cat_1");
    CategoryEntity category2 = new CategoryEntity();
    category2.setKey("cat_2");
    doReturn(Arrays.asList(category1, category2)).when(categoryService).findByPage(PAGE_ID);
    pageService.delete(PAGE_ID);
}
Also used : Page(io.gravitee.repository.management.model.Page) CategoryEntity(io.gravitee.rest.api.model.CategoryEntity) Test(org.junit.Test)

Aggregations

CategoryEntity (io.gravitee.rest.api.model.CategoryEntity)29 Test (org.junit.Test)14 UpdateCategoryEntity (io.gravitee.rest.api.model.UpdateCategoryEntity)13 TechnicalException (io.gravitee.repository.exceptions.TechnicalException)12 ApiEntity (io.gravitee.rest.api.model.api.ApiEntity)12 Before (org.junit.Before)11 Assert (org.junit.Assert)9 Mockito (org.mockito.Mockito)9 Category (io.gravitee.repository.management.model.Category)7 NewCategoryEntity (io.gravitee.rest.api.model.NewCategoryEntity)7 java.util (java.util)7 Collectors (java.util.stream.Collectors)7 HttpStatusCode (io.gravitee.common.http.HttpStatusCode)6 ApiLifecycleState (io.gravitee.rest.api.model.api.ApiLifecycleState)6 ApiQuery (io.gravitee.rest.api.model.api.ApiQuery)6 FilteredEntities (io.gravitee.rest.api.model.filtering.FilteredEntities)6 io.gravitee.rest.api.portal.rest.model (io.gravitee.rest.api.portal.rest.model)6 Error (io.gravitee.rest.api.portal.rest.model.Error)6 Entity (javax.ws.rs.client.Entity)6 Response (javax.ws.rs.core.Response)6