From a84378675980f0e4e7dc81d3aa32ef287b623812 Mon Sep 17 00:00:00 2001 From: omenem Date: Wed, 27 May 2020 16:21:30 +0200 Subject: [PATCH] wip --- .../InputDeviceConnectionController.java | 2 +- .../InputDeviceConnectionControllerTests.java | 19 ++++++++++++++++++- 2 files changed, 19 insertions(+), 2 deletions(-) diff --git a/src/main/java/ch/usi/inf/sa4/sanmarinoes/smarthut/controller/InputDeviceConnectionController.java b/src/main/java/ch/usi/inf/sa4/sanmarinoes/smarthut/controller/InputDeviceConnectionController.java index 4d3bdcc..90558a9 100644 --- a/src/main/java/ch/usi/inf/sa4/sanmarinoes/smarthut/controller/InputDeviceConnectionController.java +++ b/src/main/java/ch/usi/inf/sa4/sanmarinoes/smarthut/controller/InputDeviceConnectionController.java @@ -28,7 +28,7 @@ import org.springframework.web.bind.annotation.RequestBody; public abstract class InputDeviceConnectionController< I extends InputDevice & Connectable, O extends OutputDevice> { - private class Connection { + protected class Connection { private final I input; private final List outputs; diff --git a/src/test/java/ch/usi/inf/sa4/sanmarinoes/smarthut/controller/InputDeviceConnectionControllerTests.java b/src/test/java/ch/usi/inf/sa4/sanmarinoes/smarthut/controller/InputDeviceConnectionControllerTests.java index 1f24754..7ac3e91 100644 --- a/src/test/java/ch/usi/inf/sa4/sanmarinoes/smarthut/controller/InputDeviceConnectionControllerTests.java +++ b/src/test/java/ch/usi/inf/sa4/sanmarinoes/smarthut/controller/InputDeviceConnectionControllerTests.java @@ -1,5 +1,7 @@ package ch.usi.inf.sa4.sanmarinoes.smarthut.controller; +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.mockito.ArgumentMatchers.anyIterable; import static org.mockito.ArgumentMatchers.anyLong; import static org.mockito.ArgumentMatchers.anyString; import static org.mockito.Mockito.when; @@ -10,9 +12,12 @@ import ch.usi.inf.sa4.sanmarinoes.smarthut.models.Dimmable; import ch.usi.inf.sa4.sanmarinoes.smarthut.models.DimmableLight; import ch.usi.inf.sa4.sanmarinoes.smarthut.models.KnobDimmer; import ch.usi.inf.sa4.sanmarinoes.smarthut.models.KnobDimmerRepository; +import ch.usi.inf.sa4.sanmarinoes.smarthut.models.OutputDevice; import ch.usi.inf.sa4.sanmarinoes.smarthut.service.DeviceService; +import java.security.Principal; import java.util.ArrayList; import java.util.List; +import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.ExtendWith; import org.mockito.InjectMocks; @@ -34,6 +39,13 @@ public class InputDeviceConnectionControllerTests { @Mock DeviceRepository outputRepository; + @Mock private Principal mockPrincipal; + + @BeforeEach + public void setup() { + when(mockPrincipal.getName()).thenReturn("user"); + } + @Test public void testConnection() throws NotFoundException { KnobDimmer knobDimmer = new KnobDimmer(); @@ -46,9 +58,14 @@ public class InputDeviceConnectionControllerTests { when(outputRepository.findByIdAndUsername(anyLong(), anyString())) .thenReturn(java.util.Optional.of(dimmableLight)); + when(deviceService.saveAllAsOwner(anyIterable(), anyString())) + .thenReturn(List.of(new DimmableLight())); + List l = new ArrayList<>(); l.add(10L); - Connection toTest = knobDimmerController.addOutput(5L, l, "user"); + List toCheck = knobDimmerController.addLight(1L, l, mockPrincipal); + + assertEquals(l.get(0), toCheck.get(0)); } }