[hal, wpilib] Remove relay (#7695)

This commit is contained in:
Thad House
2025-01-16 23:20:07 -08:00
committed by GitHub
parent d9f8fded09
commit 5017393b3a
54 changed files with 1 additions and 3115 deletions

View File

@@ -1,204 +0,0 @@
// Copyright (c) FIRST and other WPILib contributors.
// Open Source Software; you can modify and/or share it under the terms of
// the WPILib BSD license file in the root directory of this project.
#include "frc/simulation/RelaySim.h" // NOLINT(build/include_order)
#include <gtest/gtest.h>
#include <hal/HAL.h>
#include "callback_helpers/TestCallbackHelpers.h"
#include "frc/Relay.h"
namespace frc::sim {
TEST(RelaySimTest, InitializationBidirectional) {
HAL_Initialize(500, 0);
RelaySim sim(0);
sim.ResetData();
BooleanCallback forwardCallback;
BooleanCallback reverseCallback;
EXPECT_FALSE(sim.GetInitializedForward());
EXPECT_FALSE(sim.GetInitializedReverse());
auto fwdCb = sim.RegisterInitializedForwardCallback(
forwardCallback.GetCallback(), false);
auto revCb = sim.RegisterInitializedReverseCallback(
reverseCallback.GetCallback(), false);
Relay relay{0};
EXPECT_TRUE(sim.GetInitializedForward());
EXPECT_TRUE(sim.GetInitializedReverse());
EXPECT_TRUE(forwardCallback.WasTriggered());
EXPECT_TRUE(forwardCallback.GetLastValue());
EXPECT_TRUE(reverseCallback.WasTriggered());
EXPECT_TRUE(reverseCallback.GetLastValue());
}
TEST(RelaySimTest, InitializationForwardOnly) {
HAL_Initialize(500, 0);
RelaySim sim{0};
sim.ResetData();
BooleanCallback forwardCallback;
BooleanCallback reverseCallback;
EXPECT_FALSE(sim.GetInitializedForward());
EXPECT_FALSE(sim.GetInitializedReverse());
auto fwdCb = sim.RegisterInitializedForwardCallback(
forwardCallback.GetCallback(), false);
auto revCb = sim.RegisterInitializedReverseCallback(
reverseCallback.GetCallback(), false);
Relay relay(0, Relay::kForwardOnly);
EXPECT_TRUE(sim.GetInitializedForward());
EXPECT_FALSE(sim.GetInitializedReverse());
EXPECT_TRUE(forwardCallback.WasTriggered());
EXPECT_TRUE(forwardCallback.GetLastValue());
EXPECT_FALSE(reverseCallback.WasTriggered());
}
TEST(RelaySimTest, InitializationReverseOnly) {
HAL_Initialize(500, 0);
RelaySim sim{0};
sim.ResetData();
BooleanCallback forwardCallback;
BooleanCallback reverseCallback;
EXPECT_FALSE(sim.GetInitializedForward());
EXPECT_FALSE(sim.GetInitializedReverse());
auto fwdCb = sim.RegisterInitializedForwardCallback(
forwardCallback.GetCallback(), false);
auto revCb = sim.RegisterInitializedReverseCallback(
reverseCallback.GetCallback(), false);
Relay relay(0, Relay::kReverseOnly);
EXPECT_FALSE(sim.GetInitializedForward());
EXPECT_TRUE(sim.GetInitializedReverse());
EXPECT_FALSE(forwardCallback.WasTriggered());
EXPECT_TRUE(reverseCallback.WasTriggered());
EXPECT_TRUE(reverseCallback.GetLastValue());
}
TEST(RelaySimTest, BidirectionalSetForward) {
HAL_Initialize(500, 0);
RelaySim sim{0};
BooleanCallback forwardCallback;
BooleanCallback reverseCallback;
Relay relay{0};
auto fwdCb =
sim.RegisterForwardCallback(forwardCallback.GetCallback(), false);
auto revCb =
sim.RegisterReverseCallback(reverseCallback.GetCallback(), false);
relay.Set(Relay::kForward);
EXPECT_EQ(Relay::kForward, relay.Get());
EXPECT_TRUE(sim.GetForward());
EXPECT_FALSE(sim.GetReverse());
EXPECT_TRUE(forwardCallback.WasTriggered());
EXPECT_TRUE(forwardCallback.GetLastValue());
EXPECT_FALSE(reverseCallback.WasTriggered());
}
TEST(RelaySimTest, BidirectionalSetReverse) {
HAL_Initialize(500, 0);
RelaySim sim{0};
BooleanCallback forwardCallback;
BooleanCallback reverseCallback;
Relay relay{0};
auto fwdCb =
sim.RegisterForwardCallback(forwardCallback.GetCallback(), false);
auto revCb =
sim.RegisterReverseCallback(reverseCallback.GetCallback(), false);
relay.Set(Relay::kReverse);
EXPECT_EQ(Relay::kReverse, relay.Get());
EXPECT_FALSE(sim.GetForward());
EXPECT_TRUE(sim.GetReverse());
EXPECT_FALSE(forwardCallback.WasTriggered());
EXPECT_TRUE(reverseCallback.WasTriggered());
EXPECT_TRUE(reverseCallback.GetLastValue());
}
TEST(RelaySimTest, BidirectionalSetOn) {
HAL_Initialize(500, 0);
RelaySim sim{0};
BooleanCallback forwardCallback;
BooleanCallback reverseCallback;
Relay relay{0};
auto fwdCb =
sim.RegisterForwardCallback(forwardCallback.GetCallback(), false);
auto revCb =
sim.RegisterReverseCallback(reverseCallback.GetCallback(), false);
relay.Set(Relay::kOn);
EXPECT_EQ(Relay::kOn, relay.Get());
EXPECT_TRUE(sim.GetForward());
EXPECT_TRUE(sim.GetReverse());
EXPECT_TRUE(forwardCallback.WasTriggered());
EXPECT_TRUE(forwardCallback.GetLastValue());
EXPECT_TRUE(reverseCallback.WasTriggered());
EXPECT_TRUE(reverseCallback.GetLastValue());
}
TEST(RelaySimTest, BidirectionalSetOff) {
HAL_Initialize(500, 0);
RelaySim sim{0};
BooleanCallback forwardCallback;
BooleanCallback reverseCallback;
Relay relay{0};
auto fwdCb =
sim.RegisterForwardCallback(forwardCallback.GetCallback(), false);
auto revCb =
sim.RegisterReverseCallback(reverseCallback.GetCallback(), false);
// Bootstrap into a non-off state to verify the callbacks
relay.Set(Relay::kOn);
forwardCallback.Reset();
reverseCallback.Reset();
relay.Set(Relay::kOff);
EXPECT_EQ(Relay::kOff, relay.Get());
EXPECT_FALSE(sim.GetForward());
EXPECT_FALSE(sim.GetReverse());
EXPECT_TRUE(forwardCallback.WasTriggered());
EXPECT_FALSE(forwardCallback.GetLastValue());
EXPECT_TRUE(reverseCallback.WasTriggered());
EXPECT_FALSE(reverseCallback.GetLastValue());
}
TEST(RelaySimTest, StopMotor) {
Relay relay{0};
RelaySim sim(relay);
// Bootstrap into non-off state
relay.Set(Relay::kOn);
relay.StopMotor();
EXPECT_EQ(Relay::kOff, relay.Get());
}
} // namespace frc::sim

View File

@@ -21,7 +21,6 @@
#include "frc/simulation/EncoderSim.h"
#include "frc/simulation/PWMSim.h"
#include "frc/simulation/PowerDistributionSim.h"
#include "frc/simulation/RelaySim.h"
#include "frc/simulation/RoboRioSim.h"
#include "frc/simulation/SPIAccelerometerSim.h"
@@ -43,7 +42,6 @@ TEST(SimInitializationTest, AllInitialize) {
CTREPCMSim pcmsim{0};
PowerDistributionSim pdpsim{0};
PWMSim pwmsim{0};
RelaySim rsim{0};
RoboRioSim rrsim;
(void)rrsim;
SPIAccelerometerSim sasim{0};