#include "SimCore/EffectorData.hpp" #include "SimCore/Identifier.hpp" #include "SimCore/SimCore.hpp" #include "WHISPER/Messages/Message.hpp" #define CATCH_CONFIG_MAIN #include #include #include SCENARIO("Testing the SimCore Sensor") { GIVEN("different Attributes for a Track in different forms") { SimCore::Identifier OwnID; SimCore::SystemStateUpdate update(OwnID); SimCore::Identifier Idsensor1; std::string NameSensor1 = "TRS3D"; SimCore::SensorData sensor1(Idsensor1,NameSensor1); sensor1.SensorKind.setValue(SimCore::SensorKinds::RADAR); sensor1.Range.setValue(120000); sensor1.Status.setValue(SimCore::Status::ACTIVE); update.addSensorData(sensor1); SimCore::Identifier Idsensor2; std::string NameSensor2 = "Smart-S"; SimCore::SensorData sensor2(Idsensor2,NameSensor2); sensor1.SensorKind.setValue(SimCore::SensorKinds::RADAR); sensor1.Range.setValue(90000); sensor1.Status.setValue(SimCore::Status::OFF); update.addSensorData(sensor1); SimCore::Identifier Ideffector1; std::string NameEffector1 = "MLG"; SimCore::EffectorData effector1(Ideffector1,NameEffector1); update.addEffectorData(effector1); auto msg = update.buildMessage().serialize(); auto resMess = WHISPER::Message(msg); auto resUpdate = SimCore::SystemStateUpdate::unpack(resMess); WHEN("constructing Track Object with data") { THEN("check if Track attributes are correct") { REQUIRE(resMess.msgType_ == WHISPER::MsgType::SYSTEMSTATE_UPDATE); REQUIRE(resUpdate->getOwnID() == OwnID); REQUIRE(resUpdate->getSensorData().size() == 2); REQUIRE(resUpdate->getEffectorData().size() == 1); REQUIRE(resUpdate->getEffectorData()[0].EffectorID == effector1.EffectorID); REQUIRE(resUpdate->getEffectorData()[0].Name.getValue() == NameEffector1); } //THEN } // WHEN } // GIVEN } //SCENARIO