1 // FakeConnectionObject.h - FakeConnectionObject class
3 // (c) 2012-2015 Xestia Software Development.
5 // This file is part of Xestia Address Book.
7 // Xestia Address Book is free software: you can redistribute it and/or modify
8 // it under the terms of the GNU General Public License as published by the
9 // Free Software Foundation, version 3 of the license.
11 // Xestia Address Book 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.
16 // You should have received a copy of the GNU General Public License along
17 // with Xestia Address Book. If not, see <http://www.gnu.org/licenses/>
19 #include "../../connobject/ConnectionObject.h"
21 class FakeConnectionObject : public ConnectionObject {
25 // Functions for fake connection object.
27 using ConnectionObject::ConnectionObject;
28 std::string GetServerAddress();
29 unsigned int GetServerPort();
30 std::string GetServerUser();
31 std::string GetServerPass();
32 std::string GetServerPrefix();
33 std::string GetServerAccount();
37 // Functions from the ConnectionObject interface.
39 COConnectResult Connect();
40 std::string GetDefaultPrefix();
41 COServerResponse AddContact(std::string Location, std::string Data);
42 COServerResponse EditContact(std::string Location, std::string Data);
43 COServerResponse DeleteContact(std::string Location, std::string EntityTag);
44 COServerResponse GetServerEntityTagValue(std::string Location);
45 COServerResponse GetContact(std::string Location);
46 COContactList GetContactList(std::string SyncToken);
48 void SetupData(std::string Method, std::string Location, std::string Data);
50 bool CanDoProcessing();
54 bool HasValidResponse();
57 // Variables to set for fake connection object.
59 std::string ResultServerPrefix = "";
60 COConnectResult ResultStatus = COCONNECT_UNITTESTFAIL;
61 bool ResultAuthPassed = false;
62 bool ResultCanProcess = false;
63 bool ResultSSLStatus = false;
64 bool ResultSSLVerified = false;
65 bool ResultValidResponse = false;
66 bool ResultSelfSigned = false;
67 CORequestResult TestRequestResult;
68 COContactList TestContactList;
69 std::string TestEntityTag;
72 std::string TestResultMessage;