X-Git-Url: http://Server1/repobrowser/?p=xestiaab%2F.git;a=blobdiff_plain;f=source%2Ftests%2Fxestiaab_common.h;h=5a37f830816948e90a70f108c2f0d8ebce24f5ea;hp=10b4d7bfbe8bf17a374fa8fefec2bc0dd6d2de14;hb=7144da5e7c93db0df978e028fe79c41b7445cd10;hpb=f512e72d9b2946542298e3ad3fa288ae74db0b2a diff --git a/source/tests/xestiaab_common.h b/source/tests/xestiaab_common.h index 10b4d7b..5a37f83 100644 --- a/source/tests/xestiaab_common.h +++ b/source/tests/xestiaab_common.h @@ -18,8 +18,17 @@ #include #include "../common/dirs.h" +#include "../common/filename.h" +#include "../common/mime.h" +#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. @@ -31,19 +40,26 @@ 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. @@ -55,19 +71,26 @@ 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(); + wxString UserPrefDirCheck = ""; + UserPrefDirCheck.Append(wxString::FromUTF8(getenv("HOME"))); + UserPrefDirCheck.Append(wxT("/.xestiaab/preferences/")); - ASSERT_EQ(UserDir, UserDirCheck); + // When -#endif + 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. @@ -83,6 +106,8 @@ TEST(CommonFunctions, GetAccountDir){ wxString AccountDirCheck2 = ""; wxString AccountDirCheck3 = ""; + // Given + AccountDirCheck1.Append(wxString::FromUTF8(getenv("HOME"))); AccountDirCheck1.Append(wxT("/.xestiaab/accounts/")); AccountDirCheck1.Append("Example1"); @@ -98,9 +123,63 @@ TEST(CommonFunctions, GetAccountDir){ AccountDirCheck3.Append("Example3"); AccountDirCheck3.Append(wxT("/")); - wxString AccountDir1 = GetAccountDir("Example1", false); - wxString AccountDir2 = GetAccountDir("Example2", false); - wxString AccountDir3 = GetAccountDir("Example3", 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); + ASSERT_EQ(AccountDir3, AccountDirCheck3); + +#endif + +} + +TEST(CommonFunctions, GivenThreePredefinedFilePathsWhenGetAccountDirIsCalledWithAppendServerCertificateSetToTrueForEachThenReceivedPathsMatches) +{ + + // Run the unit tests depending on the operating system being used. + +#if defined(__WIN32__) + +#elif defined(__APPLE__) + +#else + + // Setup for comparison purposes. Should be /home//.xestiaab/preferences + + wxString AccountDirCheck1 = ""; + wxString AccountDirCheck2 = ""; + wxString AccountDirCheck3 = ""; + + // Given + + AccountDirCheck1.Append(wxString::FromUTF8(getenv("HOME"))); + AccountDirCheck1.Append(wxT("/.xestiaab/accounts/")); + AccountDirCheck1.Append("Example1"); + AccountDirCheck1.Append(wxT("/server.crt")); + + AccountDirCheck2.Append(wxString::FromUTF8(getenv("HOME"))); + AccountDirCheck2.Append(wxT("/.xestiaab/accounts/")); + AccountDirCheck2.Append("Example2"); + AccountDirCheck2.Append(wxT("/server.crt")); + + AccountDirCheck3.Append(wxString::FromUTF8(getenv("HOME"))); + AccountDirCheck3.Append(wxT("/.xestiaab/accounts/")); + AccountDirCheck3.Append("Example3"); + AccountDirCheck3.Append(wxT("/server.crt")); + + // 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); @@ -108,4 +187,698 @@ TEST(CommonFunctions, GetAccountDir){ #endif +} + +TEST(CommonFunctions, GivenPredefinedFilePathWhenGetAccountsFileIsCalledThenReceivedFilePathMatches) +{ + + // Run the unit tests depending on the operating system being used. + +#if defined(__WIN32__) + +#elif defined(__APPLE__) + +#else + + // 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, GivenPredefinedFilePathWhenGetSettingsFileIsCalledThenReceivedFilePathMatches) +{ + + // Run the unit tests depending on the operating system being used. + +#if defined(__WIN32__) + +#elif defined(__APPLE__) + +#else + + // 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, GivenFivePredefinedFilenamePathsWhenCreateFilenamePathIsCalledThenReceivedPathMatches) +{ + + // Run the unit tests depending on the operating system being used. + +#if defined(__WIN32__) + +#elif defined(__APPLE__) + +#else + + // 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, 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, 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(true, domainStatus); + +} + +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, 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, 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()); + +} + +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()); + +} + +TEST(CommonFunctions, GivenStringWhenConvertToHTMLIsCalledThenStringisHTMLEscaped) +{ + + // Tests for converting data for inserting into a HTML + // formatted document. + + // Given + + wxString ConvertToHTMLData = "The test line where < is probably better than >!"; + + // When + + ConvertToHTML(&ConvertToHTMLData); + + // Then + + ASSERT_EQ("The test line where < is probably better than >!", ConvertToHTMLData.ToStdString()); + +} + +TEST(CommonFunctions, GivenStringWithNewlineWhenConvertToHTMLIsCalledThenStringIsHTMLEscapedWithFormattedNewline) +{ + + // Tests for converting data for inserting into a HTML + // formatted document. + + // Given + + ConvertToHTMLData = "More testing &<>\n"; + + // When + + ConvertToHTML(&ConvertToHTMLData); + + // Then + + ASSERT_EQ("More testing &<>
", ConvertToHTMLData.ToStdString()); + +} + +TEST(CommonFunctions, GivenStringWithSeveralLinesWhenConvertToHTMLIsCalledThenStringIsHTMLEscapedWithFormattedNewlines) +{ + + // Tests for converting data for inserting into a HTML + // formatted document. + + // Given + + ConvertToHTMLData = "This is the first line.\nThis is the second line.\nThis is the third line."; + + // When + + ConvertToHTML(&ConvertToHTMLData); + + // Then + + ASSERT_EQ("This is the first line.
This is the second line.
This is the third line.", ConvertToHTMLData.ToStdString()); + +} + +static std::map mapExample; +static int itemIndex = 0; + +static mapExample.insert(std::make_pair(0,1)); +static mapExample.insert(std::make_pair(1,1)); +static mapExample.insert(std::make_pair(2,1)); +static mapExample.insert(std::make_pair(5,1)); +static mapExample.insert(std::make_pair(500,1)); +static mapExample.insert(std::make_pair(2415,1)); +static mapExistsStatus = false; + +TEST(CommonFunctions, GivenMapExistsStatusIsFalseAndItemIndexIs0WhenMapDataExistsIsCalledThenConfirmItemIndex0DoesExist) +{ + + // Tests for checking that map data exists. + + // Given + + mapExistsStatus = false; + itemIndex = 0; + + // When + + mapExistsStatus = MapDataExists(&itemIndex, &mapExample); + + // Then + + ASSERT_EQ(true, mapExistsStatus); + +} + +TEST(CommonFunctions, GivenMapExistsStatusIsFalseAndItemIndexIs1WhenMapDataExistsIsCalledThenConfirmItemIndex1DoesExist) +{ + + // Tests for checking that map data exists. + + // Given + + mapExistsStatus = false; + itemIndex = 1; + + // When + + mapExistsStatus = MapDataExists(&itemIndex, &mapExample); + + // Then + + ASSERT_EQ(true, mapExistsStatus); + +} + +TEST(CommonFunctions, GivenMapExistsStatusIsFalseAndItemIndexIs2WhenMapDataExistsIsCalledThenConfirmItemIndex2DoesExist) +{ + + // Tests for checking that map data exists. + + // Given + + mapStatusExists = false; + itemIndex = 2; + + // When + + mapStatusExists = MapDataExists(&itemIndex, &mapExample); + + // Then + + ASSERT_EQ(true, mapStatusExists); + +} + +TEST(CommonFunctions, GivenMapExistsStatusIsTrueAndItemIndexIs3WhenMapDataExistsIsCalledThenConfirmItemIndex3DoesntExist) +{ + + // Tests for checking that map data exists. + + // Given + + mapStatusExists = true; + itemIndex = 3; + + // When + + mapStatusExists = MapDataExists(&itemIndex, &mapExample); + + // Then + + ASSERT_EQ(false, mapStatusExists); + +} + +TEST(CommonFunctions, GivenMapExistsStatusIsFalseAndItemIndexIs5WhenMapDataExistsIsCalledThenConfirmItemIndex5DoesExist) +{ + + // Tests for checking that map data exists. + + // Given + + mapStatusExists = false; + itemIndex = 5; + + // When + + mapStatusExists = MapDataExists(&itemIndex, &mapExample); + + // Then + + ASSERT_EQ(true, mapStatusExists); + +} + +TEST(CommonFunctions, GivenMapExistsStatusIsTrueAndItemIndexIs6WhenMapDataExistsIsCalledThenConfirmItemIndex6DoesntExist) +{ + + // Tests for checking that map data exists. + + // Given + + mapStatusExists = true; + itemIndex = 6; + + // When + + mapStatusExists = MapDataExists(&itemIndex, &mapExample); + + // Then + + ASSERT_EQ(false, mapStatusExists); + +} + +TEST(CommonFunctions, GivenMapExistsStatusIsFalseAndItemIndexIs499WhenMapDataExistsIsCalledThenConfirmItemIndex499DoesntExist) +{ + + // Tests for checking that map data exists. + + // Given + + mapStatusExists = false; + itemIndex = 499; + + // When + + mapStatusExists = MapDataExists(&itemIndex, &mapExample); + + // Then + + ASSERT_EQ(false, mapStatusExists); + +} + +TEST(CommonFunctions, GivenMapExistsStatusIsFalseAndItemIndexIs500WhenMapDataExistsIsCalledThenConfirmItemIndex500DoesExist) +{ + + // Tests for checking that map data exists. + + // Given + + mapStatusExists = false; + itemIndex = 500; + + // When + + mapStatusExists = MapDataExists(&itemIndex, &mapExample); + + // Then + + ASSERT_EQ(true, mapStatusExists); + +} + +TEST(CommonFunctions, GivenMapExistsStatusIsTrueAndItemIndexIs501WhenMapDataExistsIsCalledThenConfirmItemIndex501DoesntExist) +{ + + // Tests for checking that map data exists. + + // Given + + mapStatusExists = true; + itemIndex = 501; + + // When + + mapStatusExists = MapDataExists(&itemIndex, &mapExample); + + // Then + + ASSERT_EQ(false, mapStatusExists); + +} + +TEST(CommonFunctions, GivenMapExistsStatusIsTrueAndItemIndexIs2414WhenMapDataExistsIsCalledThenConfirmItemIndex2414DoesntExist) +{ + + // Tests for checking that map data exists. + + // Given + + mapStatusExists = true; + itemIndex = 2414; + + // When + + mapStatusExists = MapDataExists(&itemIndex, &mapExample); + + // Then + + ASSERT_EQ(false, mapStatusExists); + +} + +TEST(CommonFunctions, GivenMapExistsStatusIsFalseAndItemIndexIs2415WhenMapDataExistsIsCalledThenConfirmItemIndex2415DoesExist) +{ + + // Tests for checking that map data exists. + + // Given + + mapStatusExists = false; + itemIndex = 2415; + + // When + + mapStatusExists = MapDataExists(&itemIndex, &mapExample); + + // Then + + ASSERT_EQ(true, mapStatusExists); + +} + +TEST(CommonFunctions, GivenMapExistsStatusIsTrueAndItemIndexIs2416WhenMapDataExistsIsCalledThenConfirmItemIndex2416DoesntExist) +{ + + // Tests for checking that map data exists. + + // Given + + mapStatusExists = true; + itemIndex = 2416; + + // When + + mapStatusExists = MapDataExists(&itemIndex, &mapExample); + + // Then + + ASSERT_EQ(false, mapStatusExists); + } \ No newline at end of file