+ // When
+
+ testFileIter = testFile.GroupsListPID.find(0);
+
+ // Then
+
+ ASSERT_NE(testFile.GroupsListPID.end(), testFileIter);
+ ASSERT_EQ("40", testFileIter->second);
+
+}
+
+TEST(ContactLoad, GivenContactDataObjectWhenFindIsCalledOnGroupsListPreferenceForFirstGroupThenOnlyFirstGroupPreferenceIsReturned)
+{
+
+ // Check the PREF parameter for MEMBER.
+
+ std::map<int,wxString>::iterator testFileIter;
+ std::map<int,int>::iterator testFileIntIter;
+ ContactDataObject testFile;
+
+ // Given
+
+ ContactLoadStatus testFileLoadStatus = testFile.LoadFile("LoadCheck-Load4.vcf");
+ ASSERT_EQ(CONTACTLOAD_OK, testFileLoadStatus);
+
+ // When
+
+ testFileIntIter = testFile.GroupsListPref.find(0);
+
+ // Then
+
+ ASSERT_NE(testFile.GroupsListPref.end(), testFileIntIter);
+ ASSERT_EQ(45, testFileIntIter->second);
+
+}
+
+TEST(ContactLoad, GivenContactDataObjectWhenFindIsCalledOnGroupsListMediatypeForFirstGroupThenOnlyFirstGroupMediatypeIsReturned)
+{
+
+ // Check the MEDIATYPE parameter for MEMBER.
+
+ std::map<int,wxString>::iterator testFileIter;
+ std::map<int,int>::iterator testFileIntIter;
+ ContactDataObject testFile;
+
+ // Given
+
+ ContactLoadStatus testFileLoadStatus = testFile.LoadFile("LoadCheck-Load4.vcf");
+ ASSERT_EQ(CONTACTLOAD_OK, testFileLoadStatus);
+
+ // When
+
+ testFileIter = testFile.GroupsListMediaType.find(0);
+
+ // Then
+
+ ASSERT_NE(testFile.GroupsListMediaType.end(), testFileIter);
+ ASSERT_EQ("text/plain", testFileIter->second);
+
+}
+
+TEST(ContactLoad, GivenContactDataObjectWhenFindIsCalledOnGroupsListExtraTokensForFirstGroupThenOnlyFirstGroupExtraTokensIsReturned)
+{
+
+ // Check the extra tokens parameter for MEMBER.
+
+ std::map<int,wxString>::iterator testFileIter;
+ std::map<int,int>::iterator testFileIntIter;
+ ContactDataObject testFile;
+
+ // Given
+
+ ContactLoadStatus testFileLoadStatus = testFile.LoadFile("LoadCheck-Load4.vcf");
+ ASSERT_EQ(CONTACTLOAD_OK, testFileLoadStatus);
+
+ // When