X-Git-Url: http://Server1/repobrowser/?p=xestiaab%2F.git;a=blobdiff_plain;f=source%2Ftests%2Fxestiaab_common.h;h=5a37f830816948e90a70f108c2f0d8ebce24f5ea;hp=2102240e79a78e3c7bcab4273dbc46a79e4be43f;hb=7144da5e7c93db0df978e028fe79c41b7445cd10;hpb=f8fd44076329849a8ca9f1067c98c787fb80a7f0 diff --git a/source/tests/xestiaab_common.h b/source/tests/xestiaab_common.h index 2102240..5a37f83 100644 --- a/source/tests/xestiaab_common.h +++ b/source/tests/xestiaab_common.h @@ -23,7 +23,12 @@ #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 +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. @@ -59,18 +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(); - 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,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"); @@ -101,9 +123,13 @@ 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); @@ -113,7 +139,8 @@ TEST(CommonFunctions, GetAccountDir){ } -TEST(CommonFunctions, GetAccountDirCertificate){ +TEST(CommonFunctions, GivenThreePredefinedFilePathsWhenGetAccountDirIsCalledWithAppendServerCertificateSetToTrueForEachThenReceivedPathsMatches) +{ // Run the unit tests depending on the operating system being used. @@ -129,6 +156,8 @@ TEST(CommonFunctions, GetAccountDirCertificate){ wxString AccountDirCheck2 = ""; wxString AccountDirCheck3 = ""; + // Given + AccountDirCheck1.Append(wxString::FromUTF8(getenv("HOME"))); AccountDirCheck1.Append(wxT("/.xestiaab/accounts/")); AccountDirCheck1.Append("Example1"); @@ -144,9 +173,13 @@ TEST(CommonFunctions, GetAccountDirCertificate){ AccountDirCheck3.Append("Example3"); AccountDirCheck3.Append(wxT("/server.crt")); - wxString AccountDir1 = GetAccountDir("Example1", true); - wxString AccountDir2 = GetAccountDir("Example2", true); - wxString AccountDir3 = GetAccountDir("Example3", 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); @@ -156,7 +189,8 @@ TEST(CommonFunctions, GetAccountDirCertificate){ } -TEST(CommonFunctions, GetAccountsFile){ +TEST(CommonFunctions, GivenPredefinedFilePathWhenGetAccountsFileIsCalledThenReceivedFilePathMatches) +{ // Run the unit tests depending on the operating system being used. @@ -169,20 +203,27 @@ 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. @@ -195,20 +236,27 @@ 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. @@ -217,114 +265,620 @@ 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 - ASSERT_EQ(false, CheckBlacklist("example.com")); - ASSERT_EQ(true, CheckBlacklist("google.com")); + domainStatus = CheckBlacklist("example.com"); + + // Then + + 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()); } -TEST(CommonFunctions, ConvertToHTML){ +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, MapDataExists){ +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