X-Git-Url: http://Server1/repobrowser/?p=xestiaab%2F.git;a=blobdiff_plain;f=source%2Ftests%2Fxestiaab_common.h;h=49391785d7c64fb449a07684f057619cc5649d8d;hp=ae9bbf53e75967141c3b3f981c8e2ac72e35703a;hb=1c98aaa412ec1110cc69c5189a7339c10e8c1bbe;hpb=ea8011e6a9ca160f5e894d695e21ce1e3b05a146 diff --git a/source/tests/xestiaab_common.h b/source/tests/xestiaab_common.h index ae9bbf5..4939178 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,101 +258,295 @@ 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, CheckBlacklist("example.com")); - ASSERT_EQ(true, CheckBlacklist("google.com")); + ASSERT_EQ(false, domainStatus); + + // When + + domainStatus = false; + domainStatus = CheckBlacklist("google.com"); + + // Then + + ASSERT_EQ(true, domainStatus); } -TEST(CommonFunctions, EscapeString){ +TEST(CommonFunctions, GivenExampleStringWhenEscapeStringIsCalledThenReturnedStringIsExample){ // Test the escape string function. + // Given + wxString EscapeStringData = "Example"; + + // When + EscapeString(&EscapeStringData, false); + + // Then + ASSERT_EQ("Example", EscapeStringData.ToStdString()); + +} + +TEST(CommonFunctions, GivenStringWithCommaWhenEscapeStringIsCalledThenCommaIsEscaped){ + + // Test the escape string function. + + // Given EscapeStringData = "Here we go, an \"example\" of escaping string."; + + // When + EscapeString(&EscapeStringData, false); + + // Then + ASSERT_EQ("Here we go\\, an \"example\" of escaping string.", EscapeStringData.ToStdString()); +} + +TEST(CommonFunctions, GivenStringWithNewlineCharactersWhenEscapeStringIsCalledThenNewlinesAreEscaped){ + + // Test the escape string function. + + // Given + EscapeStringData = "Lets put some \nnew \nlines \nin \nhere."; + + // When + EscapeString(&EscapeStringData, false); + + // Then + ASSERT_EQ("Lets put some \\nnew \\nlines \\nin \\nhere.", EscapeStringData.ToStdString()); +} + +TEST(CommonFunctions, GivenAStringWithReturnCharactersWhenEscapeStringIsCalledThenReturnsAreRemoved){ + + // Test the escape string function. + + // Given + EscapeStringData = "Lets put some \r\nnew \r\nlines \r\nin \r\nhere."; + + // When + EscapeString(&EscapeStringData, false); + + // Then + ASSERT_EQ("Lets put some \\nnew \\nlines \\nin \\nhere.", EscapeStringData.ToStdString()); +} + +TEST(CommonFunctions, GivenStringWithBackslashesWhenEscapeStringIsCalledThenBackslashesAreEscaped){ + + // Test the escape string function. + + // Given + EscapeStringData = "A:\\path\\example\\lets\\have\\some\\fun"; + + // When + EscapeString(&EscapeStringData, false); + + // Then + ASSERT_EQ("A:\\\\path\\\\example\\\\lets\\\\have\\\\some\\\\fun", EscapeStringData.ToStdString()); } -TEST(CommonFunctions, CaptureString){ +TEST(CommonFunctions, GivenExampleStringWhenCaptureStringIsCalledThenReturnedStringIsExample){ // Test the capture string function. + // Given + wxString CaptureStringData = "Example"; + + // When + CaptureString(&CaptureStringData, false); + + // Then + ASSERT_EQ("Example", CaptureStringData.ToStdString()); +} + +TEST(CommonFunctions, GivenStringWithEscapedCommasWhenCaptureStringIsCalledThenCommasAreCaptured){ + + // Test the capture string function. + + // Given + CaptureStringData = "Here we go\\, an \"example\" of escaping string."; + + // When + CaptureString(&CaptureStringData, false); + + // Then + ASSERT_EQ("Here we go, an \"example\" of escaping string.", CaptureStringData.ToStdString()); +} + +TEST(CommonFunctions, GivenStringWithEscapedNewlinesWhenCaptureStringIsCalledThenNewlinesAreCaptured){ + + // Test the capture string function. + + // Given + CaptureStringData = "Lets put some \\nnew \\nlines \\nin \\nhere."; + + // When + CaptureString(&CaptureStringData, false); + + // Then + ASSERT_EQ("Lets put some \nnew \nlines \nin \nhere.", CaptureStringData.ToStdString()); +} + +TEST(CommonFunctions, GivenStringWithEscapedBackslashesWhenCaptureStringIsCalledThenBackslashesAreCaptured){ + + // Test the capture string function. + + // Given + CaptureStringData = "A:\\\\path\\\\example\\\\lets\\\\have\\\\some\\\\fun"; + + // When + CaptureString(&CaptureStringData, false); + + // Then + ASSERT_EQ("A:\\path\\example\\lets\\have\\some\\fun", CaptureStringData.ToStdString()); } -TEST(CommonFunctions, ResetUnusedString){ +TEST(CommonFunctions, GivenStringWithSeveralBackslashesWhenResetUnusedStringIsCalledThenStringIsReset){ // Tests for resetting an unused string. + // Given + wxString ResetUnusedStringData = "Random string with a \\\\\\\\serverpath\\\\location"; + + // When + ResetUnusedString(&ResetUnusedStringData); + + // Then + ASSERT_EQ("Random string with a \\\\serverpath\\location", ResetUnusedStringData.ToStdString()); - ResetUnusedStringData = "Some text \\nwith new \\nlines!"; - ResetUnusedString(&ResetUnusedStringData); - ASSERT_EQ("Some text \nwith new \nlines!", ResetUnusedStringData.ToStdString()); +} + +TEST(CommonFunctions, GivenStringWithNewlinesWhenResetUnusedStringIsCalledThenStringIsFormatted){ + + // Tests for resetting an unused string. + + // Given ResetUnusedStringData = "Some text \\nwith new \\nlines!"; + + // When + ResetUnusedString(&ResetUnusedStringData); + + // Then + ASSERT_EQ("Some text \nwith new \nlines!", ResetUnusedStringData.ToStdString()); + +} + +TEST(CommonFunctions, GivenStringWithSeveralCharactersWhenResetUnusedStringThenStringIsFormatted){ + + // Tests for resetting an unused string. + + // Given ResetUnusedStringData = "And now the list of characters: \\\\ \\n \\; \\,"; + + // When + ResetUnusedString(&ResetUnusedStringData); + + // Then + ASSERT_EQ("And now the list of characters: \\ \n ; ,", ResetUnusedStringData.ToStdString()); }