refaktoring
[mdictionary] / tests / mDictionaryTests / CommonDictInterfaceMock.h
1 /*******************************************************************************
2
3     This file is part of mDictionary.
4
5     mDictionary is free software: you can redistribute it and/or modify
6     it under the terms of the GNU General Public License as published by
7     the Free Software Foundation, either version 3 of the License, or
8     (at your option) any later version.
9
10     mDictionary is distributed in the hope that it will be useful,
11     but WITHOUT ANY WARRANTY; without even the implied warranty of
12     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13     GNU General Public License for more details.
14
15     You should have received a copy of the GNU General Public License
16     along with mDictionary.  If not, see <http://www.gnu.org/licenses/>.
17
18     Copyright 2010 Comarch S.A.
19
20 *******************************************************************************/
21
22 /*! /file CommonDictInterfaceMock.h
23 \brief Mock for dictionary/plugin behaviour testing
24
25 \author Bartosz Szatkowski <bulislaw@linux.com>
26 */
27
28
29
30
31 #ifndef COMMONDICTINTERFACEMOCK_H
32 #define COMMONDICTINTERFACEMOCK_H
33
34 #include "../../src/include/CommonDictInterface.h"
35 #include "TranslationMock.h"
36
37 /*! CommonDictInterfaceMock simulates dict/plugin behaviour without any
38   non-testMock dependencies, files, etc.*/
39 class CommonDictInterfaceMock : public CommonDictInterface
40 {
41 public:
42     QString fromv, tov, namev, typev, infoNotev;
43     bool available,stopped;
44     uint _hash;
45     CommonDictInterfaceMock(QObject* parent = 0) :
46             CommonDictInterface(parent) {}
47
48     QString langFrom () const { return fromv; }
49     QString langTo() const {return tov;}
50     QString name() const { return namev;}
51     QString type() const {return typev;}
52     QString infoNote() const {return infoNotev;}
53     QDialog* loadDialog() {return 0;}
54     QDialog* settingsDialog() {return 0;}
55     CommonDictInterface* getNew(const Settings *) const { return 0;}
56     bool isAvailable() const {return available;}
57     void stop() {stopped = 1;}
58     QIcon* icon(){return 0;}
59     QString search(QString key) {return "";}
60     QList<Translation*> searchWordList(QString word, int limit) {
61         stopped = 0;
62         QList<Translation*> list;
63
64         TranslationMock *tm = new TranslationMock();
65         tm->_key = langFrom();
66         tm->_translation = langTo();
67         TranslationMock *tm1 = new TranslationMock();
68         tm1->_key = name();
69         tm1->_translation = type();
70         list << tm << tm1;
71
72         return list;
73     }
74     DictDialog* dictDialog() {return 0;}
75     Settings* settings() {return 0;}
76
77 };
78
79 #endif // COMMONDICTINTERFACEMOCK_H