| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 |
- package org.leumasjaffe.recipe.view;
- import static org.mockito.Mockito.*;
- import java.util.Arrays;
- import org.junit.jupiter.api.BeforeEach;
- import org.junit.jupiter.api.Test;
- import org.junit.jupiter.api.extension.ExtendWith;
- import org.leumasjaffe.mock.MockObserverListener;
- import org.leumasjaffe.observer.ObserverDispatch;
- import org.leumasjaffe.recipe.model.Duration;
- import org.leumasjaffe.recipe.model.Phase;
- import org.leumasjaffe.recipe.model.Preparation;
- import org.leumasjaffe.recipe.model.Rest;
- import org.leumasjaffe.recipe.model.Step;
- import org.leumasjaffe.recipe.viewmodel.ScaleFactor;
- import org.mockito.Mock;
- import org.mockito.Spy;
- import org.mockito.junit.jupiter.MockitoExtension;
- @ExtendWith(MockitoExtension.class)
- class PhasePanelTest extends SwingTestCase {
-
- @Spy MockObserverListener listener;
-
- final Preparation prep = new Preparation();
- final Step stub = new Step();
- final Rest rest = new Rest(Rest.Where.REFRIGERATOR, new Duration("10 s"), Duration.ZERO);
-
- @Mock Phase stuff;
- PhasePanel panel;
- @BeforeEach
- void setUp() {
- doReturn(Arrays.asList(stub)).when(stuff).getCooking();
- doReturn(prep).when(stuff).getPreparation();
- doReturn(rest).when(stuff).getRest();
- panel = new PhasePanel(stuff, new ScaleFactor());
-
- listener.setObserved(stuff);
- // setObserved() calls update
- clearInvocations(listener);
- }
- @Test
- void testPropogatesSignalFromSteps() {
- ObserverDispatch.notifySubscribers(stub);
-
- verify(listener).updateWasSignalled();
- }
- @Test
- void testPropogatesSignalFromPrep() {
- ObserverDispatch.notifySubscribers(prep);
-
- verify(listener).updateWasSignalled();
- }
- @Test
- void testPropogatesSignalFromRest() {
- ObserverDispatch.notifySubscribers(rest);
-
- verify(listener).updateWasSignalled();
- }
- }
|