#include "SimCore/Identifier.hpp" #include "SimCore/IdentifierMaker.hpp" #include "SimCore/Messages/GroundThruthTrack.hpp" #include "SimCore/Messages/SensorTrack.hpp" #include "SimCore/Messages/Track.hpp" #include "SimCore/SimCore.hpp" #include "WHISPER/Messages/Message.hpp" #include #include #include #define CATCH_CONFIG_MAIN #include #include #include SCENARIO("Testing the SimCore Track") { GIVEN("different Attributes for a Track in different forms") { std::vector> trackstore; SimCore::Identifier parentID(0,1,false); SimCore::IdentifierMaker IDMaker; auto ID1 = IDMaker.getNewIdentifier(1, SimCore::ObjectSource::INTERNAL); auto ID2 = IDMaker.getNewIdentifier(1, SimCore::ObjectSource::INTERNAL); auto track = std::make_shared(WHISPER::SourceType::SENSOR,*ID1.get()); track->setSpeed(100); trackstore.push_back(track); auto track2 = std::make_shared(WHISPER::SourceType::SENSOR,*ID2,SimCore::TrackKind::OWN_TRACK); track2->setSpeed(50); trackstore.push_back(track2); auto receivedTrack1 = trackstore[0]; auto receivedTrack2 = trackstore[1]; WHEN("constructing Track Object with data") { // auto rev = list.front(); // LOG_S(INFO)<msgType_; // // auto track2 = dynamic_pointer_cast(rev); THEN("check if Track attributes are correct") { REQUIRE(trackstore.size() == 2); REQUIRE(receivedTrack1->getTrackkind() == SimCore::TrackKind::RADAR_TRACK); if (receivedTrack1->getTrackkind() == SimCore::TrackKind::RADAR_TRACK) { auto radarTrackRecv1 = std::dynamic_pointer_cast(receivedTrack1); REQUIRE(radarTrackRecv1->getSpeed() == 100); } REQUIRE(receivedTrack2->getTrackkind() == SimCore::TrackKind::OWN_TRACK); // REQUIRE(track12->getSpeed() == 100); } //THEN } // WHEN } // GIVEN } //SCENARIO