- 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>
105 lines
2.4 KiB
C++
105 lines
2.4 KiB
C++
#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
|