Files
qt-migration-legatus/qt6-after/qt6-migrated-legatus/tests/test_eventtools.cpp
T
torstenandCopilot 7a6be7474e Qt6 migration: Fix BUILD_RTI=OFF build errors in TrainingAreaBase
- training_area_telegrams.cpp: Fixed QJsonObject initializer syntax (Qt6 requires {{}} not ({}))
- training_area_telegrams.cpp: Fixed fromJson() methods to access m_* members directly
- training_area_telegrams.cpp: Fixed brace mismatches in multiple toJson() methods
- training_area_telegrams.h: Changed Header struct to public members for consistency
- tx_mixin.cpp: Fixed getEquipmentNumber() template for direct member access
- lts_coordinate.cpp: Added missing #include <iomanip>
- MIGRATION_STATUS.md: Added migration progress tracking document

C++17 constraint enforced due to RTI Connext DDS 7.7.0 incompatibility with C++20+

Build status: BUILD_RTI=OFF successful (0 errors, warnings only)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-08-23 20:49:23 +02:00

105 lines
2.6 KiB
C++

#include "Lts/Common/LtsTimelineClassic/Event.h"
#include "Lts/Common/LtsTimelineClassic/EventGraphic.h"
#include "Lts/Common/LtsTimelineClassic/EventTools.h"
#include <QtGui/QPainter>
#include <QtGui/QPixmap>
#include <gtest/gtest.h>
namespace LtsTimelineClassic
{
class EventToolsTest : public ::testing::Test
{
protected:
void SetUp() override {}
void TearDown() override {}
};
TEST(EventToolsTest, FromMsecsToSecondsConvertsCorrectly)
{
qint64 result = EventTools::fromMsecsToSeconds(5000);
EXPECT_EQ(result, 5);
}
TEST(EventToolsTest, FromSecondsToMsecsConvertsCorrectly)
{
qint64 result = EventTools::fromSecondsToMsecs(5);
EXPECT_EQ(result, 5000);
}
TEST(EventToolsTest, SetValuesMakesValidWithPositiveRange)
{
EventTools::setValues(10, 100, 0, 50);
EXPECT_TRUE(EventTools::isValid());
}
TEST(EventToolsTest, GetEventPositionReturnsCorrectPosition)
{
EventTools::setValues(0, 1000, 0, 500);
EventTools::setSection(0, 1000);
int pos = EventTools::getEventPosition(500);
EXPECT_GE(pos, 0);
}
TEST(EventToolsTest, GetEventTimeReturnsCorrectTime)
{
EventTools::setValues(0, 1000, 0, 500);
EventTools::setSection(0, 1000);
qint64 time = EventTools::getEventTime(500);
EXPECT_GE(time, 0);
}
TEST(EventToolsTest, DrawMarkLinesDoesNotCrash)
{
EventTools::setValues(0, 1000, 0, 500);
EventTools::setSection(0, 1000);
Event event1(0, 100, 0, 100, 0, 0, 0, QStringList(), Event::EventPaintFunc(), Qt::red, QJsonObject());
Event event2(500, 100, 500, 600, 0, 0, 0, QStringList(), Event::EventPaintFunc(), Qt::blue, QJsonObject());
EventList eventList;
eventList.append(&event1);
eventList.append(&event2);
QPixmap pixmap(800, 600);
QPainter painter(&pixmap);
EXPECT_NO_THROW(EventTools::drawMarkLines(&painter, eventList, 600));
}
TEST(EventToolsTest, DrawEventsDoesNotCrash)
{
EventTools::setValues(0, 1000, 0, 500);
EventTools::setSection(0, 1000);
Event event1(0, 100, 0, 100, 0, 0, 0, QStringList(), Event::EventPaintFunc(), Qt::red, QJsonObject());
EventGraphic graphic1(&event1);
EventGraphicList graphicList;
graphicList.append(&graphic1);
QPixmap pixmap(800, 600);
QPainter painter(&pixmap);
EXPECT_NO_THROW(EventTools::drawEvents(&painter, graphicList, 0));
}
TEST(EventToolsTest, GetAdjustedMinReturnsZeroWhenInvalid)
{
EventTools::setValues(0, 0, 0, 0);
qint64 min = EventTools::getAdjustedMin();
EXPECT_EQ(min, 0);
}
TEST(EventToolsTest, GetTimelineMinReturnsZeroWhenInvalid)
{
EventTools::setValues(0, 0, 0, 0);
qint64 min = EventTools::getTimelineMin();
EXPECT_EQ(min, 0);
}
} // namespace LtsTimelineClassic