70 lines
2.0 KiB
C++
70 lines
2.0 KiB
C++
#include "Lts/Common/LtsTimelineClassic/Event.h"
|
|
#include "Lts/Common/LtsTimelineClassic/TestTimelineModel.h"
|
|
|
|
#include <QtGui/QColor>
|
|
#include <QtCore/QJsonObject>
|
|
#include <QtCore/QStringList>
|
|
#include <gtest/gtest.h>
|
|
|
|
namespace LtsTimelineClassic
|
|
{
|
|
|
|
// Helper to create test Event with minimal parameters
|
|
static Event* createTestEvent()
|
|
{
|
|
return new Event(1, // uniqueId
|
|
1, // typeId
|
|
0, // startTime
|
|
1000, // endTime
|
|
1, // playerId
|
|
1, // partyId
|
|
1, // equipmentId
|
|
QStringList{QStringLiteral("test")}, // path
|
|
Event::drawCustomEventGraphicRect, // paintFunc
|
|
QColor(Qt::red), // paintColor
|
|
QJsonObject()); // detailData
|
|
}
|
|
|
|
class TestTimelineModelTest : public ::testing::Test
|
|
{
|
|
protected:
|
|
void SetUp() override {}
|
|
|
|
void TearDown() override {}
|
|
};
|
|
|
|
TEST(TestTimelineModelTest, ConstructorCreatesValidModel)
|
|
{
|
|
TestTimelineModel model;
|
|
EXPECT_NO_THROW(model.rowCount());
|
|
EXPECT_NO_THROW(model.columnCount());
|
|
}
|
|
|
|
TEST(TestTimelineModelTest, AddTestEventIncreasesRowCount)
|
|
{
|
|
TestTimelineModel model;
|
|
int initialCount = model.rowCount();
|
|
|
|
Event* event = createTestEvent();
|
|
model.addTestEvent(event);
|
|
|
|
EXPECT_EQ(model.rowCount(), initialCount + 1);
|
|
}
|
|
|
|
TEST(TestTimelineModelTest, MultipleEventsCanBeAdded)
|
|
{
|
|
TestTimelineModel model;
|
|
int initialCount = model.rowCount();
|
|
|
|
Event* event1 = createTestEvent();
|
|
Event* event2 = createTestEvent();
|
|
Event* event3 = createTestEvent();
|
|
|
|
model.addTestEvent(event1);
|
|
model.addTestEvent(event2);
|
|
model.addTestEvent(event3);
|
|
|
|
EXPECT_EQ(model.rowCount(), initialCount + 3);
|
|
}
|
|
|
|
} // namespace LtsTimelineClassic
|