~unity-team/libusermetrics/trunk

« back to all changes in this revision

Viewing changes to tests/unit/libusermetricsoutput/TestSyncedUserMetricsStore.cpp

  • Committer: Bileto Bot
  • Author(s): Pete Woods
  • Date: 2016-12-08 10:50:56 UTC
  • mfrom: (233.1.7 trunk)
  • Revision ID: ci-train-bot@canonical.com-20161208105056-teqkoq2t6ktx9d2e
Compatibility with unversioned cmake-extras modules

Show diffs side-by-side

added added

removed removed

Lines of Context:
38
38
using namespace UserMetricsOutput;
39
39
using namespace UserMetricsTestUtils;
40
40
 
 
41
#define WAIT_FOR_STRINGS_TO_CHANGE() {\
 
42
if (dataSource->formatString().isEmpty()) { \
 
43
        QSignalSpy formatStringChangedSpy(dataSource.data(), SIGNAL(formatStringChanged(const QString &))); \
 
44
        ASSERT_TRUE(formatStringChangedSpy.wait()); \
 
45
} \
 
46
if (dataSource->emptyDataString().isEmpty()) { \
 
47
        QSignalSpy emptyDataStringChangedSpy(dataSource.data(), SIGNAL(emptyDataStringChanged(const QString &))); \
 
48
        ASSERT_TRUE(emptyDataStringChangedSpy.wait()); \
 
49
} \
 
50
if (dataSource->textDomain().isEmpty()) { \
 
51
        QSignalSpy textDomainChangedSpy(dataSource.data(), SIGNAL(textDomainChanged(const QString &))); \
 
52
        ASSERT_TRUE(textDomainChangedSpy.wait()); \
 
53
} \
 
54
}
 
55
 
41
56
namespace {
42
57
 
43
58
class TestSyncedUserMetricsStore: public DBusTest {
73
88
        {
74
89
                DataSourcePtr dataSource(store.dataSource(DBusPaths::dataSource(1)));
75
90
                ASSERT_FALSE(dataSource.isNull());
76
 
                QSignalSpy emptyDataStringChangedSpy(dataSource.data(),
77
 
                                SIGNAL(emptyDataStringChanged(const QString &)));
78
 
                ASSERT_TRUE(emptyDataStringChangedSpy.wait());
 
91
                WAIT_FOR_STRINGS_TO_CHANGE();
79
92
                EXPECT_EQ(QString("format string one %1"), dataSource->formatString());
80
93
                EXPECT_EQ(QString("empty data string one"),
81
94
                                dataSource->emptyDataString());
85
98
        {
86
99
                DataSourcePtr dataSource(store.dataSource(DBusPaths::dataSource(2)));
87
100
                ASSERT_FALSE(dataSource.isNull());
88
 
                QSignalSpy emptyDataStringChangedSpy(dataSource.data(),
89
 
                                SIGNAL(emptyDataStringChanged(const QString &)));
90
 
                ASSERT_TRUE(emptyDataStringChangedSpy.wait());
 
101
                WAIT_FOR_STRINGS_TO_CHANGE();
91
102
                EXPECT_EQ(QString("format string two %1"), dataSource->formatString());
92
103
                EXPECT_EQ(QString("empty data string two"),
93
104
                                dataSource->emptyDataString());
113
124
        {
114
125
                DataSourcePtr dataSource(store.dataSource(DBusPaths::dataSource(1)));
115
126
                ASSERT_FALSE(dataSource.isNull());
116
 
                QSignalSpy formatStringChangedSpy(dataSource.data(),
117
 
                                SIGNAL(formatStringChanged(const QString &)));
118
 
                ASSERT_TRUE(formatStringChangedSpy.wait());
 
127
                WAIT_FOR_STRINGS_TO_CHANGE();
119
128
                EXPECT_EQ(QString("format string one %1"), dataSource->formatString());
120
129
                EXPECT_EQ(QString("text-domain-one"), dataSource->textDomain());
121
130
        }
139
148
        {
140
149
                DataSourcePtr dataSource(store.dataSource(DBusPaths::dataSource(1)));
141
150
                ASSERT_FALSE(dataSource.isNull());
142
 
                if (dataSource->emptyDataString().isEmpty()) {
143
 
                        QSignalSpy emptyDataStringChangedSpy(dataSource.data(),
144
 
                                        SIGNAL(emptyDataStringChanged(const QString &)));
145
 
                        ASSERT_TRUE(emptyDataStringChangedSpy.wait());
146
 
                }
 
151
                WAIT_FOR_STRINGS_TO_CHANGE();
147
152
                EXPECT_EQ(QString("format string one %1"), dataSource->formatString());
148
153
                EXPECT_EQ(QString("no data source ones"),
149
154
                                dataSource->emptyDataString());
153
158
        {
154
159
                DataSourcePtr dataSource(store.dataSource(DBusPaths::dataSource(2)));
155
160
                ASSERT_FALSE(dataSource.isNull());
156
 
                QSignalSpy emptyDataStringChangedSpy(dataSource.data(),
157
 
                                SIGNAL(emptyDataStringChanged(const QString &)));
158
 
                ASSERT_TRUE(emptyDataStringChangedSpy.wait());
 
161
                WAIT_FOR_STRINGS_TO_CHANGE();
159
162
                EXPECT_EQ(QString("format string two %1"), dataSource->formatString());
160
163
                EXPECT_EQ(QString("no data source twos"),
161
164
                                dataSource->emptyDataString());