wxString SaveDataCompare = "BEGIN:VCARD\n"
"VERSION:4.0\n"
"PRODID:-//Xestia//Address Book Unit Testing//KW\n"
+ "REV:20160703T091000Z\n"
"FN:Test vCard\n"
"TITLE:Knight of the Tests\n"
"TITLE:The Tester of Cornwall\n"
SaveDataCompare = "BEGIN:VCARD\n"
"VERSION:4.0\n"
"PRODID:-//Xestia//Address Book Unit Testing//KW\n"
+ "REV:20160703T091000Z\n"
"FN:Test vCard\n"
"TITLE:The Third Title\n"
"TITLE:Knight of the Tests\n"
"PRODID:-//Xestia//Address Book Unit Testing//KW\n"
"UID:903588-9082374-989120310-AAFECDBCDF\n"
"KIND:individual\n"
+ "REV;TEST=YES;DATA=NO;MORE=MAYBE:20160703T091000Z\n"
"XML:<a xmlns=\"http://www.w3.org/1999/xhtml\"\\n href=\"http://example.com/\">Ex\n"
" ample Page 1</a>\n"
"XML;ALTID=3:<a xmlns=\"http://www.w3.org/1999/xhtml\"\\n href=\"http://example.\n"
"EMAIL;ALTID=10;PID=20;PREF=40;WONDERFUL=Colour:moo@example.com\n"
"EMAIL;TYPE=home;ALTID=5;PID=10;PREF=20;PEACE=quiet:moo.home@example.com\n"
"EMAIL;TYPE=work;ALTID=1;PID=2;PREF=3;BUSINESS=Money:moo.business@example.com\n"
+ "IMPP;ALTID=10;MEDIATYPE=text/plain;PID=20;PREF=40;WONDERFUL=Colour:skype:moo@\n"
+ " example.com\n"
+ "IMPP;TYPE=home;ALTID=20;MEDIATYPE=text/reallyplain;PID=40;PREF=80;PEACE=quiet\n"
+ " :msn:moo.home@example.com\n"
+ "IMPP;TYPE=work;ALTID=98;MEDIATYPE=text/superplain;PID=99;PREF=50;BUSINESS=Mon\n"
+ " ey:xmpp:moo.business@example.com\n"
+ "TEL;TYPE=\"fax,cell\";ALTID=10;PID=20;PREF=40;WONDERFUL=Colour:tel:00000000\n"
+ "TEL;TYPE=\"home,fax\";ALTID=10;PID=20;PREF=40;BUSINESS=Money:tel:00001111\n"
+ "TEL;TYPE=\"work,voice\";ALTID=25;PID=50;PREF=75;BEEP=Boop:tel:22221111\n"
"LANG;ALTID=20;PID=40;PREF=80;GELFORN=Great:kw\n"
"LANG;TYPE=home;ALTID=22;PID=45;PREF=90;LANGUAGE=yes:en\n"
"LANG;TYPE=work;ALTID=10;PID=15;PREF=20;FFENSTRI=ie:cy\n"
"VND-696-CAKE:Lemon\n"
"VND-696-DRINK:Orange\n"
"VND-696-MUSIC:Shiena Nishizawa\n"
+ "X-FARM:Yard\n"
+ "X-FARM:Animals\n"
+ "X-FARM;LOCATION=Back;TYPE=Vehicles:Shed\n"
+ "X-DISKSERIAL:14444\n"
+ "X-DISKSERIAL:7555\n"
+ "X-DISKSERIAL;STATUS=DESTROYED;TYPE=FLASH:3250539032590\n"
+ "X-FOODS;STATUS=HIGH:Lemon Cake\n"
+ "X-FOODS;STATUS=LOW:Starrey Gazey Pie\n"
+ "X-FOODS;STATUS=FAVOURITE;TYPE=CHEESEANDONION:Cornish Pasties\n"
"END:VCARD";
ASSERT_EQ(CONTACTLOAD_OK, TestFile3.LoadFile("LoadCheck-Load4.vcf"));
ASSERT_EQ(SaveDataCompare, SaveData);
+}
+
+TEST(ContactSave, ContactSaveFileTests){
+
+ ContactDataObject TestFile1;
+ ContactDataObject TestFile2;
+ ContactDataObject TestFile3;
+
+ ASSERT_EQ(CONTACTLOAD_OK, TestFile1.LoadFile("LoadCheck-Load1.vcf"));
+ ASSERT_EQ(CONTACTSAVE_OK, TestFile1.SaveFile("SaveCheck-Save1.vcf"));
+ ASSERT_EQ(CONTACTSAVE_FILEERROR, TestFile1.SaveFile("/invalidfile"));
+
+ ASSERT_EQ(CONTACTLOAD_OK, TestFile2.LoadFile("LoadCheck-Load2.vcf"));
+ ASSERT_EQ(CONTACTSAVE_OK, TestFile2.SaveFile("SaveCheck-Save2.vcf"));
+
+ ASSERT_EQ(CONTACTLOAD_OK, TestFile3.LoadFile("LoadCheck-Load4.vcf"));
+ ASSERT_EQ(CONTACTSAVE_OK, TestFile3.SaveFile("SaveCheck-Save4.vcf"));
+
}
\ No newline at end of file