Added unit tests.
[situare] / tests / stubs / listviewstub.h
1 /*
2    Situare - A location system for Facebook
3    Copyright (C) 2010  Ixonos Plc. Authors:
4
5        Jussi Laitinen - jussi.laitinen@ixonos.com
6
7    Situare is free software; you can redistribute it and/or
8    modify it under the terms of the GNU General Public License
9    version 2 as published by the Free Software Foundation.
10
11    Situare is distributed in the hope that it will be useful,
12    but WITHOUT ANY WARRANTY; without even the implied warranty of
13    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14    GNU General Public License for more details.
15
16    You should have received a copy of the GNU General Public License
17    along with Situare; if not, write to the Free Software
18    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301,
19    USA.
20 */
21
22 #ifndef LISTVIEWSTUB_H
23 #define LISTVIEWSTUB_H
24
25 #include <QListWidget>
26
27 #include "../../src/ui/listview.h"
28 #include "listitemstub.h"
29 #include "stubbase.h"
30
31 class ListViewStub : public StubBase
32 {
33 public:
34     virtual void ListViewConstructor(QWidget *parent = 0);
35     virtual void addListItem(const QString &key, ListItem *item);
36     virtual void addListItemToView(ListItem *item);
37     virtual void clearUnused(const QStringList &itemIDs);
38     virtual void clearFilter();
39     virtual void clearItemSelection();
40     virtual void clearList();
41     virtual bool contains(const QString &userID);
42     virtual void filter(const QList<QString> &itemIDs);
43     virtual void filter(const QString &pattern);
44     virtual ListItem *takeListItemFromView(const QString &itemID);
45     virtual ListItem *listItem(const QString &itemID);
46     virtual ListItem *listItemAt(int index);
47     virtual void prependListItem(const QString &key, ListItem *item);
48     virtual void removeLastItem();
49     virtual ListItem *selectedItem();
50     virtual void setSelectedItem(ListItem *item);
51     virtual bool listItemClicked(ListItem *clickedItem);
52     virtual void listItemClicked(QListWidgetItem *item);
53 };
54
55 void ListViewStub::ListViewConstructor(QWidget *parent)
56 {
57     Q_UNUSED(parent)
58 }
59
60 void ListViewStub::addListItem(const QString &key, ListItem *item)
61 {
62     QList<ParameterBase *> params;
63     params.append(new Parameter<const QString &>(key));
64     params.append(new Parameter<ListItem *>(item));
65     stubMethodEntered("addListItem", params);
66 }
67
68 void ListViewStub::addListItemToView(ListItem *item)
69 {
70     QList<ParameterBase *> params;
71     params.append(new Parameter<ListItem *>(item));
72     stubMethodEntered("addListItemToView", params);
73 }
74
75 void ListViewStub::clearUnused(const QStringList &itemIDs)
76 {
77     QList<ParameterBase *> params;
78     params.append(new Parameter<const QStringList &>(itemIDs));
79     stubMethodEntered("clearUnused", params);
80 }
81
82 void ListViewStub::clearFilter()
83 {
84     stubMethodEntered("clearFilter");
85 }
86
87 void ListViewStub::clearItemSelection()
88 {
89     stubMethodEntered("clearItemSelection");
90 }
91
92 void ListViewStub::clearList()
93 {
94     stubMethodEntered("clearList");
95 }
96
97 bool ListViewStub::contains(const QString &userID)
98 {
99     QList<ParameterBase *> params;
100     params.append(new Parameter<const QString &>(userID));
101     stubMethodEntered("contains", params);
102
103     return stubReturnValue<bool>("contains");
104 }
105
106 void ListViewStub::filter(const QList<QString> &itemIDs)
107 {
108     QList<ParameterBase *> params;
109     params.append(new Parameter<const QList<QString> &>(itemIDs));
110     stubMethodEntered("filter", params);
111 }
112
113 void ListViewStub::filter(const QString &pattern)
114 {
115     QList<ParameterBase *> params;
116     params.append(new Parameter<const QString &>(pattern));
117     stubMethodEntered("filter", params);
118 }
119
120 ListItem *ListViewStub::takeListItemFromView(const QString &itemID)
121 {
122     QList<ParameterBase *> params;
123     params.append(new Parameter<const QString &>(itemID));
124     stubMethodEntered("takeListItemFromView", params);
125
126     return stubReturnValue<ListItem *>("takeListItemFromView");
127 }
128
129 ListItem *ListViewStub::listItem(const QString &itemID)
130 {
131     QList<ParameterBase *> params;
132     params.append(new Parameter<const QString &>(itemID));
133     stubMethodEntered("listItem", params);
134
135     return stubReturnValue<ListItem *>("listItem");
136 }
137
138 ListItem *ListViewStub::listItemAt(int index)
139 {
140     QList<ParameterBase *> params;
141     params.append(new Parameter<int>(index));
142     stubMethodEntered("listItemAt", params);
143
144     return stubReturnValue<ListItem *>("listItemAt");
145 }
146
147 void ListViewStub::prependListItem(const QString &key, ListItem *item)
148 {
149     QList<ParameterBase *> params;
150     params.append(new Parameter<const QString &>(key));
151     params.append(new Parameter<ListItem *>(item));
152     stubMethodEntered("prependListItem", params);
153 }
154
155 void ListViewStub::removeLastItem()
156 {
157     stubMethodEntered("removeLastItem");
158 }
159
160 ListItem *ListViewStub::selectedItem()
161 {
162     return stubReturnValue<ListItem *>("selectedItem");
163 }
164
165 void ListViewStub::setSelectedItem(ListItem *item)
166 {
167     QList<ParameterBase *> params;
168     params.append(new Parameter<ListItem *>(item));
169     stubMethodEntered("setSelectedItem", params);
170 }
171
172 bool ListViewStub::listItemClicked(ListItem *clickedItem)
173 {
174     QList<ParameterBase *> params;
175     params.append(new Parameter<ListItem *>(clickedItem));
176     stubMethodEntered("listItemClicked", params);
177
178     return stubReturnValue<bool>("listItemClicked");
179 }
180
181 void ListViewStub::listItemClicked(QListWidgetItem *item)
182 {
183     QList<ParameterBase *> params;
184     params.append(new Parameter<QListWidgetItem *>(item));
185     stubMethodEntered("listItemClicked", params);
186 }
187
188 ListViewStub defaultListViewStub;
189 ListViewStub *listViewStub = &defaultListViewStub;
190
191 ListView::ListView(QWidget *parent)
192     : QListWidget(parent)
193 {
194     listViewStub->ListViewConstructor(parent);
195 }
196
197 ListView::~ListView()
198 {
199
200 }
201
202 void ListView::addListItem(const QString &key, ListItem *item)
203 {
204     listViewStub->addListItem(key, item);
205 }
206
207 void ListView::addListItemToView(ListItem *item)
208 {
209     listViewStub->addListItemToView(item);
210 }
211
212 void ListView::clearUnused(const QStringList &itemIDs)
213 {
214     listViewStub->clearUnused(itemIDs);
215 }
216
217 void ListView::clearFilter()
218 {
219     listViewStub->clearFilter();
220 }
221
222 void ListView::clearItemSelection()
223 {
224     listViewStub->clearItemSelection();
225 }
226
227 void ListView::clearList()
228 {
229     listViewStub->clearList();
230 }
231
232 bool ListView::contains(const QString &userID)
233 {
234     return listViewStub->contains(userID);
235 }
236
237 void ListView::filter(const QList<QString> &itemIDs)
238 {
239     listViewStub->filter(itemIDs);
240 }
241
242 void ListView::filter(const QString &pattern)
243 {
244     listViewStub->filter(pattern);
245 }
246
247 ListItem *ListView::takeListItemFromView(const QString &itemID)
248 {
249     return listViewStub->takeListItemFromView(itemID);
250 }
251
252 ListItem *ListView::listItem(const QString &itemID)
253 {
254     return listViewStub->listItem(itemID);
255 }
256
257 ListItem *ListView::listItemAt(int index)
258 {
259     return listViewStub->listItemAt(index);
260 }
261
262 void ListView::prependListItem(const QString &key, ListItem *item)
263 {
264     listViewStub->prependListItem(key, item);
265 }
266
267 void ListView::removeLastItem()
268 {
269     listViewStub->removeLastItem();
270 }
271
272 ListItem *ListView::selectedItem()
273 {
274     return listViewStub->selectedItem();
275 }
276
277 void ListView::setSelectedItem(ListItem *item)
278 {
279     listViewStub->setSelectedItem(item);
280 }
281
282 bool ListView::listItemClicked(ListItem *clickedItem)
283 {
284     return listViewStub->listItemClicked(clickedItem);
285 }
286
287 void ListView::listItemClicked(QListWidgetItem *item)
288 {
289     listViewStub->listItemClicked(item);
290 }
291
292 #endif // LISTVIEWSTUB_H