Home | News | Projects | Releases
Bugs | RFE | Repositories | Help
CommonFunctions Unit Tests: WIP changes
authorSteve Brokenshire <sbrokenshire@xestia.co.uk>
Tue, 24 Oct 2017 22:42:59 +0000 (23:42 +0100)
committerSteve Brokenshire <sbrokenshire@xestia.co.uk>
Tue, 24 Oct 2017 22:42:59 +0000 (23:42 +0100)
source/tests/xestiaab_common.h

index ae9bbf5..c506d11 100644 (file)
 #include "../common/svrblist.h"
 #include "../common/textprocessing.h"
 
-TEST(CommonFunctions, GetUserDir){
+static wxString AccountInput1 = "Example1";
+static wxString AccountInput2 = "Example2";
+static wxString AccountInput3 = "Example3";
+
+TEST(CommonFunctions, GivenAPredefinedPathWhenGetUserDirIsCalledThenReceivedPathMatches){
        
        // Run the unit tests depending on the operating system being used.
        
@@ -35,19 +39,25 @@ TEST(CommonFunctions, GetUserDir){
        
        // Setup for comparison purposes. Should be /home/<user>/.xestiaab
        
+       // Given
+       
        wxString UserDirCheck = "";
        UserDirCheck.Append(wxString::FromUTF8(getenv("HOME")));
        UserDirCheck.Append(wxT("/.xestiaab/"));
        
+       // When
+       
        wxString UserDir = GetUserDir();
        
+       // Then
+       
        ASSERT_EQ(UserDir, UserDirCheck);
        
 #endif
        
 }
 
-TEST(CommonFunctions, GetUserPrefDir){
+TEST(CommonFunctions, GivenAPredefinedPathWhenGetUserPrefDirIsCalledThenReceivedPathMatches){
        
        // Run the unit tests depending on the operating system being used.
        
@@ -59,18 +69,25 @@ TEST(CommonFunctions, GetUserPrefDir){
        
        // Setup for comparison purposes. Should be /home/<user>/.xestiaab/preferences
        
-       wxString UserDirCheck = "";
-       UserDirCheck.Append(wxString::FromUTF8(getenv("HOME")));
-       UserDirCheck.Append(wxT("/.xestiaab/preferences/"));
+       // Given
        
-       wxString UserDir = GetUserPrefDir();
-               ASSERT_EQ(UserDir, UserDirCheck);
+       wxString UserPrefDirCheck = "";
+       UserPrefDirCheck.Append(wxString::FromUTF8(getenv("HOME")));
+       UserPrefDirCheck.Append(wxT("/.xestiaab/preferences/"));
        
-#endif
+       // When
+       
+       wxString UserPrefDir = GetUserPrefDir();
+       
+       // Then
        
+       ASSERT_EQ(UserPrefDir, UserPrefDirCheck);
+       
+#endif
+
 }
 
-TEST(CommonFunctions, GetAccountDir){
+TEST(CommonFunctions, GivenThreePredefinedPathsWhenGetAccountDirIsCalledForEachThenReceivedPathsMatches){
        
        // Run the unit tests depending on the operating system being used.
        
@@ -86,9 +103,7 @@ TEST(CommonFunctions, GetAccountDir){
        wxString AccountDirCheck2 = "";
        wxString AccountDirCheck3 = "";
        
-       wxString AccountDirInput1 = "Example1";
-       wxString AccountDirInput2 = "Example2";
-       wxString AccountDirInput3 = "Example3";
+       // Given
        
        AccountDirCheck1.Append(wxString::FromUTF8(getenv("HOME")));
        AccountDirCheck1.Append(wxT("/.xestiaab/accounts/"));
@@ -105,9 +120,13 @@ TEST(CommonFunctions, GetAccountDir){
        AccountDirCheck3.Append("Example3");
        AccountDirCheck3.Append(wxT("/"));
        
-       wxString AccountDir1 = GetAccountDir(AccountDirInput1, false);
-       wxString AccountDir2 = GetAccountDir(AccountDirInput2, false);
-       wxString AccountDir3 = GetAccountDir(AccountDirInput3, false);
+       // When
+       
+       wxString AccountDir1 = GetAccountDir(AccountInput1, false);
+       wxString AccountDir2 = GetAccountDir(AccountInput2, false);
+       wxString AccountDir3 = GetAccountDir(AccountInput3, false);
+
+       // Then
 
        ASSERT_EQ(AccountDir1, AccountDirCheck1);
        ASSERT_EQ(AccountDir2, AccountDirCheck2);
@@ -117,7 +136,7 @@ TEST(CommonFunctions, GetAccountDir){
        
 }
 
-TEST(CommonFunctions, GetAccountDirCertificate){
+TEST(CommonFunctions, GivenThreePredefinedFilePathsWhenGetAccountDirIsCalledWithAppendServerCertificateSetToTrueForEachThenReceivedPathsMatches){
        
        // Run the unit tests depending on the operating system being used.
        
@@ -133,9 +152,7 @@ TEST(CommonFunctions, GetAccountDirCertificate){
        wxString AccountDirCheck2 = "";
        wxString AccountDirCheck3 = "";
        
-       wxString AccountDirInput1 = "Example1";
-       wxString AccountDirInput2 = "Example2";
-       wxString AccountDirInput3 = "Example3";
+       // Given
        
        AccountDirCheck1.Append(wxString::FromUTF8(getenv("HOME")));
        AccountDirCheck1.Append(wxT("/.xestiaab/accounts/"));
@@ -152,9 +169,13 @@ TEST(CommonFunctions, GetAccountDirCertificate){
        AccountDirCheck3.Append("Example3");
        AccountDirCheck3.Append(wxT("/server.crt"));
        
-       wxString AccountDir1 = GetAccountDir(AccountDirInput1, true);
-       wxString AccountDir2 = GetAccountDir(AccountDirInput2, true);
-       wxString AccountDir3 = GetAccountDir(AccountDirInput3, true);
+       // When
+       
+       wxString AccountDir1 = GetAccountDir(AccountInput1, true);
+       wxString AccountDir2 = GetAccountDir(AccountInput2, true);
+       wxString AccountDir3 = GetAccountDir(AccountInput3, true);
+
+       // Then
 
        ASSERT_EQ(AccountDir1, AccountDirCheck1);
        ASSERT_EQ(AccountDir2, AccountDirCheck2);
@@ -164,7 +185,7 @@ TEST(CommonFunctions, GetAccountDirCertificate){
        
 }
 
-TEST(CommonFunctions, GetAccountsFile){
+TEST(CommonFunctions, GivenPredefinedFilePathWhenGetAccountsFileIsCalledThenReceivedFilePathMatches){
        
        // Run the unit tests depending on the operating system being used.
        
@@ -177,20 +198,26 @@ TEST(CommonFunctions, GetAccountsFile){
        // Setup for comparison purposes. Should be 
        // /home/<user>/.xestiaab/preferences/accounts
        
+       // Given
+       
        wxString AccountsFileCheck = "";
        AccountsFileCheck.Clear();
        AccountsFileCheck.Append(wxString::FromUTF8(getenv("HOME")));
        AccountsFileCheck.Append(wxT("/.xestiaab/preferences/accounts"));
        
+       // When
+       
        wxString AccountsFile = GetAccountsFile();
        
+       // Then
+       
        ASSERT_EQ(AccountsFile, AccountsFileCheck);
        
 #endif
        
 }
 
-TEST(CommonFunctions, GetSettingsFile){
+TEST(CommonFunctions, GivenPredefinedFilePathWhenGetSettingsFileIsCalledThenReceivedFilePathMatches){
        
        // Run the unit tests depending on the operating system being used.
        
@@ -203,20 +230,26 @@ TEST(CommonFunctions, GetSettingsFile){
        // Setup for comparison purposes. Should be 
        // /home/<user>/.xestiaab/preferences/accounts
        
+       // Given
+       
        wxString SettingsFileCheck = "";
        SettingsFileCheck.Clear();
        SettingsFileCheck.Append(wxString::FromUTF8(getenv("HOME")));
        SettingsFileCheck.Append(wxT("/.xestiaab/preferences/settings"));
        
+       // When
+       
        wxString SettingsFile = GetSettingsFile();
        
+       // Then
+       
        ASSERT_EQ(SettingsFile, SettingsFileCheck);
        
 #endif
        
 }
 
-TEST(CommonFunctions, CreateFilenamePath){
+TEST(CommonFunctions, GivenFivePredefinedFilenamePathsWhenCreateFilenamePathIsCalledThenReceivedPathMatches){
        
        // Run the unit tests depending on the operating system being used.
        
@@ -225,32 +258,80 @@ TEST(CommonFunctions, CreateFilenamePath){
 #elif defined(__APPLE__)
        
 #else
-               
-       ASSERT_EQ("/test", CreateFilenamePath("", "test"));
-       ASSERT_EQ("/example/test", CreateFilenamePath("/example", "test"));
-       ASSERT_EQ("/home/meep/test", CreateFilenamePath("/home/meep", "test"));
-       ASSERT_EQ("/home/meep/moo/test", CreateFilenamePath("/home/meep/moo", "test"));
-       ASSERT_EQ("/home/meep/moo/yargh/test", CreateFilenamePath("/home/meep/moo/yargh", "test"));
+
+       // Given
+
+       wxString FilenamePath1 = "/test";
+       wxString FilenamePath2 = "/example/test";
+       wxString FilenamePath3 = "/home/meep/test";
+       wxString FilenamePath4 = "/home/meep/moo/test";
+       wxString FilenamePath5 = "/home/meep/moo/yargh/test";
+
+       // When
+
+       wxString GeneratedFilenamePath1 = CreateFilenamePath("", "test");
+       wxString GeneratedFilenamePath2 = CreateFilenamePath("/example", "test");
+       wxString GeneratedFilenamePath3 = CreateFilenamePath("/home/meep", "test");
+       wxString GeneratedFilenamePath4 = CreateFilenamePath("/home/meep/moo", "test"); 
+       wxString GeneratedFilenamePath5 = CreateFilenamePath("/home/meep/moo/yargh", "test");   
+
+       // Then
+
+       ASSERT_EQ(FilenamePath1, GeneratedFilenamePath1);
+       ASSERT_EQ(FilenamePath2, GeneratedFilenamePath2);
+       ASSERT_EQ(FilenamePath3, GeneratedFilenamePath3);
+       ASSERT_EQ(FilenamePath4, GeneratedFilenamePath4);
+       ASSERT_EQ(FilenamePath5, GeneratedFilenamePath5);
        
 #endif
        
 }
 
-TEST(CommonFunctions, GetMIME){
+TEST(CommonFunctions, GivenTwoFilesWhenGetMIMEIsCalledThenBothFilesMIMETypesAreGiven){
        
        // Get the MIME type based on the files given.
        
+       // Given
+       
+       wxString File1MIMEFormat = "";
+       wxString File2MIMEFormat = "";
+       
+       // When
+       
+       File1MIMEFormat = GetMIME("TextMIMEExample.txt");
+       File2MIMEFormat = GetMIME("PictureMIMEExample.png");
+       
+       // Then
+       
        ASSERT_EQ("text/plain", GetMIME("TextMIMEExample.txt"));
        ASSERT_EQ("image/png", GetMIME("PictureMIMEExample.png"));
        
 }
 
-TEST(CommonFunctions, CheckBlacklist){
+TEST(CommonFunctions, GivenTwoDomainNamesWhenCheckBlacklistIsCalledThenReturnsCorrectStatus){
        
        // Test that the blacklist is actually working.
+
+       // Given
+       
+       bool domainStatus = true;
+       
+       // When
+       
+       domainStatus = CheckBlacklist("example.com");
+       
+       // Then
+       
+       ASSERT_EQ(false, domainStatus);
+       
+       // When
+       
+       domainStatus = false;
+       domainStatus = CheckBlacklist("google.com");
+       
+       // Then
        
-       ASSERT_EQ(false, CheckBlacklist("example.com"));
-       ASSERT_EQ(true, CheckBlacklist("google.com"));
+       ASSERT_EQ(true, domainStatus);
        
 }
 
Xestia Software Development
Yn Maystri
© 2006 - 2019 Xestia Software Development
Software

Xestia Address Book
Xestia Calendar
Development

Xestia Gelforn
Everything else

About
News
Privacy Policy