#include <gmock/gmock.h>
#include <gtest/gtest.h>
-using ::testing::AtLeast;
+#include <QSignalSpy>
+#include "../stlhelpers4qt.h"
+using ::testing::AtLeast;
TEST(PainterTest, TestTurtlePenDownCalledAtLeastOnceWhenDrawCircleCalled)
{
EXPECT_TRUE(painter.DrawCircle(0, 0, 10));
}
+TEST(PainterTest, TestSignalEmittedWhenDrawCircleCalled)
+{
+ MockTurtle turtle;
+
+ Painter painter(&turtle);
+
+ QSignalSpy spy(&painter, SIGNAL(DrawCircleCalled(int,int,int)));
+
+ painter.DrawCircle(0, 0, 10);
+ ASSERT_EQ(1, spy.count());
+ QList<QVariant> expected = QList<QVariant>() << 0 << 0 << 10;
+ ASSERT_EQ(expected, spy.at(0));
+}
+
int main(int argc, char *argv[])
{
::testing::InitGoogleMock(&argc, argv);