|
|
@@ -3,6 +3,7 @@ package org.leumasjaffe.recipe.view;
|
|
|
import static org.mockito.Mockito.*;
|
|
|
|
|
|
import java.util.Arrays;
|
|
|
+import java.util.Optional;
|
|
|
|
|
|
import org.junit.jupiter.api.BeforeEach;
|
|
|
import org.junit.jupiter.api.Test;
|
|
|
@@ -11,7 +12,10 @@ import org.junit.platform.runner.JUnitPlatform;
|
|
|
import org.junit.runner.RunWith;
|
|
|
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.mockito.Mock;
|
|
|
import org.mockito.Spy;
|
|
|
@@ -22,13 +26,19 @@ import org.mockito.junit.jupiter.MockitoExtension;
|
|
|
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"));
|
|
|
+
|
|
|
@Mock Phase stuff;
|
|
|
PhasePanel panel;
|
|
|
|
|
|
@BeforeEach
|
|
|
void setUp() {
|
|
|
doReturn(Arrays.asList(stub)).when(stuff).getCooking();
|
|
|
+ doReturn(Optional.of(prep)).when(stuff).getPreparation();
|
|
|
+ doReturn(Optional.of(rest)).when(stuff).getRest();
|
|
|
panel = new PhasePanel(stuff);
|
|
|
|
|
|
listener.setObserved(stuff);
|
|
|
@@ -37,8 +47,23 @@ class PhasePanelTest extends SwingTestCase {
|
|
|
}
|
|
|
|
|
|
@Test
|
|
|
- void testPropogatesSignalFromChildren() {
|
|
|
+ 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();
|
|
|
}
|
|
|
|