Home | News | Projects | Releases
Bugs | RFE | Repositories | Help
Added unit tests for checking if data within a map exists.
[xestiaab/.git] / source / tests / xestiaab_common.h
index 248582e..d55063c 100644 (file)
 
 #include <gtest/gtest.h>
 #include "../common/dirs.h"
+#include "../common/filename.h"
+#include "../common/mime.h"
+#include "../common/svrblist.h"
+#include "../common/textprocessing.h"
 
 TEST(CommonFunctions, GetUserDir){
        
@@ -60,8 +64,7 @@ TEST(CommonFunctions, GetUserPrefDir){
        UserDirCheck.Append(wxT("/.xestiaab/preferences/"));
        
        wxString UserDir = GetUserPrefDir();
-       
-       ASSERT_EQ(UserDir, UserDirCheck);
+               ASSERT_EQ(UserDir, UserDirCheck);
        
 #endif
        
@@ -177,4 +180,208 @@ TEST(CommonFunctions, GetAccountsFile){
        
 #endif
        
+}
+
+TEST(CommonFunctions, GetSettingsFile){
+       
+       // 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/<user>/.xestiaab/preferences/accounts
+       
+       wxString SettingsFileCheck = "";
+       SettingsFileCheck.Clear();
+       SettingsFileCheck.Append(wxString::FromUTF8(getenv("HOME")));
+       SettingsFileCheck.Append(wxT("/.xestiaab/preferences/settings"));
+       
+       wxString SettingsFile = GetSettingsFile();
+       
+       ASSERT_EQ(SettingsFile, SettingsFileCheck);
+       
+#endif
+       
+}
+
+TEST(CommonFunctions, CreateFilenamePath){
+       
+       // Run the unit tests depending on the operating system being used.
+       
+#if defined(__WIN32__)
+       
+#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"));
+       
+#endif
+       
+}
+
+TEST(CommonFunctions, GetMIME){
+       
+       // Get the MIME type based on the files given.
+       
+       ASSERT_EQ("text/plain", GetMIME("TextMIMEExample.txt"));
+       ASSERT_EQ("image/png", GetMIME("PictureMIMEExample.png"));
+       
+}
+
+TEST(CommonFunctions, CheckBlacklist){
+       
+       // Test that the blacklist is actually working.
+       
+       ASSERT_EQ(false, CheckBlacklist("example.com"));
+       ASSERT_EQ(true, CheckBlacklist("google.com"));
+       
+}
+
+TEST(CommonFunctions, EscapeString){
+
+       // Test the escape string function.
+
+       wxString EscapeStringData = "Example";
+       EscapeString(&EscapeStringData, false);
+       ASSERT_EQ("Example", EscapeStringData.ToStdString());
+
+       EscapeStringData = "Here we go, an \"example\" of escaping string.";
+       EscapeString(&EscapeStringData, false);
+       ASSERT_EQ("Here we go\\, an \"example\" of escaping string.", EscapeStringData.ToStdString());
+
+       EscapeStringData = "Lets put some \nnew \nlines \nin \nhere.";
+       EscapeString(&EscapeStringData, false);
+       ASSERT_EQ("Lets put some \\nnew \\nlines \\nin \\nhere.", EscapeStringData.ToStdString());
+
+       EscapeStringData = "Lets put some \r\nnew \r\nlines \r\nin \r\nhere.";
+       EscapeString(&EscapeStringData, false);
+       ASSERT_EQ("Lets put some \\nnew \\nlines \\nin \\nhere.", EscapeStringData.ToStdString());
+
+       EscapeStringData = "A:\\path\\example\\lets\\have\\some\\fun";
+       EscapeString(&EscapeStringData, false);
+       ASSERT_EQ("A:\\\\path\\\\example\\\\lets\\\\have\\\\some\\\\fun", EscapeStringData.ToStdString());
+
+}
+
+TEST(CommonFunctions, CaptureString){
+
+       // Test the capture string function.
+       
+       wxString CaptureStringData = "Example";
+       CaptureString(&CaptureStringData, false);
+       ASSERT_EQ("Example", CaptureStringData.ToStdString());
+
+       CaptureStringData = "Here we go\\, an \"example\" of escaping string.";
+       CaptureString(&CaptureStringData, false);
+       ASSERT_EQ("Here we go, an \"example\" of escaping string.", CaptureStringData.ToStdString());
+
+       CaptureStringData = "Lets put some \\nnew \\nlines \\nin \\nhere.";
+       CaptureString(&CaptureStringData, false);
+       ASSERT_EQ("Lets put some \nnew \nlines \nin \nhere.", CaptureStringData.ToStdString());
+
+       CaptureStringData = "A:\\\\path\\\\example\\\\lets\\\\have\\\\some\\\\fun";
+       CaptureString(&CaptureStringData, false);
+       ASSERT_EQ("A:\\path\\example\\lets\\have\\some\\fun", CaptureStringData.ToStdString());
+
+}
+
+TEST(CommonFunctions, ResetUnusedString){
+
+       // Tests for resetting an unused string.
+
+       wxString ResetUnusedStringData = "Random string with a \\\\\\\\serverpath\\\\location";
+       ResetUnusedString(&ResetUnusedStringData);
+       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());
+
+       ResetUnusedStringData = "Some text \\nwith new \\nlines!";
+       ResetUnusedString(&ResetUnusedStringData);
+       ASSERT_EQ("Some text \nwith new \nlines!", ResetUnusedStringData.ToStdString());
+       
+       ResetUnusedStringData = "And now the list of characters: \\\\ \\n \\; \\,";
+       ResetUnusedString(&ResetUnusedStringData);
+       ASSERT_EQ("And now the list of characters: \\ \n ; ,", ResetUnusedStringData.ToStdString());
+
+}
+
+TEST(CommonFunctions, ConvertToHTML){
+
+       // Tests for converting data for inserting into a HTML
+       // formatted document.
+
+       wxString ConvertToHTMLData = "The test line where < is probably better than >!";
+       ConvertToHTML(&ConvertToHTMLData);
+       ASSERT_EQ("The test line where &lt; is probably better than &gt;!", ConvertToHTMLData.ToStdString());
+
+       ConvertToHTMLData = "More testing &<>\n";
+       ConvertToHTML(&ConvertToHTMLData);
+       ASSERT_EQ("More testing &amp;&lt;&gt;<br>", ConvertToHTMLData.ToStdString());
+
+       ConvertToHTMLData = "This is the first line.\nThis is the second line.\nThis is the third line.";
+       ConvertToHTML(&ConvertToHTMLData);
+       ASSERT_EQ("This is the first line.<br>This is the second line.<br>This is the third line.", ConvertToHTMLData.ToStdString());
+
+}
+
+TEST(CommonFunctions, MapDataExists){
+
+       // Tests for checking that map data exists.
+
+       std::map<int,int> MapExample;
+       int ItemIndex = 0;
+
+       MapExample.insert(std::make_pair(0,1));
+       MapExample.insert(std::make_pair(1,1));
+       MapExample.insert(std::make_pair(2,1));
+       MapExample.insert(std::make_pair(5,1));
+       MapExample.insert(std::make_pair(500,1));
+       MapExample.insert(std::make_pair(2415,1));
+
+       ASSERT_EQ(true, MapDataExists(&ItemIndex, &MapExample));
+
+       ItemIndex = 1;
+       ASSERT_EQ(true, MapDataExists(&ItemIndex, &MapExample));
+
+       ItemIndex = 2;
+       ASSERT_EQ(true, MapDataExists(&ItemIndex, &MapExample));
+
+       ItemIndex = 3;
+       ASSERT_EQ(false, MapDataExists(&ItemIndex, &MapExample));
+
+       ItemIndex = 5;
+       ASSERT_EQ(true, MapDataExists(&ItemIndex, &MapExample));
+
+       ItemIndex = 6;
+       ASSERT_EQ(false, MapDataExists(&ItemIndex, &MapExample));
+
+       ItemIndex = 499;
+       ASSERT_EQ(false, MapDataExists(&ItemIndex, &MapExample));
+
+       ItemIndex = 500;
+       ASSERT_EQ(true, MapDataExists(&ItemIndex, &MapExample));
+
+       ItemIndex = 501;
+       ASSERT_EQ(false, MapDataExists(&ItemIndex, &MapExample));
+
+       ItemIndex = 2414;
+       ASSERT_EQ(false, MapDataExists(&ItemIndex, &MapExample));
+
+       ItemIndex = 2415;
+       ASSERT_EQ(true, MapDataExists(&ItemIndex, &MapExample));
+
+       ItemIndex = 2416;
+       ASSERT_EQ(false, MapDataExists(&ItemIndex, &MapExample));
+
 }
\ No newline at end of file
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