Migrate tests to JUnit 5 (#8519)

Signed-off-by: Wouter Born <github@maindrain.net>
This commit is contained in:
Wouter Born
2020-09-21 18:21:26 +02:00
committed by GitHub
parent 6df6783b60
commit bd82ca82df
478 changed files with 3996 additions and 4419 deletions

View File

@@ -13,16 +13,15 @@
package org.openhab.binding.yamahareceiver.internal;
import static org.hamcrest.CoreMatchers.*;
import static org.junit.Assert.assertThat;
import static org.hamcrest.MatcherAssert.assertThat;
import static org.mockito.ArgumentMatchers.*;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.*;
import static org.mockito.MockitoAnnotations.initMocks;
import java.util.List;
import java.util.Optional;
import org.junit.Test;
import org.junit.jupiter.api.Test;
import org.mockito.ArgumentCaptor;
import org.mockito.Mock;
import org.openhab.binding.yamahareceiver.internal.config.YamahaBridgeConfig;
@@ -48,33 +47,18 @@ public class YamahaReceiverHandlerTest extends AbstractXMLProtocolTest {
private YamahaBridgeHandler subject;
@Mock
private YamahaBridgeConfig bridgeConfig;
@Mock
private Configuration configuration;
@Mock
private ProtocolFactory protocolFactory;
@Mock
private DeviceInformation deviceInformation;
@Mock
private SystemControl systemControl;
@Mock
private ThingHandlerCallback callback;
@Mock
private Bridge bridge;
private @Mock YamahaBridgeConfig bridgeConfig;
private @Mock Configuration configuration;
private @Mock ProtocolFactory protocolFactory;
private @Mock DeviceInformation deviceInformation;
private @Mock SystemControl systemControl;
private @Mock ThingHandlerCallback callback;
private @Mock Bridge bridge;
@Override
protected void onSetUp() throws Exception {
super.onSetUp();
initMocks(this);
ctx.prepareForModel(TestModels.RX_S601D);
ctx.respondWith("<Main_Zone><Input><Input_Sel_Item>GetParam</Input_Sel_Item></Input></Main_Zone>",
"Main_Zone_Input_Input_Sel.xml");

View File

@@ -12,14 +12,14 @@
*/
package org.openhab.binding.yamahareceiver.internal.protocol;
import static org.junit.Assert.assertTrue;
import static org.junit.jupiter.api.Assertions.assertTrue;
import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.Mockito.when;
import static org.openhab.binding.yamahareceiver.internal.YamahaReceiverBindingConstants.Zone.Zone_2;
import java.io.IOException;
import org.junit.Test;
import org.junit.jupiter.api.Test;
import org.mockito.Mock;
import org.openhab.binding.yamahareceiver.internal.config.YamahaZoneConfig;
import org.openhab.binding.yamahareceiver.internal.protocol.xml.AbstractXMLProtocolTest;
@@ -37,11 +37,8 @@ import org.openhab.binding.yamahareceiver.internal.state.ZoneControlStateListene
*/
public class XMLProtocolFactoryTest extends AbstractXMLProtocolTest {
@Mock
private YamahaZoneConfig zoneConfig;
@Mock
private ZoneControlStateListener zoneControlStateListener;
private @Mock YamahaZoneConfig zoneConfig;
private @Mock ZoneControlStateListener zoneControlStateListener;
private DeviceInformationState state = new DeviceInformationState();
@@ -70,7 +67,7 @@ public class XMLProtocolFactoryTest extends AbstractXMLProtocolTest {
ZoneControl zoneControl = subject.ZoneControl(con, zoneConfig, zoneControlStateListener, () -> null, state);
// assert
assertTrue("Created ZoneB control", zoneControl instanceof ZoneBControlXML);
assertTrue(zoneControl instanceof ZoneBControlXML, "Created ZoneB control");
}
@Test
@@ -86,6 +83,6 @@ public class XMLProtocolFactoryTest extends AbstractXMLProtocolTest {
ZoneControl zoneControl = subject.ZoneControl(con, zoneConfig, zoneControlStateListener, () -> null, state);
// assert
assertTrue("Created Zone control", zoneControl instanceof ZoneControlXML);
assertTrue(zoneControl instanceof ZoneControlXML, "Created Zone control");
}
}

View File

@@ -12,26 +12,28 @@
*/
package org.openhab.binding.yamahareceiver.internal.protocol.xml;
import static org.mockito.MockitoAnnotations.initMocks;
import org.junit.Before;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.extension.ExtendWith;
import org.mockito.Mock;
import org.mockito.junit.jupiter.MockitoExtension;
import org.mockito.junit.jupiter.MockitoSettings;
import org.mockito.quality.Strictness;
/**
* Baseline for tests for the XML protocol implementation.
*
* @author Tomasz Maruszak - Initial contribution
*/
@ExtendWith(MockitoExtension.class)
@MockitoSettings(strictness = Strictness.WARN)
public abstract class AbstractXMLProtocolTest {
@Mock
protected XMLConnection con;
protected @Mock XMLConnection con;
protected ModelContext ctx;
@Before
@BeforeEach
public void setUp() throws Exception {
initMocks(this);
ctx = new ModelContext(con);
onSetUp();

View File

@@ -28,16 +28,11 @@ import org.openhab.binding.yamahareceiver.internal.state.ZoneControlStateListene
*/
public abstract class AbstractZoneControlXMLTest extends AbstractXMLProtocolTest {
@Mock
protected YamahaZoneConfig zoneConfig;
@Mock
protected ZoneControlStateListener zoneControlStateListener;
protected DeviceInformationState deviceInformationState;
@Mock
protected InputConverter inputConverter;
protected @Mock InputConverter inputConverter;
protected @Mock ZoneControlStateListener zoneControlStateListener;
protected @Mock YamahaZoneConfig zoneConfig;
@Override
protected void onSetUp() throws Exception {

View File

@@ -12,7 +12,7 @@
*/
package org.openhab.binding.yamahareceiver.internal.protocol.xml;
import static org.junit.Assert.*;
import static org.junit.jupiter.api.Assertions.*;
import static org.openhab.binding.yamahareceiver.internal.YamahaReceiverBindingConstants.Feature.*;
import static org.openhab.binding.yamahareceiver.internal.YamahaReceiverBindingConstants.Zone.*;
@@ -21,7 +21,7 @@ import java.util.Arrays;
import java.util.Collection;
import java.util.List;
import org.junit.Test;
import org.junit.jupiter.api.Test;
import org.openhab.binding.yamahareceiver.internal.YamahaReceiverBindingConstants;
/**
@@ -87,15 +87,15 @@ public class DeviceDescriptorXMLTest extends AbstractXMLProtocolTest {
assertCommands(subject.system, systemCommandsSpec);
assertNotNull(subject.features);
assertTrue("Desired features present", subject.features.keySet().containsAll(features));
assertTrue(subject.features.keySet().containsAll(features), "Desired features present");
assertNotNull(subject.zones);
assertEquals("Number of zones match", zones.size(), subject.zones.size());
assertEquals(zones.size(), subject.zones.size(), "Number of zones match");
for (int i = 0; i < zones.size(); i++) {
YamahaReceiverBindingConstants.Zone zone = zones.get(i);
assertTrue("Desired zone is present", subject.zones.containsKey(zone));
assertTrue(subject.zones.containsKey(zone), "Desired zone is present");
DeviceDescriptorXML.ZoneDescriptor zoneDesc = subject.zones.get(zone);
CommandsSpec zoneSpec = zonesCommandsSpec[i];
@@ -104,9 +104,9 @@ public class DeviceDescriptorXMLTest extends AbstractXMLProtocolTest {
}
private void assertCommands(DeviceDescriptorXML.HasCommands descWithCommands, CommandsSpec spec) {
assertNotNull("Descriptor commands are present", descWithCommands);
assertEquals("Expected number of commands", spec.expectedNumber, descWithCommands.commands.size());
assertTrue("Expected commands are present", descWithCommands.commands.containsAll(spec.expected));
assertNotNull(descWithCommands, "Descriptor commands are present");
assertEquals(spec.expectedNumber, descWithCommands.commands.size(), "Expected number of commands");
assertTrue(descWithCommands.commands.containsAll(spec.expected), "Expected commands are present");
}
private static class CommandsSpec {

View File

@@ -12,14 +12,14 @@
*/
package org.openhab.binding.yamahareceiver.internal.protocol.xml;
import static org.junit.Assert.assertTrue;
import static org.junit.jupiter.api.Assertions.assertTrue;
import static org.openhab.binding.yamahareceiver.internal.YamahaReceiverBindingConstants.Feature.*;
import static org.openhab.binding.yamahareceiver.internal.YamahaReceiverBindingConstants.Zone.*;
import java.io.IOException;
import java.util.Arrays;
import org.junit.Test;
import org.junit.jupiter.api.Test;
import org.openhab.binding.yamahareceiver.internal.protocol.ReceivedMessageParseException;
import org.openhab.binding.yamahareceiver.internal.state.DeviceInformationState;
@@ -50,8 +50,8 @@ public class DeviceInformationXMLTest extends AbstractXMLProtocolTest {
subject.update();
// assert
assertTrue("ZONE_B detected", state.features.contains(ZONE_B));
assertTrue("Zone_2 added", state.zones.contains(Zone_2));
assertTrue(state.features.contains(ZONE_B), "ZONE_B detected");
assertTrue(state.zones.contains(Zone_2), "Zone_2 added");
}
@Test
@@ -64,7 +64,7 @@ public class DeviceInformationXMLTest extends AbstractXMLProtocolTest {
subject.update();
// assert
assertTrue("Zones detected", state.zones.containsAll(Arrays.asList(Main_Zone, Zone_2, Zone_3)));
assertTrue("Features detected", state.features.containsAll(Arrays.asList(TUNER, BLUETOOTH)));
assertTrue(state.zones.containsAll(Arrays.asList(Main_Zone, Zone_2, Zone_3)), "Zones detected");
assertTrue(state.features.containsAll(Arrays.asList(TUNER, BLUETOOTH)), "Features detected");
}
}

View File

@@ -12,11 +12,11 @@
*/
package org.openhab.binding.yamahareceiver.internal.protocol.xml;
import static org.junit.Assert.assertEquals;
import static org.junit.jupiter.api.Assertions.*;
import static org.openhab.binding.yamahareceiver.internal.YamahaReceiverBindingConstants.Inputs.*;
import static org.openhab.binding.yamahareceiver.internal.protocol.xml.XMLConstants.Commands.ZONE_INPUT_QUERY;
import org.junit.Test;
import org.junit.jupiter.api.Test;
/**
* Unit test for {@link InputConverterXML}.

View File

@@ -12,16 +12,15 @@
*/
package org.openhab.binding.yamahareceiver.internal.protocol.xml;
import static org.junit.Assert.assertEquals;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
import static org.mockito.Mockito.*;
import static org.openhab.binding.yamahareceiver.internal.TestModels.*;
import static org.openhab.binding.yamahareceiver.internal.YamahaReceiverBindingConstants.Inputs.*;
import java.util.function.Consumer;
import org.junit.Test;
import org.junit.jupiter.api.Test;
import org.mockito.ArgumentCaptor;
import org.mockito.Captor;
import org.mockito.Mock;
@@ -31,21 +30,16 @@ import org.openhab.binding.yamahareceiver.internal.state.PlayInfoStateListener;
/**
* Unit test for {@link InputWithPlayControlXML}.
*
*
* @author Tomasz Maruszak - Initial contribution
*/
public class InputWithPlayControlXMLTest extends AbstractZoneControlXMLTest {
private InputWithPlayControlXML subject;
@Mock
private PlayInfoStateListener playInfoStateListener;
@Captor
private ArgumentCaptor<PlayInfoState> playInfoStateArg;
@Mock
private YamahaBridgeConfig bridgeConfig;
private @Mock PlayInfoStateListener playInfoStateListener;
private @Captor ArgumentCaptor<PlayInfoState> playInfoStateArg;
private @Mock YamahaBridgeConfig bridgeConfig;
private String albumUrl;

View File

@@ -12,7 +12,7 @@
*/
package org.openhab.binding.yamahareceiver.internal.protocol.xml;
import static org.junit.Assert.assertEquals;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.Mockito.verify;
import static org.openhab.binding.yamahareceiver.internal.TestModels.*;
@@ -20,7 +20,7 @@ import static org.openhab.binding.yamahareceiver.internal.YamahaReceiverBindingC
import java.util.function.Consumer;
import org.junit.Test;
import org.junit.jupiter.api.Test;
import org.mockito.ArgumentCaptor;
import org.mockito.Captor;
import org.mockito.Mock;
@@ -36,11 +36,8 @@ public class InputWithPresetControlXMLTest extends AbstractZoneControlXMLTest {
private InputWithPresetControlXML subject;
@Mock
private PresetInfoStateListener presetInfoStateListener;
@Captor
private ArgumentCaptor<PresetInfoState> presetInfoStateArg;
private @Mock PresetInfoStateListener presetInfoStateListener;
private @Captor ArgumentCaptor<PresetInfoState> presetInfoStateArg;
private void given(String model, String input, Consumer<ModelContext> setup) throws Exception {
ctx.prepareForModel(model);

View File

@@ -12,11 +12,11 @@
*/
package org.openhab.binding.yamahareceiver.internal.protocol.xml;
import static org.junit.Assert.*;
import static org.junit.jupiter.api.Assertions.*;
import static org.mockito.ArgumentMatchers.*;
import static org.mockito.Mockito.*;
import org.junit.Test;
import org.junit.jupiter.api.Test;
import org.mockito.ArgumentCaptor;
import org.mockito.Mock;
import org.openhab.binding.yamahareceiver.internal.TestModels;
@@ -35,8 +35,7 @@ public class SystemControlXMLTest extends AbstractXMLProtocolTest {
private DeviceInformationState deviceInformationState;
@Mock
private SystemControlStateListener systemControlStateListener;
private @Mock SystemControlStateListener systemControlStateListener;
protected void setupFor(String model) throws Exception {
ctx.prepareForModel(model);

View File

@@ -12,14 +12,12 @@
*/
package org.openhab.binding.yamahareceiver.internal.protocol.xml;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
import static org.junit.jupiter.api.Assertions.*;
import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
import static org.mockito.Mockito.*;
import static org.openhab.binding.yamahareceiver.internal.TestModels.HTR_4069;
import org.junit.Test;
import org.junit.jupiter.api.Test;
import org.mockito.ArgumentCaptor;
import org.openhab.binding.yamahareceiver.internal.state.ZoneControlState;

View File

@@ -12,14 +12,13 @@
*/
package org.openhab.binding.yamahareceiver.internal.protocol.xml;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
import static org.junit.jupiter.api.Assertions.*;
import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.Mockito.verify;
import static org.openhab.binding.yamahareceiver.internal.TestModels.*;
import static org.openhab.binding.yamahareceiver.internal.YamahaReceiverBindingConstants.Zone.Main_Zone;
import org.junit.Test;
import org.junit.jupiter.api.Test;
import org.mockito.ArgumentCaptor;
import org.openhab.binding.yamahareceiver.internal.state.ZoneControlState;