Add test for LtsTimelineClassic EventTools.cpp

- Add test_eventtools.cpp with 9 tests
- Test time conversion, validation, position/time calculation
- Test draw methods with EXPECT_NO_THROW
- Follow policy naming convention

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This commit is contained in:
torstenandCopilot committed 2026-08-19 15:12:33 +02:00
1 parent 6e06e6793b
commit 4de8d75015
1 file changed
+105
@@ -0,0 +1,105 @@
#include "Lts/Common/LtsTimelineClassic/Event.h"
#include "Lts/Common/LtsTimelineClassic/EventGraphic.h"
#include "Lts/Common/LtsTimelineClassic/EventTools.h"
#include <QPainter>
#include <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, Qt::red);
Event event2(500, 100, Qt::blue);
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, Qt::red);
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