}
+
+TEST(ContactLoad, EmailTests){
+
+ ContactDataObject TestFile;
+
+ // Check that the vCard 4.0 file loads OK.
+
+ ASSERT_EQ(CONTACTLOAD_OK, TestFile.LoadFile("LoadCheck-Load4.vcf"));
+
+ std::map<int,wxString>::iterator TestFileIter;
+ std::map<int,int>::iterator TestFileIntIter;
+
+ // Start with the general email.
+
+ TestFileIter = TestFile.GeneralEmailList.find(0);
+ ASSERT_NE(TestFile.GeneralEmailList.end(), TestFileIter);
+ ASSERT_EQ("moo@example.com", TestFileIter->second);
+
+ // Check the ALTID section.
+
+ TestFileIter = TestFile.GeneralEmailListAltID.find(0);
+ ASSERT_NE(TestFile.GeneralEmailListAltID.end(), TestFileIter);
+ ASSERT_EQ("10", TestFileIter->second);
+
+ // Check the PID section.
+
+ TestFileIter = TestFile.GeneralEmailListPID.find(0);
+ ASSERT_NE(TestFile.GeneralEmailListPID.end(), TestFileIter);
+ ASSERT_EQ("20", TestFileIter->second);
+
+ // Check the PREF section.
+
+ TestFileIntIter = TestFile.GeneralEmailListPref.find(0);
+ ASSERT_NE(TestFile.GeneralEmailListPref.end(), TestFileIntIter);
+ ASSERT_EQ(40, TestFileIntIter->second);
+
+ // Check the extra tokens.
+
+ TestFileIter = TestFile.GeneralEmailListTokens.find(0);
+ ASSERT_NE(TestFile.GeneralEmailListTokens.end(), TestFileIter);
+ ASSERT_EQ("WONDERFUL=Colour", TestFileIter->second);
+
+ // Start with the home email.
+
+ TestFileIter = TestFile.HomeEmailList.find(1);
+ ASSERT_NE(TestFile.HomeEmailList.end(), TestFileIter);
+ ASSERT_EQ("moo.home@example.com", TestFileIter->second);
+
+ // Check the ALTID section.
+
+ TestFileIter = TestFile.HomeEmailListAltID.find(1);
+ ASSERT_NE(TestFile.HomeEmailListAltID.end(), TestFileIter);
+ ASSERT_EQ("5", TestFileIter->second);
+
+ // Check the PID section.
+
+ TestFileIter = TestFile.HomeEmailListPID.find(1);
+ ASSERT_NE(TestFile.HomeEmailListPID.end(), TestFileIter);
+ ASSERT_EQ("10", TestFileIter->second);
+
+ // Check the PREF section.
+
+ TestFileIntIter = TestFile.HomeEmailListPref.find(1);
+ ASSERT_NE(TestFile.HomeEmailListPref.end(), TestFileIntIter);
+ ASSERT_EQ(20, TestFileIntIter->second);
+
+ // Check the extra tokens.
+
+ TestFileIter = TestFile.HomeEmailListTokens.find(1);
+ ASSERT_NE(TestFile.HomeEmailListTokens.end(), TestFileIter);
+ ASSERT_EQ("PEACE=quiet", TestFileIter->second);
+
+ // Start with the business email.
+
+ TestFileIter = TestFile.BusinessEmailList.find(2);
+ ASSERT_NE(TestFile.BusinessEmailList.end(), TestFileIter);
+ ASSERT_EQ("moo.business@example.com", TestFileIter->second);
+
+ // Check the ALTID section.
+
+ TestFileIter = TestFile.BusinessEmailListAltID.find(2);
+ ASSERT_NE(TestFile.BusinessEmailListAltID.end(), TestFileIter);
+ ASSERT_EQ("1", TestFileIter->second);
+
+ // Check the PID section.
+
+ TestFileIter = TestFile.BusinessEmailListPID.find(2);
+ ASSERT_NE(TestFile.BusinessEmailListPID.end(), TestFileIter);
+ ASSERT_EQ("2", TestFileIter->second);
+
+ // Check the PREF section.
+
+ TestFileIntIter = TestFile.BusinessEmailListPref.find(2);
+ ASSERT_NE(TestFile.BusinessEmailListPref.end(), TestFileIntIter);
+ ASSERT_EQ(3, TestFileIntIter->second);
+
+ // Check the extra tokens.
+
+ TestFileIter = TestFile.BusinessEmailListTokens.find(2);
+ ASSERT_NE(TestFile.BusinessEmailListTokens.end(), TestFileIter);
+ ASSERT_EQ("BUSINESS=Money", TestFileIter->second);
+
+
+}
+
// TODO: Add tests for the Contact Loading process.
\ No newline at end of file