51
MATCHER_P3(ResultPackageMatch, title, subtitle, rating, "")
51
MATCHER_P4(ResultPackageMatch, title, subtitle, id, rating, "")
53
53
auto attributes = arg["attributes"].get_array();
54
54
return arg.contains("title") && arg["title"].get_string() == title &&
55
55
arg.contains("subtitle") && arg["subtitle"].get_string() == subtitle &&
56
arg.contains("id") && arg["id"].get_string() == id &&
56
57
attributes.size() > 0 && attributes[0].get_dict()["value"].get_string() == rating;
73
Package create_package(std::string name, std::string summary, double rating)
74
Package create_package(std::string name, std::string summary, std::string id, double rating)
76
77
package.name = name;
77
78
package.summary = summary;
78
79
package.rating = rating;
83
void expect_push(std::string title, std::string subtitle, std::string rating, bool result = true)
85
void expect_push(std::string title, std::string subtitle, std::string id, std::string rating, bool result = true)
85
EXPECT_CALL(reply_, push(testing::Matcher<unity::scopes::CategorisedResult const&>(ResultPackageMatch(title, subtitle, rating)))).WillOnce(testing::Return(result));
87
EXPECT_CALL(reply_, push(testing::Matcher<unity::scopes::CategorisedResult const&>(ResultPackageMatch(title, subtitle, id, rating)))).WillOnce(testing::Return(result));
88
90
unity::scopes::SearchMetadata metadata_;
121
123
EXPECT_CALL(reply_, register_category("aptcache", "1 result found", "Application", testing::_)).WillOnce(testing::Return(category_));
123
auto package = create_package("vim", "Writin' stuff", 3);
124
expect_push("vim", "Writin' stuff", "★★★☆☆");
125
auto package = create_package("vim", "Writin' stuff", "vim.desktop", 3);
126
expect_push("vim", "Writin' stuff", "vim.desktop", "★★★☆☆");
126
128
EXPECT_CALL(*service_, search_cache(testing::_)).WillOnce(testing::Return(QList<Package>{package}));
127
129
canned_query_.set_query_string("vim");
136
138
EXPECT_CALL(reply_, register_category("aptcache", "3 results found", "Application", testing::_)).WillOnce(testing::Return(category_));
138
auto vim = create_package("vim", "Writin' stuff", 2.7);
139
auto gedit = create_package("gedit", "Writin' gui stuff", 4.1);
140
auto ed = create_package("ed", "Writin' simple stuff", 2.4);
140
auto vim = create_package("vim", "Writin' stuff", "vim.desktop", 2.7);
141
auto gedit = create_package("gedit", "Writin' gui stuff", "gedit.desktop", 4.1);
142
auto ed = create_package("ed", "Writin' simple stuff", "ed.desktop", 2.4);
142
expect_push("vim", "Writin' stuff", "★★★☆☆");
143
expect_push("gedit", "Writin' gui stuff", "★★★★☆");
144
expect_push("ed", "Writin' simple stuff", "★★☆☆☆");
144
expect_push("vim", "Writin' stuff", "vim.desktop", "★★★☆☆");
145
expect_push("gedit", "Writin' gui stuff", "gedit.desktop", "★★★★☆");
146
expect_push("ed", "Writin' simple stuff", "ed.desktop", "★★☆☆☆");
146
148
EXPECT_CALL(*service_, search_cache(testing::_)).WillOnce(testing::Return(QList<Package>{vim, gedit, ed}));
147
149
canned_query_.set_query_string("vim");
156
158
EXPECT_CALL(reply_, register_category("aptcache", "3 results found", "Application", testing::_)).WillOnce(testing::Return(category_));
158
auto vim = create_package("vim", "Writin' stuff", 2.7);
159
auto gedit = create_package("gedit", "Writin' gui stuff", 4.1);
160
auto ed = create_package("ed", "Writin' simple stuff", 2.4);
160
auto vim = create_package("vim", "Writin' stuff", "vim.desktop", 2.7);
161
auto gedit = create_package("gedit", "Writin' gui stuff", "gedit.desktop", 4.1);
162
auto ed = create_package("ed", "Writin' simple stuff", "ed.desktop", 2.4);
162
expect_push("vim", "Writin' stuff", "★★★☆☆");
163
expect_push("gedit", "Writin' gui stuff", "★★★★☆", false);
164
expect_push("vim", "Writin' stuff", "vim.desktop", "★★★☆☆");
165
expect_push("gedit", "Writin' gui stuff", "gedit.desktop", "★★★★☆", false);
165
167
EXPECT_CALL(*service_, search_cache(testing::_)).WillOnce(testing::Return(QList<Package>{vim, gedit, ed}));
166
168
canned_query_.set_query_string("vim");