mirror of
https://github.com/Team4388/Robot-Essentials.git
synced 2026-06-09 08:48:02 -06:00
Extract RobotGyros to Prevent Resource Leak
This commit is contained in:
@@ -25,22 +25,21 @@ import frc4388.utility.RobotGyro;
|
|||||||
public class RobotGyroUtilityTest {
|
public class RobotGyroUtilityTest {
|
||||||
// TODO UNTESTED: most functions for NavX
|
// TODO UNTESTED: most functions for NavX
|
||||||
|
|
||||||
|
private RobotGyro gyroPigeon;
|
||||||
|
private RobotGyro gyroNavX;
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testConstructor() {
|
public void testConstructor() {
|
||||||
// Arrange
|
// Arrange
|
||||||
MockPigeonIMU pigeon = new MockPigeonIMU(DriveConstants.DRIVE_PIGEON_ID);
|
MockPigeonIMU pigeon = new MockPigeonIMU(DriveConstants.DRIVE_PIGEON_ID);
|
||||||
AHRS navX = mock(AHRS.class);
|
AHRS navX = mock(AHRS.class);
|
||||||
|
gyroPigeon = new RobotGyro(pigeon);
|
||||||
|
gyroNavX = new RobotGyro(navX);
|
||||||
|
|
||||||
// Act
|
// Assert
|
||||||
RobotGyro gyroPigeon = new RobotGyro(pigeon);
|
|
||||||
RobotGyro gyroNavX = new RobotGyro(navX);
|
|
||||||
|
|
||||||
// Assert 1
|
|
||||||
assertEquals(true, gyroPigeon.m_isGyroAPigeon);
|
assertEquals(true, gyroPigeon.m_isGyroAPigeon);
|
||||||
assertEquals(pigeon, gyroPigeon.getPigeon());
|
assertEquals(pigeon, gyroPigeon.getPigeon());
|
||||||
assertEquals(null, gyroPigeon.getNavX());
|
assertEquals(null, gyroPigeon.getNavX());
|
||||||
|
|
||||||
// Assert 2
|
|
||||||
assertEquals(false, gyroNavX.m_isGyroAPigeon);
|
assertEquals(false, gyroNavX.m_isGyroAPigeon);
|
||||||
assertEquals(navX, gyroNavX.getNavX());
|
assertEquals(navX, gyroNavX.getNavX());
|
||||||
assertEquals(null, gyroNavX.getPigeon());
|
assertEquals(null, gyroNavX.getPigeon());
|
||||||
@@ -50,7 +49,7 @@ public class RobotGyroUtilityTest {
|
|||||||
public void testHeadingPigeon() {
|
public void testHeadingPigeon() {
|
||||||
// Arrange
|
// Arrange
|
||||||
MockPigeonIMU pigeon = new MockPigeonIMU(DriveConstants.DRIVE_PIGEON_ID);
|
MockPigeonIMU pigeon = new MockPigeonIMU(DriveConstants.DRIVE_PIGEON_ID);
|
||||||
RobotGyro gyroPigeon = new RobotGyro(pigeon);
|
gyroPigeon = new RobotGyro(pigeon);
|
||||||
|
|
||||||
// Act & Assert
|
// Act & Assert
|
||||||
assertEquals(-90, gyroPigeon.getHeading(270), 0.0001);
|
assertEquals(-90, gyroPigeon.getHeading(270), 0.0001);
|
||||||
@@ -68,7 +67,7 @@ public class RobotGyroUtilityTest {
|
|||||||
public void testYawPitchRollPigeon() {
|
public void testYawPitchRollPigeon() {
|
||||||
// Arrange
|
// Arrange
|
||||||
MockPigeonIMU pigeon = new MockPigeonIMU(DriveConstants.DRIVE_PIGEON_ID);
|
MockPigeonIMU pigeon = new MockPigeonIMU(DriveConstants.DRIVE_PIGEON_ID);
|
||||||
RobotGyro gyroPigeon = new RobotGyro(pigeon);
|
gyroPigeon = new RobotGyro(pigeon);
|
||||||
|
|
||||||
// Assert
|
// Assert
|
||||||
assertEquals(0, gyroPigeon.getAngle(), 0.0001);
|
assertEquals(0, gyroPigeon.getAngle(), 0.0001);
|
||||||
@@ -140,7 +139,7 @@ public class RobotGyroUtilityTest {
|
|||||||
public void testRatesPigeon() {
|
public void testRatesPigeon() {
|
||||||
// Arrange
|
// Arrange
|
||||||
MockPigeonIMU pigeon = new MockPigeonIMU(DriveConstants.DRIVE_PIGEON_ID);
|
MockPigeonIMU pigeon = new MockPigeonIMU(DriveConstants.DRIVE_PIGEON_ID);
|
||||||
RobotGyro gyroPigeon = new RobotGyro(pigeon);
|
gyroPigeon = new RobotGyro(pigeon);
|
||||||
RobotTime robotTime = RobotTime.getInstance();
|
RobotTime robotTime = RobotTime.getInstance();
|
||||||
gyroPigeon.updatePigeonDeltas();
|
gyroPigeon.updatePigeonDeltas();
|
||||||
|
|
||||||
@@ -184,10 +183,4 @@ public class RobotGyroUtilityTest {
|
|||||||
// Assert
|
// Assert
|
||||||
assertEquals(120000, gyroPigeon.getRate(), 0.001);
|
assertEquals(120000, gyroPigeon.getRate(), 0.001);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void wait(int millis) {
|
|
||||||
try {
|
|
||||||
Thread.sleep(millis);
|
|
||||||
} catch (Exception e) {}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user