diff --git a/wpilibj/src/test/java/edu/wpi/first/wpilibj/LinearFilterTest.java b/wpilibj/src/test/java/edu/wpi/first/wpilibj/LinearFilterTest.java index b7a53426ac..3953c4cce7 100644 --- a/wpilibj/src/test/java/edu/wpi/first/wpilibj/LinearFilterTest.java +++ b/wpilibj/src/test/java/edu/wpi/first/wpilibj/LinearFilterTest.java @@ -100,16 +100,16 @@ class LinearFilterTest { static Stream outputFilterProvider() { return Stream.of( arguments(LinearFilter.singlePoleIIR(kSinglePoleIIRTimeConstant, kFilterStep), - (DoubleFunction) LinearFilterTest::getData, + (DoubleFunction) LinearFilterTest::getData, kSinglePoleIIRExpectedOutput), arguments(LinearFilter.highPass(kHighPassTimeConstant, kFilterStep), - (DoubleFunction) LinearFilterTest::getData, + (DoubleFunction) LinearFilterTest::getData, kHighPassExpectedOutput), arguments(LinearFilter.movingAverage(kMovAvgTaps), - (DoubleFunction) LinearFilterTest::getData, + (DoubleFunction) LinearFilterTest::getData, kMovAvgExpectedOutput), arguments(LinearFilter.movingAverage(kMovAvgTaps), - (DoubleFunction) LinearFilterTest::getPulseData, + (DoubleFunction) LinearFilterTest::getPulseData, 0.0) ); } diff --git a/wpilibj/src/test/java/edu/wpi/first/wpilibj/RobotControllerTest.java b/wpilibj/src/test/java/edu/wpi/first/wpilibj/RobotControllerTest.java index 576eb8be88..4bce18f613 100644 --- a/wpilibj/src/test/java/edu/wpi/first/wpilibj/RobotControllerTest.java +++ b/wpilibj/src/test/java/edu/wpi/first/wpilibj/RobotControllerTest.java @@ -1,5 +1,5 @@ /*----------------------------------------------------------------------------*/ -/* Copyright (c) 2018 FIRST. All Rights Reserved. */ +/* Copyright (c) 2018-2019 FIRST. All Rights Reserved. */ /* Open Source Software - may be modified and shared by FRC teams. The code */ /* must be accompanied by the FIRST BSD license file in the root directory of */ /* the project. */ @@ -7,7 +7,7 @@ package edu.wpi.first.wpilibj; -class RobotControllerTest extends UtilityClassTest { +class RobotControllerTest extends UtilityClassTest { RobotControllerTest() { super(RobotController.class); } diff --git a/wpilibj/src/test/java/edu/wpi/first/wpilibj/UtilityClassTest.java b/wpilibj/src/test/java/edu/wpi/first/wpilibj/UtilityClassTest.java index 4cfe01f872..a66cd13f1a 100644 --- a/wpilibj/src/test/java/edu/wpi/first/wpilibj/UtilityClassTest.java +++ b/wpilibj/src/test/java/edu/wpi/first/wpilibj/UtilityClassTest.java @@ -24,10 +24,10 @@ import static org.junit.jupiter.api.Assertions.assertTrue; import static org.junit.jupiter.api.DynamicTest.dynamicTest; @SuppressWarnings("PMD.AbstractClassWithoutAbstractMethod") -public abstract class UtilityClassTest { - private final Class m_clazz; +public abstract class UtilityClassTest { + private final Class m_clazz; - protected UtilityClassTest(Class clazz) { + protected UtilityClassTest(Class clazz) { m_clazz = clazz; } @@ -39,14 +39,14 @@ public abstract class UtilityClassTest { @Test public void constructorPrivateTest() { - Constructor constructor = m_clazz.getDeclaredConstructors()[0]; + Constructor constructor = m_clazz.getDeclaredConstructors()[0]; - assertFalse(constructor.isAccessible(), "Constructor is not private"); + assertFalse(constructor.canAccess(null), "Constructor is not private"); } @Test public void constructorReflectionTest() { - Constructor constructor = m_clazz.getDeclaredConstructors()[0]; + Constructor constructor = m_clazz.getDeclaredConstructors()[0]; constructor.setAccessible(true); assertThrows(InvocationTargetException.class, constructor::newInstance); } diff --git a/wpilibj/src/test/java/edu/wpi/first/wpilibj/WatchdogTest.java b/wpilibj/src/test/java/edu/wpi/first/wpilibj/WatchdogTest.java index ee5655d52b..b95644616b 100644 --- a/wpilibj/src/test/java/edu/wpi/first/wpilibj/WatchdogTest.java +++ b/wpilibj/src/test/java/edu/wpi/first/wpilibj/WatchdogTest.java @@ -61,6 +61,8 @@ class WatchdogTest { assertEquals(1, watchdogCounter.get(), "Watchdog either didn't trigger or triggered more than once"); + + watchdog.close(); } @Test @@ -84,6 +86,8 @@ class WatchdogTest { watchdog.disable(); assertEquals(0, watchdogCounter.get(), "Watchdog triggered early"); + + watchdog.close(); } @Test @@ -112,6 +116,8 @@ class WatchdogTest { assertEquals(1, watchdogCounter.get(), "Watchdog either didn't trigger or triggered more than once"); + + watchdog.close(); } @Test @@ -134,6 +140,8 @@ class WatchdogTest { watchdog.reset(); assertFalse(watchdog.isExpired()); + + watchdog.close(); } @Test @@ -179,6 +187,8 @@ class WatchdogTest { watchdog.disable(); assertEquals(0, watchdogCounter.get(), "Watchdog triggered early"); + + watchdog.close(); } @Test @@ -211,5 +221,8 @@ class WatchdogTest { assertEquals(1, watchdogCounter1.get(), "Watchdog either didn't trigger or triggered more than once"); assertEquals(0, watchdogCounter2.get(), "Watchdog triggered early"); + + watchdog1.close(); + watchdog2.close(); } } diff --git a/wpilibj/src/test/java/edu/wpi/first/wpilibj/command/CommandParallelGroupTest.java b/wpilibj/src/test/java/edu/wpi/first/wpilibj/command/CommandParallelGroupTest.java index b3b7ad9739..aa2f14ef23 100644 --- a/wpilibj/src/test/java/edu/wpi/first/wpilibj/command/CommandParallelGroupTest.java +++ b/wpilibj/src/test/java/edu/wpi/first/wpilibj/command/CommandParallelGroupTest.java @@ -1,5 +1,5 @@ /*----------------------------------------------------------------------------*/ -/* Copyright (c) 2008-2018 FIRST. All Rights Reserved. */ +/* Copyright (c) 2008-2019 FIRST. All Rights Reserved. */ /* Open Source Software - may be modified and shared by FRC teams. The code */ /* must be accompanied by the FIRST BSD license file in the root directory of */ /* the project. */ @@ -51,6 +51,7 @@ class CommandParallelGroupTest extends AbstractCommandTest { assertCommandState(command1, 1, 3, 3, 1, 0); assertCommandState(command2, 1, 5, 5, 1, 0); + commandGroup.close(); } } diff --git a/wpilibj/src/test/java/edu/wpi/first/wpilibj/command/CommandSequentialGroupTest.java b/wpilibj/src/test/java/edu/wpi/first/wpilibj/command/CommandSequentialGroupTest.java index 5667b05ef5..fbd20eab51 100644 --- a/wpilibj/src/test/java/edu/wpi/first/wpilibj/command/CommandSequentialGroupTest.java +++ b/wpilibj/src/test/java/edu/wpi/first/wpilibj/command/CommandSequentialGroupTest.java @@ -1,5 +1,5 @@ /*----------------------------------------------------------------------------*/ -/* Copyright (c) 2008-2018 FIRST. All Rights Reserved. */ +/* Copyright (c) 2008-2019 FIRST. All Rights Reserved. */ /* Open Source Software - may be modified and shared by FRC teams. The code */ /* must be accompanied by the FIRST BSD license file in the root directory of */ /* the project. */ @@ -88,6 +88,8 @@ class CommandSequentialGroupTest extends AbstractCommandTest { assertCommandState(command1, 1, 1, 1, 0, 1); assertCommandState(command2, 1, 2, 2, 0, 1); assertCommandState(command3, 1, 3, 3, 1, 0); + + commandGroup.close(); } } diff --git a/wpilibj/src/test/java/edu/wpi/first/wpilibj/livewindow/LiveWindowTest.java b/wpilibj/src/test/java/edu/wpi/first/wpilibj/livewindow/LiveWindowTest.java index da1757c529..dd33945ee3 100644 --- a/wpilibj/src/test/java/edu/wpi/first/wpilibj/livewindow/LiveWindowTest.java +++ b/wpilibj/src/test/java/edu/wpi/first/wpilibj/livewindow/LiveWindowTest.java @@ -1,5 +1,5 @@ /*----------------------------------------------------------------------------*/ -/* Copyright (c) 2018 FIRST. All Rights Reserved. */ +/* Copyright (c) 2018-2019 FIRST. All Rights Reserved. */ /* Open Source Software - may be modified and shared by FRC teams. The code */ /* must be accompanied by the FIRST BSD license file in the root directory of */ /* the project. */ @@ -9,7 +9,7 @@ package edu.wpi.first.wpilibj.livewindow; import edu.wpi.first.wpilibj.UtilityClassTest; -class LiveWindowTest extends UtilityClassTest { +class LiveWindowTest extends UtilityClassTest { LiveWindowTest() { super(LiveWindow.class); } diff --git a/wpilibj/src/test/java/edu/wpi/first/wpilibj/shuffleboard/ShuffleboardTest.java b/wpilibj/src/test/java/edu/wpi/first/wpilibj/shuffleboard/ShuffleboardTest.java index c4285fb099..1469170a33 100644 --- a/wpilibj/src/test/java/edu/wpi/first/wpilibj/shuffleboard/ShuffleboardTest.java +++ b/wpilibj/src/test/java/edu/wpi/first/wpilibj/shuffleboard/ShuffleboardTest.java @@ -1,5 +1,5 @@ /*----------------------------------------------------------------------------*/ -/* Copyright (c) 2018 FIRST. All Rights Reserved. */ +/* Copyright (c) 2018-2019 FIRST. All Rights Reserved. */ /* Open Source Software - may be modified and shared by FRC teams. The code */ /* must be accompanied by the FIRST BSD license file in the root directory of */ /* the project. */ @@ -13,7 +13,7 @@ import edu.wpi.first.wpilibj.UtilityClassTest; import static org.junit.jupiter.api.Assertions.assertSame; -public class ShuffleboardTest extends UtilityClassTest { +public class ShuffleboardTest extends UtilityClassTest { public ShuffleboardTest() { super(Shuffleboard.class); } diff --git a/wpilibj/src/test/java/edu/wpi/first/wpilibj/sim/AnalogInputSimTest.java b/wpilibj/src/test/java/edu/wpi/first/wpilibj/sim/AnalogInputSimTest.java index b739a92104..91210bc708 100644 --- a/wpilibj/src/test/java/edu/wpi/first/wpilibj/sim/AnalogInputSimTest.java +++ b/wpilibj/src/test/java/edu/wpi/first/wpilibj/sim/AnalogInputSimTest.java @@ -1,5 +1,5 @@ /*----------------------------------------------------------------------------*/ -/* Copyright (c) 2018 FIRST. All Rights Reserved. */ +/* Copyright (c) 2018-2019 FIRST. All Rights Reserved. */ /* Open Source Software - may be modified and shared by FRC teams. The code */ /* must be accompanied by the FIRST BSD license file in the root directory of */ /* the project. */ @@ -40,7 +40,7 @@ class AnalogInputSimTest { } - + input.close(); } } diff --git a/wpilibj/src/test/java/edu/wpi/first/wpilibj/sim/AnalogOutputSimTest.java b/wpilibj/src/test/java/edu/wpi/first/wpilibj/sim/AnalogOutputSimTest.java index 258b2538c0..7771425872 100644 --- a/wpilibj/src/test/java/edu/wpi/first/wpilibj/sim/AnalogOutputSimTest.java +++ b/wpilibj/src/test/java/edu/wpi/first/wpilibj/sim/AnalogOutputSimTest.java @@ -1,5 +1,5 @@ /*----------------------------------------------------------------------------*/ -/* Copyright (c) 2018 FIRST. All Rights Reserved. */ +/* Copyright (c) 2018-2019 FIRST. All Rights Reserved. */ /* Open Source Software - may be modified and shared by FRC teams. The code */ /* must be accompanied by the FIRST BSD license file in the root directory of */ /* the project. */ @@ -67,5 +67,7 @@ class AnalogOutputSimTest { } } + + output.close(); } } diff --git a/wpilibj/src/test/java/edu/wpi/first/wpilibj/smartdashboard/SmartDashboardTest.java b/wpilibj/src/test/java/edu/wpi/first/wpilibj/smartdashboard/SmartDashboardTest.java index b702278f2b..cc92ed06ad 100644 --- a/wpilibj/src/test/java/edu/wpi/first/wpilibj/smartdashboard/SmartDashboardTest.java +++ b/wpilibj/src/test/java/edu/wpi/first/wpilibj/smartdashboard/SmartDashboardTest.java @@ -17,7 +17,7 @@ import edu.wpi.first.wpilibj.UtilityClassTest; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertThrows; -class SmartDashboardTest extends UtilityClassTest { +class SmartDashboardTest extends UtilityClassTest { private final NetworkTable m_table = NetworkTableInstance.getDefault().getTable("SmartDashboard"); SmartDashboardTest() { diff --git a/wpilibj/src/test/java/edu/wpi/first/wpilibj/util/ErrorMessagesTest.java b/wpilibj/src/test/java/edu/wpi/first/wpilibj/util/ErrorMessagesTest.java index 17c733375b..839e2e3b6a 100644 --- a/wpilibj/src/test/java/edu/wpi/first/wpilibj/util/ErrorMessagesTest.java +++ b/wpilibj/src/test/java/edu/wpi/first/wpilibj/util/ErrorMessagesTest.java @@ -15,7 +15,7 @@ import static edu.wpi.first.wpilibj.util.ErrorMessages.requireNonNullParam; import static org.junit.jupiter.api.Assertions.assertDoesNotThrow; import static org.junit.jupiter.api.Assertions.assertThrows; -class ErrorMessagesTest extends UtilityClassTest { +class ErrorMessagesTest extends UtilityClassTest { ErrorMessagesTest() { super(ErrorMessages.class); } diff --git a/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/CommandDecoratorTest.java b/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/CommandDecoratorTest.java index cfe0e9f8d0..6a4623115f 100644 --- a/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/CommandDecoratorTest.java +++ b/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/CommandDecoratorTest.java @@ -33,6 +33,8 @@ class CommandDecoratorTest extends CommandTestBase { scheduler.run(); assertFalse(scheduler.isScheduled(timeout)); + + scheduler.close(); } @Test @@ -49,6 +51,8 @@ class CommandDecoratorTest extends CommandTestBase { condition.setCondition(true); scheduler.run(); assertFalse(scheduler.isScheduled(command)); + + scheduler.close(); } @Test @@ -63,6 +67,8 @@ class CommandDecoratorTest extends CommandTestBase { scheduler.schedule(command.beforeStarting(() -> condition.setCondition(true))); assertTrue(condition.getCondition()); + + scheduler.close(); } @Test @@ -81,6 +87,8 @@ class CommandDecoratorTest extends CommandTestBase { scheduler.run(); assertTrue(condition.getCondition()); + + scheduler.close(); } @Test @@ -100,6 +108,8 @@ class CommandDecoratorTest extends CommandTestBase { scheduler.run(); assertTrue(condition.getCondition()); + + scheduler.close(); } @Test @@ -124,6 +134,8 @@ class CommandDecoratorTest extends CommandTestBase { scheduler.run(); assertFalse(scheduler.isScheduled(group)); + + scheduler.close(); } @Test @@ -147,6 +159,8 @@ class CommandDecoratorTest extends CommandTestBase { scheduler.run(); assertFalse(scheduler.isScheduled(group)); + + scheduler.close(); } @Test @@ -162,6 +176,8 @@ class CommandDecoratorTest extends CommandTestBase { scheduler.run(); assertFalse(scheduler.isScheduled(group)); + + scheduler.close(); } @Test @@ -178,5 +194,7 @@ class CommandDecoratorTest extends CommandTestBase { scheduler.run(); assertTrue(scheduler.isScheduled(perpetual)); + + scheduler.close(); } } diff --git a/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/CommandGroupErrorTest.java b/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/CommandGroupErrorTest.java index b40f172754..7db39b64ac 100644 --- a/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/CommandGroupErrorTest.java +++ b/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/CommandGroupErrorTest.java @@ -41,6 +41,8 @@ class CommandGroupErrorTest extends CommandTestBase { assertThrows(IllegalArgumentException.class, () -> scheduler.schedule(command1)); + + scheduler.close(); } @Test diff --git a/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/CommandRequirementsTest.java b/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/CommandRequirementsTest.java index 10d3ee06a7..86eba093be 100644 --- a/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/CommandRequirementsTest.java +++ b/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/CommandRequirementsTest.java @@ -41,6 +41,8 @@ class CommandRequirementsTest extends CommandTestBase { assertFalse(scheduler.isScheduled(interrupted)); assertTrue(scheduler.isScheduled(interrupter)); + + scheduler.close(); } @Test @@ -59,6 +61,8 @@ class CommandRequirementsTest extends CommandTestBase { assertTrue(scheduler.isScheduled(notInterrupted)); assertFalse(scheduler.isScheduled(interrupter)); + + scheduler.close(); } @Test @@ -75,5 +79,7 @@ class CommandRequirementsTest extends CommandTestBase { () -> scheduler.setDefaultCommand(system, missingRequirement)); assertThrows(IllegalArgumentException.class, () -> scheduler.setDefaultCommand(system, ends)); + + scheduler.close(); } } diff --git a/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/CommandScheduleTest.java b/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/CommandScheduleTest.java index aee30db89e..c5178791a7 100644 --- a/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/CommandScheduleTest.java +++ b/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/CommandScheduleTest.java @@ -35,6 +35,8 @@ class CommandScheduleTest extends CommandTestBase { verify(mockCommand).end(false); assertFalse(scheduler.isScheduled(mockCommand)); + + scheduler.close(); } @Test @@ -57,6 +59,8 @@ class CommandScheduleTest extends CommandTestBase { verify(mockCommand).end(false); assertFalse(scheduler.isScheduled(mockCommand)); + + scheduler.close(); } @Test @@ -88,6 +92,8 @@ class CommandScheduleTest extends CommandTestBase { command3Holder.setFinished(true); scheduler.run(); assertFalse(scheduler.isScheduled(command1, command2, command3)); + + scheduler.close(); } @Test @@ -108,6 +114,8 @@ class CommandScheduleTest extends CommandTestBase { verify(mockCommand, never()).end(false); assertFalse(scheduler.isScheduled(mockCommand)); + + scheduler.close(); } @Test @@ -118,5 +126,7 @@ class CommandScheduleTest extends CommandTestBase { Command mockCommand = holder.getMock(); assertDoesNotThrow(() -> scheduler.cancel(mockCommand)); + + scheduler.close(); } } diff --git a/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/ConditionalCommandTest.java b/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/ConditionalCommandTest.java index 0740565b71..73f34c357f 100644 --- a/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/ConditionalCommandTest.java +++ b/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/ConditionalCommandTest.java @@ -36,6 +36,8 @@ class ConditionalCommandTest extends CommandTestBase { verify(command2, never()).initialize(); verify(command2, never()).execute(); verify(command2, never()).end(false); + + scheduler.close(); } @Test @@ -61,5 +63,7 @@ class ConditionalCommandTest extends CommandTestBase { verify(command1).end(true); verify(command2, never()).end(true); + + scheduler.close(); } } diff --git a/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/DefaultCommandTest.java b/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/DefaultCommandTest.java index 033dcc5e43..36ee0a472a 100644 --- a/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/DefaultCommandTest.java +++ b/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/DefaultCommandTest.java @@ -27,6 +27,8 @@ class DefaultCommandTest extends CommandTestBase { scheduler.run(); assertTrue(scheduler.isScheduled(defaultCommand)); + + scheduler.close(); } @Test @@ -52,6 +54,8 @@ class DefaultCommandTest extends CommandTestBase { assertTrue(scheduler.isScheduled(defaultCommand)); assertFalse(scheduler.isScheduled(interrupter)); + + scheduler.close(); } @Test @@ -79,5 +83,7 @@ class DefaultCommandTest extends CommandTestBase { assertTrue(scheduler.isScheduled(defaultCommand)); verify(defaultCommand).end(true); + + scheduler.close(); } } diff --git a/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/FunctionalCommandTest.java b/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/FunctionalCommandTest.java index 23f508a339..8e2edb842a 100644 --- a/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/FunctionalCommandTest.java +++ b/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/FunctionalCommandTest.java @@ -39,5 +39,7 @@ class FunctionalCommandTest extends CommandTestBase { assertTrue(cond1.getCondition()); assertTrue(cond2.getCondition()); assertTrue(cond3.getCondition()); + + scheduler.close(); } } diff --git a/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/InstantCommandTest.java b/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/InstantCommandTest.java index a109ed65c6..daa35725b4 100644 --- a/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/InstantCommandTest.java +++ b/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/InstantCommandTest.java @@ -26,5 +26,7 @@ class InstantCommandTest extends CommandTestBase { assertTrue(cond.getCondition()); assertFalse(scheduler.isScheduled(command)); + + scheduler.close(); } } diff --git a/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/NotifierCommandTest.java b/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/NotifierCommandTest.java index 1bed736f18..84032a1fc0 100644 --- a/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/NotifierCommandTest.java +++ b/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/NotifierCommandTest.java @@ -30,5 +30,7 @@ class NotifierCommandTest extends CommandTestBase { scheduler.cancel(command); assertEquals(.25, 0.01 * counter.m_counter, .025); + + scheduler.close(); } } diff --git a/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/ParallelCommandGroupTest.java b/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/ParallelCommandGroupTest.java index d03b4aa4dd..719fe9de54 100644 --- a/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/ParallelCommandGroupTest.java +++ b/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/ParallelCommandGroupTest.java @@ -45,6 +45,8 @@ class ParallelCommandGroupTest extends CommandTestBase { verify(command2).end(false); assertFalse(scheduler.isScheduled(group)); + + scheduler.close(); } @Test @@ -73,6 +75,8 @@ class ParallelCommandGroupTest extends CommandTestBase { verify(command2).end(true); assertFalse(scheduler.isScheduled(group)); + + scheduler.close(); } @Test @@ -87,6 +91,8 @@ class ParallelCommandGroupTest extends CommandTestBase { Command group = new ParallelCommandGroup(command1, command2); assertDoesNotThrow(() -> scheduler.cancel(group)); + + scheduler.close(); } @Test @@ -112,6 +118,8 @@ class ParallelCommandGroupTest extends CommandTestBase { assertFalse(scheduler.isScheduled(group)); assertTrue(scheduler.isScheduled(command3)); + + scheduler.close(); } @Test diff --git a/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/ParallelDeadlineGroupTest.java b/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/ParallelDeadlineGroupTest.java index c7e3769f51..13a8f14ddd 100644 --- a/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/ParallelDeadlineGroupTest.java +++ b/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/ParallelDeadlineGroupTest.java @@ -55,6 +55,8 @@ class ParallelDeadlineGroupTest extends CommandTestBase { verify(command3, times(2)).execute(); verify(command3, never()).end(false); verify(command3).end(true); + + scheduler.close(); } @Test @@ -84,6 +86,8 @@ class ParallelDeadlineGroupTest extends CommandTestBase { verify(command2, never()).end(true); assertFalse(scheduler.isScheduled(group)); + + scheduler.close(); } @@ -110,6 +114,8 @@ class ParallelDeadlineGroupTest extends CommandTestBase { assertFalse(scheduler.isScheduled(group)); assertTrue(scheduler.isScheduled(command3)); + + scheduler.close(); } @Test diff --git a/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/ParallelRaceGroupTest.java b/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/ParallelRaceGroupTest.java index c9b21e4bad..40c7439c19 100644 --- a/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/ParallelRaceGroupTest.java +++ b/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/ParallelRaceGroupTest.java @@ -46,6 +46,8 @@ class ParallelRaceGroupTest extends CommandTestBase { verify(command2, never()).end(false); assertFalse(scheduler.isScheduled(group)); + + scheduler.close(); } @Test @@ -74,6 +76,8 @@ class ParallelRaceGroupTest extends CommandTestBase { verify(command2).end(true); assertFalse(scheduler.isScheduled(group)); + + scheduler.close(); } @Test @@ -88,6 +92,8 @@ class ParallelRaceGroupTest extends CommandTestBase { Command group = new ParallelRaceGroup(command1, command2); assertDoesNotThrow(() -> scheduler.cancel(group)); + + scheduler.close(); } @@ -114,6 +120,8 @@ class ParallelRaceGroupTest extends CommandTestBase { assertFalse(scheduler.isScheduled(group)); assertTrue(scheduler.isScheduled(command3)); + + scheduler.close(); } @Test diff --git a/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/PerpetualCommandTest.java b/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/PerpetualCommandTest.java index baf037f5cc..9c835478a6 100644 --- a/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/PerpetualCommandTest.java +++ b/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/PerpetualCommandTest.java @@ -22,5 +22,7 @@ class PerpetualCommandTest extends CommandTestBase { scheduler.run(); assertTrue(scheduler.isScheduled(command)); + + scheduler.close(); } } diff --git a/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/PrintCommandTest.java b/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/PrintCommandTest.java index 7484396268..c710d2a151 100644 --- a/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/PrintCommandTest.java +++ b/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/PrintCommandTest.java @@ -33,5 +33,7 @@ class PrintCommandTest extends CommandTestBase { assertEquals(testOut.toString(), "Test!" + System.lineSeparator()); System.setOut(originalOut); + + scheduler.close(); } } diff --git a/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/ProxyScheduleCommandTest.java b/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/ProxyScheduleCommandTest.java index b566aae568..21133b0cdc 100644 --- a/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/ProxyScheduleCommandTest.java +++ b/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/ProxyScheduleCommandTest.java @@ -26,6 +26,8 @@ class ProxyScheduleCommandTest extends CommandTestBase { scheduler.schedule(scheduleCommand); verify(command1).schedule(); + + scheduler.close(); } @Test @@ -47,5 +49,7 @@ class ProxyScheduleCommandTest extends CommandTestBase { scheduler.run(); scheduler.run(); assertFalse(scheduler.isScheduled(scheduleCommand)); + + scheduler.close(); } } diff --git a/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/RobotDisabledCommandTest.java b/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/RobotDisabledCommandTest.java index e862216c5e..428283d130 100644 --- a/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/RobotDisabledCommandTest.java +++ b/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/RobotDisabledCommandTest.java @@ -34,6 +34,8 @@ class RobotDisabledCommandTest extends CommandTestBase { assertFalse(scheduler.isScheduled(mockCommand)); setDSEnabled(true); + + scheduler.close(); } @Test @@ -52,6 +54,8 @@ class RobotDisabledCommandTest extends CommandTestBase { scheduler.run(); assertTrue(scheduler.isScheduled(mockCommand)); + + scheduler.close(); } @Test @@ -79,6 +83,8 @@ class RobotDisabledCommandTest extends CommandTestBase { assertTrue(scheduler.isScheduled(runWhenDisabled)); assertFalse(scheduler.isScheduled(dontRunWhenDisabled)); + + scheduler.close(); } @Test @@ -106,6 +112,8 @@ class RobotDisabledCommandTest extends CommandTestBase { assertTrue(scheduler.isScheduled(runWhenDisabled)); assertFalse(scheduler.isScheduled(dontRunWhenDisabled)); + + scheduler.close(); } @Test @@ -130,6 +138,8 @@ class RobotDisabledCommandTest extends CommandTestBase { assertTrue(scheduler.isScheduled(runWhenDisabled)); assertFalse(scheduler.isScheduled(dontRunWhenDisabled)); + + scheduler.close(); } @Test @@ -154,6 +164,8 @@ class RobotDisabledCommandTest extends CommandTestBase { assertTrue(scheduler.isScheduled(runWhenDisabled)); assertFalse(scheduler.isScheduled(dontRunWhenDisabled)); + + scheduler.close(); } @Test @@ -179,5 +191,7 @@ class RobotDisabledCommandTest extends CommandTestBase { scheduler.schedule(parallel); assertFalse(scheduler.isScheduled(runWhenDisabled)); + + scheduler.close(); } } diff --git a/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/RunCommandTest.java b/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/RunCommandTest.java index 3ff8c3dfdf..41d16b3457 100644 --- a/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/RunCommandTest.java +++ b/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/RunCommandTest.java @@ -26,5 +26,7 @@ class RunCommandTest extends CommandTestBase { scheduler.run(); assertEquals(3, counter.m_counter); + + scheduler.close(); } } diff --git a/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/ScheduleCommandTest.java b/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/ScheduleCommandTest.java index 0a5035233b..c9bec76d90 100644 --- a/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/ScheduleCommandTest.java +++ b/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/ScheduleCommandTest.java @@ -27,5 +27,7 @@ class ScheduleCommandTest extends CommandTestBase { verify(command1).schedule(); verify(command2).schedule(); + + scheduler.close(); } } diff --git a/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/SchedulerTest.java b/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/SchedulerTest.java index 1f110b68ed..9ee91748ba 100644 --- a/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/SchedulerTest.java +++ b/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/SchedulerTest.java @@ -27,6 +27,8 @@ class SchedulerTest extends CommandTestBase { scheduler.run(); assertEquals(counter.m_counter, 3); + + scheduler.close(); } @Test @@ -43,6 +45,8 @@ class SchedulerTest extends CommandTestBase { scheduler.cancel(command); assertEquals(counter.m_counter, 1); + + scheduler.close(); } @Test @@ -53,5 +57,7 @@ class SchedulerTest extends CommandTestBase { scheduler.registerSubsystem(system); assertDoesNotThrow(() -> scheduler.unregisterSubsystem(system)); + + scheduler.close(); } } diff --git a/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/SelectCommandTest.java b/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/SelectCommandTest.java index df52855f46..74cbc099e3 100644 --- a/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/SelectCommandTest.java +++ b/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/SelectCommandTest.java @@ -50,6 +50,8 @@ class SelectCommandTest extends CommandTestBase { verify(command3, never()).initialize(); verify(command3, never()).execute(); verify(command3, never()).end(false); + + scheduler.close(); } @Test @@ -72,6 +74,8 @@ class SelectCommandTest extends CommandTestBase { () -> "four"); assertDoesNotThrow(() -> scheduler.schedule(selectCommand)); + + scheduler.close(); } @@ -104,5 +108,7 @@ class SelectCommandTest extends CommandTestBase { verify(command1).end(true); verify(command2, never()).end(true); verify(command3, never()).end(true); + + scheduler.close(); } } diff --git a/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/SequentialCommandGroupTest.java b/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/SequentialCommandGroupTest.java index 8582140547..680f826d48 100644 --- a/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/SequentialCommandGroupTest.java +++ b/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/SequentialCommandGroupTest.java @@ -50,6 +50,8 @@ class SequentialCommandGroupTest extends CommandTestBase { verify(command2).end(false); assertFalse(scheduler.isScheduled(group)); + + scheduler.close(); } @Test @@ -84,6 +86,8 @@ class SequentialCommandGroupTest extends CommandTestBase { verify(command3, never()).end(false); assertFalse(scheduler.isScheduled(group)); + + scheduler.close(); } @Test @@ -98,6 +102,8 @@ class SequentialCommandGroupTest extends CommandTestBase { Command group = new SequentialCommandGroup(command1, command2); assertDoesNotThrow(() -> scheduler.cancel(group)); + + scheduler.close(); } @@ -124,5 +130,7 @@ class SequentialCommandGroupTest extends CommandTestBase { assertFalse(scheduler.isScheduled(group)); assertTrue(scheduler.isScheduled(command3)); + + scheduler.close(); } } diff --git a/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/StartEndCommandTest.java b/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/StartEndCommandTest.java index 93921e04e2..c8d1dd1117 100644 --- a/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/StartEndCommandTest.java +++ b/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/StartEndCommandTest.java @@ -33,5 +33,7 @@ class StartEndCommandTest extends CommandTestBase { assertFalse(scheduler.isScheduled(command)); assertTrue(cond1.getCondition()); assertTrue(cond2.getCondition()); + + scheduler.close(); } } diff --git a/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/WaitCommandTest.java b/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/WaitCommandTest.java index 5a522af28d..9926557f09 100644 --- a/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/WaitCommandTest.java +++ b/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/WaitCommandTest.java @@ -37,6 +37,8 @@ class WaitCommandTest extends CommandTestBase { scheduler.run(); assertFalse(scheduler.isScheduled(waitCommand)); + + scheduler.close(); } @Test @@ -63,5 +65,7 @@ class WaitCommandTest extends CommandTestBase { verify(command1).end(true); verify(command1, never()).end(false); assertFalse(scheduler.isScheduled(timeout)); + + scheduler.close(); } } diff --git a/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/WaitUntilCommandTest.java b/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/WaitUntilCommandTest.java index a99a18cac5..3df023320c 100644 --- a/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/WaitUntilCommandTest.java +++ b/wpilibj/src/test/java/edu/wpi/first/wpilibj2/command/WaitUntilCommandTest.java @@ -27,5 +27,7 @@ class WaitUntilCommandTest extends CommandTestBase { condition.setCondition(true); scheduler.run(); assertFalse(scheduler.isScheduled(command)); + + scheduler.close(); } } diff --git a/wpilibjIntegrationTests/src/main/java/edu/wpi/first/wpilibj/AnalogCrossConnectTest.java b/wpilibjIntegrationTests/src/main/java/edu/wpi/first/wpilibj/AnalogCrossConnectTest.java index 2e2557a5bd..14b7034a85 100644 --- a/wpilibjIntegrationTests/src/main/java/edu/wpi/first/wpilibj/AnalogCrossConnectTest.java +++ b/wpilibjIntegrationTests/src/main/java/edu/wpi/first/wpilibj/AnalogCrossConnectTest.java @@ -132,6 +132,8 @@ public class AnalogCrossConnectTest extends AbstractInterruptTest { // Then the counter should be at 50 assertEquals("Analog trigger counter did not count 50 ticks", 50, counter.get()); + + counter.close(); } @Test(expected = RuntimeException.class) diff --git a/wpilibjIntegrationTests/src/main/java/edu/wpi/first/wpilibj/MotorEncoderTest.java b/wpilibjIntegrationTests/src/main/java/edu/wpi/first/wpilibj/MotorEncoderTest.java index 48045eee75..2de410fb23 100644 --- a/wpilibjIntegrationTests/src/main/java/edu/wpi/first/wpilibj/MotorEncoderTest.java +++ b/wpilibjIntegrationTests/src/main/java/edu/wpi/first/wpilibj/MotorEncoderTest.java @@ -192,6 +192,7 @@ public class MotorEncoderTest extends AbstractComsSetup { "PID loop did not reach reference within 10 seconds. The current error was" + pidController .getPositionError(), pidController.atSetpoint()); + pidRunner.close(); pidController.close(); } @@ -213,6 +214,7 @@ public class MotorEncoderTest extends AbstractComsSetup { assertTrue("PID loop did not reach reference within 10 seconds. The error was: " + pidController .getPositionError(), pidController.atSetpoint()); + pidRunner.close(); pidController.close(); } diff --git a/wpilibjIntegrationTests/src/main/java/edu/wpi/first/wpilibj/PDPTest.java b/wpilibjIntegrationTests/src/main/java/edu/wpi/first/wpilibj/PDPTest.java index 54ab1ca3ee..580c866b41 100644 --- a/wpilibjIntegrationTests/src/main/java/edu/wpi/first/wpilibj/PDPTest.java +++ b/wpilibjIntegrationTests/src/main/java/edu/wpi/first/wpilibj/PDPTest.java @@ -70,7 +70,7 @@ public class PDPTest extends AbstractComsSetup { public static Collection generateData() { // logger.fine("Loading the MotorList"); return Arrays.asList(new Object[][]{ - {TestBench.getInstance().getTalonPair(), new Double(0.0)}}); + {TestBench.getInstance().getTalonPair(), 0.0}}); } @After diff --git a/wpilibjIntegrationTests/src/main/java/edu/wpi/first/wpilibj/PIDTest.java b/wpilibjIntegrationTests/src/main/java/edu/wpi/first/wpilibj/PIDTest.java index 24eda490f2..8814e35ac3 100644 --- a/wpilibjIntegrationTests/src/main/java/edu/wpi/first/wpilibj/PIDTest.java +++ b/wpilibjIntegrationTests/src/main/java/edu/wpi/first/wpilibj/PIDTest.java @@ -48,7 +48,7 @@ public class PIDTest extends AbstractComsSetup { private static final double outputRange = 0.25; private PIDController m_controller = null; - private static MotorEncoderFixture me = null; + private static MotorEncoderFixture me = null; @SuppressWarnings({"MemberName", "EmptyLineSeparator", "MultipleVariableDeclarations"}) private final Double k_p, k_i, k_d; @@ -60,7 +60,7 @@ public class PIDTest extends AbstractComsSetup { @SuppressWarnings({"ParameterName", "JavadocMethod"}) - public PIDTest(Double p, Double i, Double d, MotorEncoderFixture mef) { + public PIDTest(Double p, Double i, Double d, MotorEncoderFixture mef) { logger.fine("Constructor with: " + mef.getType()); if (PIDTest.me != null && !PIDTest.me.equals(mef)) { PIDTest.me.teardown(); @@ -166,6 +166,8 @@ public class PIDTest extends AbstractComsSetup { pidRunner.stop(); assertTrue(pidData() + "Was not on Target. Controller Error: " + m_controller.getPositionError(), m_controller.atSetpoint()); + + pidRunner.close(); } private String pidData() { diff --git a/wpilibjIntegrationTests/src/main/java/edu/wpi/first/wpilibj/test/AbstractTestSuite.java b/wpilibjIntegrationTests/src/main/java/edu/wpi/first/wpilibj/test/AbstractTestSuite.java index 29c115c30a..e4b2035d16 100644 --- a/wpilibjIntegrationTests/src/main/java/edu/wpi/first/wpilibj/test/AbstractTestSuite.java +++ b/wpilibjIntegrationTests/src/main/java/edu/wpi/first/wpilibj/test/AbstractTestSuite.java @@ -7,6 +7,7 @@ package edu.wpi.first.wpilibj.test; +import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; import java.util.ArrayList; import java.util.List; @@ -107,11 +108,12 @@ public abstract class AbstractTestSuite { if (areAnySuperClassesOfTypeAbstractTestSuite(c)) { // Create a new instance of this class so that we can retrieve its data try { - AbstractTestSuite suite = (AbstractTestSuite) c.newInstance(); + AbstractTestSuite suite = (AbstractTestSuite) c.getDeclaredConstructor().newInstance(); // Add the tests from this suite that match the regex to the list of // tests to run runningList = suite.getAllContainedBaseTests(runningList); - } catch (InstantiationException | IllegalAccessException ex) { + } catch (NoSuchMethodException | InvocationTargetException | InstantiationException + | IllegalAccessException ex) { // This shouldn't happen unless the constructor is changed in some // way. logger.log(Level.SEVERE, "Test suites can not take paramaters in their constructors.", @@ -200,13 +202,14 @@ public abstract class AbstractTestSuite { if (areAnySuperClassesOfTypeAbstractTestSuite(c)) { // Create a new instance of this class so that we can retrieve its // data. - suite = (AbstractTestSuite) c.newInstance(); + suite = (AbstractTestSuite) c.getDeclaredConstructor().newInstance(); // Add the tests from this suite that match the regex to the list of // tests to run runningList = suite.getSuiteOrTestMatchingRegex(regex, runningList); } - } catch (InstantiationException | IllegalAccessException ex) { + } catch (NoSuchMethodException | InvocationTargetException | InstantiationException + | IllegalAccessException ex) { // This shouldn't happen unless the constructor is changed in some // way. logger.log(Level.SEVERE, "Test suites can not take paramaters in their constructors.", diff --git a/wpilibjIntegrationTests/src/main/java/edu/wpi/first/wpilibj/test/TestBench.java b/wpilibjIntegrationTests/src/main/java/edu/wpi/first/wpilibj/test/TestBench.java index b8d6a6fc3b..afd152fffa 100644 --- a/wpilibjIntegrationTests/src/main/java/edu/wpi/first/wpilibj/test/TestBench.java +++ b/wpilibjIntegrationTests/src/main/java/edu/wpi/first/wpilibj/test/TestBench.java @@ -208,14 +208,14 @@ public final class TestBench { List> pairs = new ArrayList>(); List setA = Arrays.asList(new Integer[][]{ - {new Integer(DIOCrossConnectA1), new Integer(DIOCrossConnectA2)}, - {new Integer(DIOCrossConnectA2), new Integer(DIOCrossConnectA1)}}); + {DIOCrossConnectA1, DIOCrossConnectA2}, + {DIOCrossConnectA2, DIOCrossConnectA1}}); pairs.add(setA); List setB = Arrays.asList(new Integer[][]{ - {new Integer(DIOCrossConnectB1), new Integer(DIOCrossConnectB2)}, - {new Integer(DIOCrossConnectB2), new Integer(DIOCrossConnectB1)}}); + {DIOCrossConnectB1, DIOCrossConnectB2}, + {DIOCrossConnectB2, DIOCrossConnectB1}}); pairs.add(setB); // NOTE: IF MORE DIOCROSSCONNECT PAIRS ARE ADDED ADD THEM HERE return pairs;