1 // xestiaab_common.h - Xestia Address Book Common Functions Unit Tests.
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 <gtest/gtest.h>
20 #include "../common/dirs.h"
22 TEST(CommonFunctions, GetUserDir){
24 // Run the unit tests depending on the operating system being used.
26 #if defined(__WIN32__)
28 #elif defined(__APPLE__)
32 // Setup for comparison purposes. Should be /home/<user>/.xestiaab
34 wxString UserDirCheck = "";
35 UserDirCheck.Append(wxString::FromUTF8(getenv("HOME")));
36 UserDirCheck.Append(wxT("/.xestiaab/"));
38 wxString UserDir = GetUserDir();
40 ASSERT_EQ(UserDir, UserDirCheck);
46 TEST(CommonFunctions, GetUserPrefDir){
48 // Run the unit tests depending on the operating system being used.
50 #if defined(__WIN32__)
52 #elif defined(__APPLE__)
56 // Setup for comparison purposes. Should be /home/<user>/.xestiaab/preferences
58 wxString UserDirCheck = "";
59 UserDirCheck.Append(wxString::FromUTF8(getenv("HOME")));
60 UserDirCheck.Append(wxT("/.xestiaab/preferences/"));
62 wxString UserDir = GetUserPrefDir();
64 ASSERT_EQ(UserDir, UserDirCheck);
70 TEST(CommonFunctions, GetAccountDir){
72 // Run the unit tests depending on the operating system being used.
74 #if defined(__WIN32__)
76 #elif defined(__APPLE__)
80 // Setup for comparison purposes. Should be /home/<user>/.xestiaab/preferences
82 wxString AccountDirCheck1 = "";
83 wxString AccountDirCheck2 = "";
84 wxString AccountDirCheck3 = "";
86 AccountDirCheck1.Append(wxString::FromUTF8(getenv("HOME")));
87 AccountDirCheck1.Append(wxT("/.xestiaab/accounts/"));
88 AccountDirCheck1.Append("Example1");
89 AccountDirCheck1.Append(wxT("/"));
91 AccountDirCheck2.Append(wxString::FromUTF8(getenv("HOME")));
92 AccountDirCheck2.Append(wxT("/.xestiaab/accounts/"));
93 AccountDirCheck2.Append("Example2");
94 AccountDirCheck2.Append(wxT("/"));
96 AccountDirCheck3.Append(wxString::FromUTF8(getenv("HOME")));
97 AccountDirCheck3.Append(wxT("/.xestiaab/accounts/"));
98 AccountDirCheck3.Append("Example3");
99 AccountDirCheck3.Append(wxT("/"));
101 wxString AccountDir1 = GetAccountDir("Example1", false);
102 wxString AccountDir2 = GetAccountDir("Example2", false);
103 wxString AccountDir3 = GetAccountDir("Example3", false);
105 ASSERT_EQ(AccountDir1, AccountDirCheck1);
106 ASSERT_EQ(AccountDir2, AccountDirCheck2);
107 ASSERT_EQ(AccountDir3, AccountDirCheck3);
113 TEST(CommonFunctions, GetAccountDirCertificate){
115 // Run the unit tests depending on the operating system being used.
117 #if defined(__WIN32__)
119 #elif defined(__APPLE__)
123 // Setup for comparison purposes. Should be /home/<user>/.xestiaab/preferences
125 wxString AccountDirCheck1 = "";
126 wxString AccountDirCheck2 = "";
127 wxString AccountDirCheck3 = "";
129 AccountDirCheck1.Append(wxString::FromUTF8(getenv("HOME")));
130 AccountDirCheck1.Append(wxT("/.xestiaab/accounts/"));
131 AccountDirCheck1.Append("Example1");
132 AccountDirCheck1.Append(wxT("/server.crt"));
134 AccountDirCheck2.Append(wxString::FromUTF8(getenv("HOME")));
135 AccountDirCheck2.Append(wxT("/.xestiaab/accounts/"));
136 AccountDirCheck2.Append("Example2");
137 AccountDirCheck2.Append(wxT("/server.crt"));
139 AccountDirCheck3.Append(wxString::FromUTF8(getenv("HOME")));
140 AccountDirCheck3.Append(wxT("/.xestiaab/accounts/"));
141 AccountDirCheck3.Append("Example3");
142 AccountDirCheck3.Append(wxT("/server.crt"));
144 wxString AccountDir1 = GetAccountDir("Example1", true);
145 wxString AccountDir2 = GetAccountDir("Example2", true);
146 wxString AccountDir3 = GetAccountDir("Example3", true);
148 ASSERT_EQ(AccountDir1, AccountDirCheck1);
149 ASSERT_EQ(AccountDir2, AccountDirCheck2);
150 ASSERT_EQ(AccountDir3, AccountDirCheck3);
156 TEST(CommonFunctions, GetAccountsFile){
158 // Run the unit tests depending on the operating system being used.
160 #if defined(__WIN32__)
162 #elif defined(__APPLE__)
166 // Setup for comparison purposes. Should be
167 // /home/<user>/.xestiaab/preferences/accounts
169 wxString AccountsFileCheck = "";
170 AccountsFileCheck.Clear();
171 AccountsFileCheck.Append(wxString::FromUTF8(getenv("HOME")));
172 AccountsFileCheck.Append(wxT("/.xestiaab/preferences/accounts"));
174 wxString AccountsFile = GetAccountsFile();
176 ASSERT_EQ(AccountsFile, AccountsFileCheck);
182 TEST(CommonFunctions, GetSettingsFile){
184 // Run the unit tests depending on the operating system being used.
186 #if defined(__WIN32__)
188 #elif defined(__APPLE__)
192 // Setup for comparison purposes. Should be
193 // /home/<user>/.xestiaab/preferences/accounts
195 wxString SettingsFileCheck = "";
196 SettingsFileCheck.Clear();
197 SettingsFileCheck.Append(wxString::FromUTF8(getenv("HOME")));
198 SettingsFileCheck.Append(wxT("/.xestiaab/preferences/settings"));
200 wxString SettingsFile = GetSettingsFile();
202 ASSERT_EQ(SettingsFile, SettingsFileCheck);