/* * Copyright (c) JForum Team. All rights reserved. * * The software in this package is published under the terms of the LGPL * license a copy of which has been included with this distribution in the * license.txt file. * * The JForum Project * http://www.jforum.net */ package net.jforum.controllers; import static org.junit.Assert.*; import static org.mockito.Matchers.*; import static org.mockito.Mockito.*; import java.util.Arrays; import net.jforum.entities.Ranking; import net.jforum.repository.RankingRepository; import net.jforum.services.RankingService; import org.junit.Ignore; import org.junit.Test; import org.junit.runner.RunWith; import org.mockito.InjectMocks; import org.mockito.Mock; import org.mockito.Spy; import org.mockito.runners.MockitoJUnitRunner; import br.com.caelum.vraptor.util.test.MockResult; /** * @author Rafael Steil, Jonatan Cloutier */ @RunWith(MockitoJUnitRunner.class) public class RankingAdminControllerTestCase extends AdminTestCase { @InjectMocks private RankingAdminController controller; @Mock private RankingRepository repository; @Mock private RankingService service; @Mock private RankingAdminController mockController; @Spy private MockResult mockResult; public RankingAdminControllerTestCase() { super(RankingAdminController.class); } @Test @Ignore("is that suposed to test something") public void add() { } @Test public void addSave() { when(mockResult.redirectTo(controller)).thenReturn(mockController); controller.addSave(new Ranking()); verify(service).add(notNull(Ranking.class)); verify(mockController).list(); } @Test public void edit() { Ranking ranking = new Ranking(); when(repository.get(1)).thenReturn(ranking); when(mockResult.forwardTo(controller)).thenReturn(mockController); controller.edit(1); assertEquals(ranking, mockResult.included("ranking")); verify(mockController).add(); } @Test public void editSave() { when(mockResult.redirectTo(controller)).thenReturn(mockController); controller.editSave(new Ranking()); verify(service).update(notNull(Ranking.class)); verify(mockController).list(); } @Test public void delete() { when(mockResult.redirectTo(controller)).thenReturn(mockController); controller.delete(1, 2, 3, 4); verify(service).delete(1, 2, 3, 4); verify(mockController).list(); } @Test public void listExpectOneRecord() { when(repository.getAllRankings()).thenReturn(Arrays.asList(new Ranking())); controller.list(); assertEquals(Arrays.asList(new Ranking()), mockResult.included("rankings")); } }