public void GEDCOMDocument_Save_Saves_Document_Regardless_Of_Record_Order_And_Type(string fileName, int recordCount) { //Arrange var document = new GEDCOMDocument(); if (recordCount > 0) { document.AddRecord(Util.CreateIndividualRecord(1)); } document.AddRecord(Util.CreateHeaderRecord(fileName)); if (recordCount > 1) { document.AddRecord(Util.CreateIndividualRecord(2)); } var sb = new StringBuilder(); var writer = GEDCOMWriter.Create(sb); writer.NewLine = "\n"; //Act document.Save(writer); //Assert GEDCOMAssert.IsValidOutput(GetEmbeddedFileString(fileName), sb); }
public void GEDCOMDocument_RemoveRecord_Throws_If_Record_IsNull() { var document = new GEDCOMDocument(); //Assert Assert.Throws <ArgumentNullException>(() => document.RemoveRecord(null)); }
public void GEDCOMDocument_AddRecords_Exception_If_RecordList_IsNull() { var document = new GEDCOMDocument(); //Assert Assert.Throws <ArgumentNullException>(() => document.AddRecords(null)); }
public void GEDCOMDocument_Load_Throws_If_GEDCOMReader_Parameter_IsNull() { GEDCOMReader reader = null; var document = new GEDCOMDocument(); //Assert Assert.Throws <ArgumentNullException>(() => document.Load(reader)); }
public void GEDCOMDocument_Save_If_Stream_Parameter_IsNull() { var s = GetEmbeddedFileStream("InvalidFileName"); var document = new GEDCOMDocument(); //Assert Assert.Throws <ArgumentNullException>(() => document.Save(s)); }
public void GEDCOMDocument_Save_If_GEDCOMWriter_Parameter_IsNull() { GEDCOMWriter writer = null; var document = new GEDCOMDocument(); //Assert Assert.Throws <ArgumentNullException>(() => document.Save(writer)); }
private void LoadDocument() { _document = new GEDCOMDocument(); using (var stream = new FileStream(_path, FileMode.Open, FileAccess.Read)) { _document.Load(stream); } }
public void GEDCOMDocument_SelectChildsFamilyRecord_Throws_On_Null_Or_Empty_ChildId(string fileName, string childId) { //Arrange var document = new GEDCOMDocument(); document.LoadGEDCOM(GetEmbeddedFileString(fileName)); //Act, Assert Assert.Throws <ArgumentNullException>(() => document.SelectChildsFamilyRecord(childId)); }
private int GetIndividualCount(string file) { string fileName = Path.Combine(FilePath, file); Stream testStream = new FileStream(fileName, FileMode.Open); var doc = new GEDCOMDocument(); doc.Load(testStream); return(doc.IndividualRecords.Count); }
public void GEDCOMDocument_SelectFamilyRecords_Throws_On_Null_Or_Empty_IndividualId(string fileName, string individualId) { //Arrange var document = new GEDCOMDocument(); document.LoadGEDCOM(GetEmbeddedFileString(fileName)); //Act, Assert Assert.Throws <ArgumentException>(() => document.SelectFamilyRecords(individualId)); }
public void GEDCOMDocument_SelectFamilyRecord_Throws_On_Null_WifeId(string fileName, string husbandId, string wifeId) { //Arrange var document = new GEDCOMDocument(); document.LoadGEDCOM(GetEmbeddedFileString(fileName)); //Act, Assert Assert.Throws <ArgumentNullException>(() => document.SelectFamilyRecord(husbandId, wifeId)); }
public void GEDCOMDocument_LoadGEDCOM_Loads_Document_With_Individuals(string fileName, int recordCount) { //Arrange var document = new GEDCOMDocument(); //Act document.LoadGEDCOM(GetEmbeddedFileString(fileName)); //Assert Assert.AreEqual(recordCount, document.IndividualRecords.Count); }
public void GEDCOMDocument_AddRecord_Adds_HeaderRecord() { //Arrange var document = new GEDCOMDocument(); var record = new GEDCOMHeaderRecord(); //Act document.AddRecord(record); //Assert Assert.IsNotNull(document.SelectHeader()); }
public void GEDCOMDocument_SelectFamilyRecord_Returns_Null_When_Given_InValid_HusbandId_Or_WifeId(string fileName, string husbandId, string wifeId) { //Arrange var document = new GEDCOMDocument(); document.LoadGEDCOM(GetEmbeddedFileString(fileName)); //Act var record = document.SelectFamilyRecord(husbandId, wifeId); //Assert Assert.IsNull(record); }
public void GEDCOMDocument_AddRecord_Adds_Record_To_Individuals_Collection() { //Arrange var document = new GEDCOMDocument(); var record = new GEDCOMIndividualRecord(1); int count = document.IndividualRecords.Count; //Act document.AddRecord(record); //Assert Assert.AreEqual(count + 1, document.IndividualRecords.Count); }
public void GEDCOMDocument_SelectChildsFamilyRecord_Returns_Null_When_Given_InValid_ChildId(string fileName, string childId) { //Arrange var document = new GEDCOMDocument(); document.LoadGEDCOM(GetEmbeddedFileString(fileName)); //Act var record = document.SelectChildsFamilyRecord(childId); //Assert Assert.IsNull(record); }
public void GEDCOMDocument_SelectFamilyRecords_Returns_List_Of_Families(string fileName, string individualId, int recordCount) { //Arrange var document = new GEDCOMDocument(); document.LoadGEDCOM(GetEmbeddedFileString(fileName)); //Act var records = document.SelectFamilyRecords(individualId); //Assert Assert.AreEqual(recordCount, records.Count()); }
public void GEDCOMDocument_Load_Loads_Document_With_Header_If_Document_Is_WellFormed(string fileName) { //Arrange var document = new GEDCOMDocument(); //Act using (Stream s = GetEmbeddedFileStream(fileName)) { document.Load(new StreamReader(s)); } GEDCOMAssert.IsValidHeader(document.SelectHeader()); GEDCOMAssert.HeaderIsEqual(Util.CreateHeaderRecord(fileName), document.SelectHeader()); }
public void GEDCOMDocument_SelectFamilyRecord_Returns_Family_When_Given_Valid_Id(string fileName, string familyId) { //Arrange var document = new GEDCOMDocument(); document.LoadGEDCOM(GetEmbeddedFileString(fileName)); //Act var record = document.SelectFamilyRecord(familyId); //Assert Assert.IsNotNull(record); Assert.AreEqual(record.Id, familyId); }
public void GEDCOMDocument_Load_Loads_Document_With_Individuals_Using_TextReader(string fileName, int recordCount) { //Arrange var document = new GEDCOMDocument(); //Act using (Stream s = GetEmbeddedFileStream(fileName)) { document.Load(new StreamReader(s)); } //Assert Assert.AreEqual(recordCount, document.IndividualRecords.Count); }
public void GEDCOMDocument_SelectIndividualRecord_Returns_Null_When_Given_InValid_Id(string fileName, int recordNo) { //Arrange var document = new GEDCOMDocument(); document.LoadGEDCOM(GetEmbeddedFileString(fileName)); string id = String.Format("@I{0}@", recordNo); //Act var record = document.SelectIndividualRecord(id); //Assert Assert.IsNull(record); }
public void GEDCOMDocument_SelectFamilyRecords_Returns_Family_When_Given_Valid_WifeId(string fileName, string wifeId, string familyId) { //Arrange var document = new GEDCOMDocument(); document.LoadGEDCOM(GetEmbeddedFileString(fileName)); string husbandId = String.Empty; //Act var record = document.SelectFamilyRecords(wifeId).SingleOrDefault(); //Assert Assert.IsNotNull(record); Assert.AreEqual(record.Id, familyId); }
public void GEDCOMDocument_RemoveRecord_Throws_If_Record_Not_Present() { //Arrange var document = new GEDCOMDocument(); document.AddRecord(Util.CreateHeaderRecord("Header")); for (int i = 1; i <= 2; i++) { document.AddRecord(Util.CreateIndividualRecord(i)); } var record = Util.CreateIndividualRecord(3); //Assert Assert.Throws <ArgumentOutOfRangeException>(() => document.RemoveRecord(record)); }
public void GEDCOMDocument_AddRecords_Add_Records_To_Individuals_Collection(int recordCount) { //Arrange var document = new GEDCOMDocument(); var records = new GEDCOMRecordList(); int count = document.Records.Count; for (int i = 1; i <= recordCount; i++) { records.Add(Util.CreateIndividualRecord(i)); } //Act document.AddRecords(records); //Assert Assert.AreEqual(count + recordCount, document.IndividualRecords.Count); }
public void GEDCOMDocument_SaveGEDCOM_Saves_Document(string fileName, int individualCount, int familyCount) { //Arrange var document = new GEDCOMDocument(); document.AddRecord(Util.CreateHeaderRecord(fileName)); for (int i = 1; i <= individualCount; i++) { document.AddRecord(Util.CreateIndividualRecord(i)); } for (int i = 1; i <= familyCount; i++) { document.AddRecord(Util.CreateFamilyRecord(i)); } //Assert GEDCOMAssert.IsValidOutput(GetEmbeddedFileString(fileName), document.SaveGEDCOM()); }
public void GEDCOMDocument_RemoveRecord_Removes_Record_From_Individuals_Collection() { //Arrange var document = new GEDCOMDocument(); document.AddRecord(Util.CreateHeaderRecord("Header")); for (int i = 1; i <= 2; i++) { document.AddRecord(Util.CreateIndividualRecord(i)); } var record = document.IndividualRecords[1] as GEDCOMIndividualRecord; //Act document.RemoveRecord(record); //Assert Assert.AreEqual(1, document.IndividualRecords.Count); }
public void GEDCOMDocument_Save_Saves_Document_Using_TextWriter(string fileName, int recordCount) { //Arrange var document = new GEDCOMDocument(); document.AddRecord(Util.CreateHeaderRecord(fileName)); for (int i = 1; i <= recordCount; i++) { document.AddRecord(Util.CreateIndividualRecord(i)); } var sb = new StringBuilder(); var writer = new StringWriter(sb); writer.NewLine = "\n"; //Act document.Save(writer); //Assert GEDCOMAssert.IsValidOutput(GetEmbeddedFileString(fileName), sb); }