From 89a5f60f67b881c9a38a276a249d165d6fb4bd9a Mon Sep 17 00:00:00 2001 From: Steve Brokenshire Date: Tue, 24 Oct 2017 23:42:59 +0100 Subject: [PATCH] CommonFunctions Unit Tests: WIP changes --- source/tests/xestiaab_common.h | 151 +++++++++++++++++++++++++-------- 1 file changed, 116 insertions(+), 35 deletions(-) diff --git a/source/tests/xestiaab_common.h b/source/tests/xestiaab_common.h index ae9bbf5..c506d11 100644 --- a/source/tests/xestiaab_common.h +++ b/source/tests/xestiaab_common.h @@ -23,7 +23,11 @@ #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//.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//.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//.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//.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); } -- 2.39.2