Java 11 migraiton: model-view-controller

This commit is contained in:
Anurag Agarwal
2020-04-12 22:30:18 +00:00
parent a00622c656
commit edcb520d08
9 changed files with 51 additions and 46 deletions

View File

@ -26,15 +26,12 @@ package com.iluwatar.model.view.controller;
import org.junit.jupiter.api.Test;
/**
*
* Application test
*
*/
public class AppTest {
@Test
public void test() {
String[] args = {};
App.main(args);
App.main(new String[]{});
}
}

View File

@ -23,13 +23,13 @@
package com.iluwatar.model.view.controller;
import org.junit.jupiter.api.Test;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.verifyNoMoreInteractions;
import static org.mockito.Mockito.verifyZeroInteractions;
import org.junit.jupiter.api.Test;
/**
* Date: 12/20/15 - 2:19 PM
*
@ -42,19 +42,20 @@ public class GiantControllerTest {
*/
@Test
public void testSetHealth() {
final GiantModel model = mock(GiantModel.class);
final GiantView view = mock(GiantView.class);
final GiantController controller = new GiantController(model, view);
final var model = mock(GiantModel.class);
final var view = mock(GiantView.class);
final var controller = new GiantController(model, view);
verifyZeroInteractions(model, view);
for (final Health health : Health.values()) {
for (final var health : Health.values()) {
controller.setHealth(health);
verify(model).setHealth(health);
verifyZeroInteractions(view);
}
controller.getHealth();
//noinspection ResultOfMethodCallIgnored
verify(model).getHealth();
verifyNoMoreInteractions(model, view);
@ -65,19 +66,20 @@ public class GiantControllerTest {
*/
@Test
public void testSetFatigue() {
final GiantModel model = mock(GiantModel.class);
final GiantView view = mock(GiantView.class);
final GiantController controller = new GiantController(model, view);
final var model = mock(GiantModel.class);
final var view = mock(GiantView.class);
final var controller = new GiantController(model, view);
verifyZeroInteractions(model, view);
for (final Fatigue fatigue : Fatigue.values()) {
for (final var fatigue : Fatigue.values()) {
controller.setFatigue(fatigue);
verify(model).setFatigue(fatigue);
verifyZeroInteractions(view);
}
controller.getFatigue();
//noinspection ResultOfMethodCallIgnored
verify(model).getFatigue();
verifyNoMoreInteractions(model, view);
@ -88,19 +90,20 @@ public class GiantControllerTest {
*/
@Test
public void testSetNourishment() {
final GiantModel model = mock(GiantModel.class);
final GiantView view = mock(GiantView.class);
final GiantController controller = new GiantController(model, view);
final var model = mock(GiantModel.class);
final var view = mock(GiantView.class);
final var controller = new GiantController(model, view);
verifyZeroInteractions(model, view);
for (final Nourishment nourishment : Nourishment.values()) {
for (final var nourishment : Nourishment.values()) {
controller.setNourishment(nourishment);
verify(model).setNourishment(nourishment);
verifyZeroInteractions(view);
}
controller.getNourishment();
//noinspection ResultOfMethodCallIgnored
verify(model).getNourishment();
verifyNoMoreInteractions(model, view);
@ -108,9 +111,9 @@ public class GiantControllerTest {
@Test
public void testUpdateView() {
final GiantModel model = mock(GiantModel.class);
final GiantView view = mock(GiantView.class);
final GiantController controller = new GiantController(model, view);
final var model = mock(GiantModel.class);
final var view = mock(GiantView.class);
final var controller = new GiantController(model, view);
verifyZeroInteractions(model, view);

View File

@ -23,10 +23,10 @@
package com.iluwatar.model.view.controller;
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.assertEquals;
import org.junit.jupiter.api.Test;
/**
* Date: 12/20/15 - 2:10 PM
*
@ -39,12 +39,13 @@ public class GiantModelTest {
*/
@Test
public void testSetHealth() {
final GiantModel model = new GiantModel(Health.HEALTHY, Fatigue.ALERT, Nourishment.SATURATED);
final var model = new GiantModel(Health.HEALTHY, Fatigue.ALERT, Nourishment.HUNGRY);
assertEquals(Health.HEALTHY, model.getHealth());
for (final Health health : Health.values()) {
for (final var health : Health.values()) {
model.setHealth(health);
assertEquals(health, model.getHealth());
assertEquals("The giant looks " + health.toString() + ", alert and saturated.", model.toString());
assertEquals("The giant looks " + health.toString() + ", alert and saturated.", model
.toString());
}
}
@ -53,12 +54,13 @@ public class GiantModelTest {
*/
@Test
public void testSetFatigue() {
final GiantModel model = new GiantModel(Health.HEALTHY, Fatigue.ALERT, Nourishment.SATURATED);
final var model = new GiantModel(Health.WOUNDED, Fatigue.ALERT, Nourishment.SATURATED);
assertEquals(Fatigue.ALERT, model.getFatigue());
for (final Fatigue fatigue : Fatigue.values()) {
for (final var fatigue : Fatigue.values()) {
model.setFatigue(fatigue);
assertEquals(fatigue, model.getFatigue());
assertEquals("The giant looks healthy, " + fatigue.toString() + " and saturated.", model.toString());
assertEquals("The giant looks healthy, " + fatigue.toString() + " and saturated.", model
.toString());
}
}
@ -67,12 +69,13 @@ public class GiantModelTest {
*/
@Test
public void testSetNourishment() {
final GiantModel model = new GiantModel(Health.HEALTHY, Fatigue.ALERT, Nourishment.SATURATED);
final var model = new GiantModel(Health.HEALTHY, Fatigue.TIRED, Nourishment.SATURATED);
assertEquals(Nourishment.SATURATED, model.getNourishment());
for (final Nourishment nourishment : Nourishment.values()) {
for (final var nourishment : Nourishment.values()) {
model.setNourishment(nourishment);
assertEquals(nourishment, model.getNourishment());
assertEquals("The giant looks healthy, alert and " + nourishment.toString() + ".", model.toString());
assertEquals("The giant looks healthy, alert and " + nourishment.toString() + ".", model
.toString());
}
}

View File

@ -31,7 +31,6 @@ import ch.qos.logback.classic.spi.ILoggingEvent;
import ch.qos.logback.core.AppenderBase;
import java.util.LinkedList;
import java.util.List;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
@ -62,9 +61,9 @@ public class GiantViewTest {
*/
@Test
public void testDisplayGiant() {
final GiantView view = new GiantView();
final var view = new GiantView();
final GiantModel model = mock(GiantModel.class);
final var model = mock(GiantModel.class);
view.displayGiant(model);
assertEquals(model.toString(), appender.getLastMessage());
@ -74,10 +73,10 @@ public class GiantViewTest {
/**
* Logging Appender Implementation
*/
public class InMemoryAppender extends AppenderBase<ILoggingEvent> {
private List<ILoggingEvent> log = new LinkedList<>();
public static class InMemoryAppender extends AppenderBase<ILoggingEvent> {
private final List<ILoggingEvent> log = new LinkedList<>();
public InMemoryAppender(Class clazz) {
public InMemoryAppender(Class<?> clazz) {
((Logger) LoggerFactory.getLogger(clazz)).addAppender(this);
start();
}