[hal, wpilib] Remove power rails that don't exist on systemcore (#7861)

This commit is contained in:
Thad House
2025-03-14 10:16:08 -07:00
committed by GitHub
parent d3cc185382
commit 52b353fe57
44 changed files with 27 additions and 3196 deletions

View File

@@ -21,8 +21,8 @@ class AnalogPotentiometerTest {
AnalogInputSim sim = new AnalogInputSim(ai);
RoboRioSim.resetData();
sim.setVoltage(4.0);
assertEquals(0.8, pot.get());
sim.setVoltage(2.8);
assertEquals(2.8 / 3.3, pot.get());
}
}
@@ -35,11 +35,11 @@ class AnalogPotentiometerTest {
RoboRioSim.resetData();
AnalogInputSim sim = new AnalogInputSim(ai);
sim.setVoltage(5.0);
sim.setVoltage(3.3);
assertEquals(270.0, pot.get());
sim.setVoltage(2.5);
assertEquals(135, pot.get());
assertEquals((2.5 / 3.3) * 270.0, pot.get());
sim.setVoltage(0.0);
assertEquals(0.0, pot.get());
@@ -54,7 +54,7 @@ class AnalogPotentiometerTest {
RoboRioSim.resetData();
AnalogInputSim sim = new AnalogInputSim(1);
sim.setVoltage(5.0);
sim.setVoltage(3.3);
assertEquals(1.0, pot.get());
}
}
@@ -67,7 +67,7 @@ class AnalogPotentiometerTest {
RoboRioSim.resetData();
AnalogInputSim sim = new AnalogInputSim(1);
sim.setVoltage(5.0);
sim.setVoltage(3.3);
assertEquals(180.0, pot.get());
sim.setVoltage(0.0);
@@ -82,14 +82,14 @@ class AnalogPotentiometerTest {
AnalogInputSim sim = new AnalogInputSim(1);
// Test at 5v
sim.setVoltage(5.0);
sim.setVoltage(3.3);
assertEquals(270, pot.get());
sim.setVoltage(0.0);
assertEquals(90, pot.get());
// Simulate a lower battery voltage
RoboRioSim.setUserVoltage5V(2.5);
RoboRioSim.setUserVoltage3V3(2.5);
sim.setVoltage(2.5);
assertEquals(270, pot.get());

View File

@@ -8,59 +8,26 @@ import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertFalse;
import static org.junit.jupiter.api.Assertions.assertTrue;
import edu.wpi.first.hal.HALUtil;
import edu.wpi.first.wpilibj.RobotController;
import edu.wpi.first.wpilibj.RobotController.RadioLEDState;
import edu.wpi.first.wpilibj.simulation.testutils.BooleanCallback;
import edu.wpi.first.wpilibj.simulation.testutils.DoubleCallback;
import edu.wpi.first.wpilibj.simulation.testutils.EnumCallback;
import edu.wpi.first.wpilibj.simulation.testutils.IntCallback;
import org.junit.jupiter.api.Test;
class RoboRioSimTest {
@Test
void testFPGAButton() {
RoboRioSim.resetData();
BooleanCallback callback = new BooleanCallback();
try (CallbackStore cb = RoboRioSim.registerFPGAButtonCallback(callback, false)) {
RoboRioSim.setFPGAButton(true);
assertTrue(RoboRioSim.getFPGAButton());
assertTrue(HALUtil.getFPGAButton());
assertTrue(callback.wasTriggered());
assertTrue(callback.getSetValue());
callback.reset();
RoboRioSim.setFPGAButton(false);
assertFalse(RoboRioSim.getFPGAButton());
assertFalse(HALUtil.getFPGAButton());
assertTrue(callback.wasTriggered());
assertFalse(callback.getSetValue());
}
}
@Test
void testSetVin() {
RoboRioSim.resetData();
DoubleCallback voltageCallback = new DoubleCallback();
DoubleCallback currentCallback = new DoubleCallback();
try (CallbackStore voltageCb = RoboRioSim.registerVInVoltageCallback(voltageCallback, false);
CallbackStore currentCb = RoboRioSim.registerVInCurrentCallback(currentCallback, false)) {
try (CallbackStore voltageCb = RoboRioSim.registerVInVoltageCallback(voltageCallback, false)) {
final double kTestVoltage = 1.91;
final double kTestCurrent = 35.04;
RoboRioSim.setVInVoltage(kTestVoltage);
assertTrue(voltageCallback.wasTriggered());
assertEquals(kTestVoltage, voltageCallback.getSetValue());
assertEquals(kTestVoltage, RoboRioSim.getVInVoltage());
assertEquals(kTestVoltage, RobotController.getInputVoltage());
RoboRioSim.setVInCurrent(kTestCurrent);
assertTrue(currentCallback.wasTriggered());
assertEquals(kTestCurrent, currentCallback.getSetValue());
assertEquals(kTestCurrent, RoboRioSim.getVInCurrent());
assertEquals(kTestCurrent, RobotController.getInputCurrent());
}
}
@@ -81,92 +48,6 @@ class RoboRioSimTest {
}
}
@Test
void test6V() {
RoboRioSim.resetData();
DoubleCallback voltageCallback = new DoubleCallback();
DoubleCallback currentCallback = new DoubleCallback();
BooleanCallback activeCallback = new BooleanCallback();
IntCallback faultCallback = new IntCallback();
try (CallbackStore voltageCb =
RoboRioSim.registerUserVoltage6VCallback(voltageCallback, false);
CallbackStore currentCb = RoboRioSim.registerUserCurrent6VCallback(currentCallback, false);
CallbackStore activeCb = RoboRioSim.registerUserActive6VCallback(activeCallback, false);
CallbackStore faultsCb = RoboRioSim.registerUserFaults6VCallback(faultCallback, false)) {
final double kTestVoltage = 22.9;
final double kTestCurrent = 174;
final int kTestFaults = 229;
RoboRioSim.setUserVoltage6V(kTestVoltage);
assertTrue(voltageCallback.wasTriggered());
assertEquals(kTestVoltage, voltageCallback.getSetValue());
assertEquals(kTestVoltage, RoboRioSim.getUserVoltage6V());
assertEquals(kTestVoltage, RobotController.getVoltage6V());
RoboRioSim.setUserCurrent6V(kTestCurrent);
assertTrue(currentCallback.wasTriggered());
assertEquals(kTestCurrent, currentCallback.getSetValue());
assertEquals(kTestCurrent, RoboRioSim.getUserCurrent6V());
assertEquals(kTestCurrent, RobotController.getCurrent6V());
RoboRioSim.setUserActive6V(false);
assertTrue(activeCallback.wasTriggered());
assertFalse(activeCallback.getSetValue());
assertFalse(RoboRioSim.getUserActive6V());
assertFalse(RobotController.getEnabled6V());
RoboRioSim.setUserFaults6V(kTestFaults);
assertTrue(faultCallback.wasTriggered());
assertEquals(kTestFaults, faultCallback.getSetValue());
assertEquals(kTestFaults, RoboRioSim.getUserFaults6V());
assertEquals(kTestFaults, RobotController.getFaultCount6V());
}
}
@Test
void test5V() {
RoboRioSim.resetData();
DoubleCallback voltageCallback = new DoubleCallback();
DoubleCallback currentCallback = new DoubleCallback();
BooleanCallback activeCallback = new BooleanCallback();
IntCallback faultCallback = new IntCallback();
try (CallbackStore voltageCb =
RoboRioSim.registerUserVoltage5VCallback(voltageCallback, false);
CallbackStore currentCb = RoboRioSim.registerUserCurrent5VCallback(currentCallback, false);
CallbackStore activeCb = RoboRioSim.registerUserActive5VCallback(activeCallback, false);
CallbackStore faultsCb = RoboRioSim.registerUserFaults5VCallback(faultCallback, false)) {
final double kTestVoltage = 22.9;
final double kTestCurrent = 174;
final int kTestFaults = 229;
RoboRioSim.setUserVoltage5V(kTestVoltage);
assertTrue(voltageCallback.wasTriggered());
assertEquals(kTestVoltage, voltageCallback.getSetValue());
assertEquals(kTestVoltage, RoboRioSim.getUserVoltage5V());
assertEquals(kTestVoltage, RobotController.getVoltage5V());
RoboRioSim.setUserCurrent5V(kTestCurrent);
assertTrue(currentCallback.wasTriggered());
assertEquals(kTestCurrent, currentCallback.getSetValue());
assertEquals(kTestCurrent, RoboRioSim.getUserCurrent5V());
assertEquals(kTestCurrent, RobotController.getCurrent5V());
RoboRioSim.setUserActive5V(false);
assertTrue(activeCallback.wasTriggered());
assertFalse(activeCallback.getSetValue());
assertFalse(RoboRioSim.getUserActive5V());
assertFalse(RobotController.getEnabled5V());
RoboRioSim.setUserFaults5V(kTestFaults);
assertTrue(faultCallback.wasTriggered());
assertEquals(kTestFaults, faultCallback.getSetValue());
assertEquals(kTestFaults, RoboRioSim.getUserFaults5V());
assertEquals(kTestFaults, RobotController.getFaultCount5V());
}
}
@Test
void test3V3() {
RoboRioSim.resetData();
@@ -281,26 +162,4 @@ class RoboRioSimTest {
assertEquals(kCommentsTruncated, RoboRioSim.getComments());
assertEquals(kCommentsTruncated, RobotController.getComments());
}
@Test
void testRadioLEDState() {
RoboRioSim.resetData();
EnumCallback callback = new EnumCallback();
try (CallbackStore cb = RoboRioSim.registerRadioLEDStateCallback(callback, false)) {
RobotController.setRadioLEDState(RadioLEDState.kGreen);
assertTrue(callback.wasTriggered());
assertEquals(RadioLEDState.kGreen.value, callback.getSetValue());
assertEquals(RadioLEDState.kGreen, RoboRioSim.getRadioLEDState());
assertEquals(RadioLEDState.kGreen, RobotController.getRadioLEDState());
callback.reset();
RoboRioSim.setRadioLEDState(RadioLEDState.kOrange);
assertTrue(callback.wasTriggered());
assertEquals(RadioLEDState.kOrange.value, callback.getSetValue());
assertEquals(RadioLEDState.kOrange, RoboRioSim.getRadioLEDState());
assertEquals(RadioLEDState.kOrange, RobotController.getRadioLEDState());
}
}
}