public void GetDataPins_NotEmpty_Ok() { MsHistoryPart part = GetEmptyPart(); for (int n = 1; n <= 3; n++) { bool even = n % 2 == 0; part.Provenances.Add(new GeoAddress { Area = even ? "France" : "Italy", }); part.Owners.Add(even ? "even" : "odd"); } List <DataPin> pins = part.GetDataPins(null).ToList(); Assert.Equal(4, pins.Count); DataPin pin = pins.Find(p => p.Name == "area" && p.Value == "italy"); Assert.NotNull(pin); TestHelper.AssertPinIds(part, pin); pin = pins.Find(p => p.Name == "area" && p.Value == "france"); Assert.NotNull(pin); TestHelper.AssertPinIds(part, pin); pin = pins.Find(p => p.Name == "owner" && p.Value == "even"); Assert.NotNull(pin); TestHelper.AssertPinIds(part, pin); pin = pins.Find(p => p.Name == "owner" && p.Value == "odd"); Assert.NotNull(pin); TestHelper.AssertPinIds(part, pin); }
public void Part_Is_Serializable() { MsHistoryPart part = GetPart(); string json = TestHelper.SerializePart(part); MsHistoryPart part2 = TestHelper.DeserializePart <MsHistoryPart>(json); Assert.Equal(part.Id, part2.Id); Assert.Equal(part.TypeId, part2.TypeId); Assert.Equal(part.ItemId, part2.ItemId); Assert.Equal(part.RoleId, part2.RoleId); Assert.Equal(part.CreatorId, part2.CreatorId); Assert.Equal(part.UserId, part2.UserId); Assert.Equal(part.Provenances.Count, part2.Provenances.Count); }
public void Part_Is_Serializable() { MsHistoryPart part = GetPart(2); string json = TestHelper.SerializePart(part); MsHistoryPart part2 = TestHelper.DeserializePart <MsHistoryPart>(json); Assert.Equal(part.Id, part2.Id); Assert.Equal(part.TypeId, part2.TypeId); Assert.Equal(part.ItemId, part2.ItemId); Assert.Equal(part.RoleId, part2.RoleId); Assert.Equal(part.CreatorId, part2.CreatorId); Assert.Equal(part.UserId, part2.UserId); // TODO: details }
public void Seed_Ok() { MsHistoryPartSeeder seeder = new MsHistoryPartSeeder(); seeder.SetSeedOptions(_seedOptions); IPart part = seeder.GetPart(_item, null, _factory); Assert.NotNull(part); MsHistoryPart p = part as MsHistoryPart; Assert.NotNull(p); TestHelper.AssertPartMetadata(p); Assert.NotEmpty(p.Provenances); Assert.NotNull(p.History); }
public void GetDataPins_Empty_NoPin() { MsHistoryPart part = GetEmptyPart(); Assert.Empty(part.GetDataPins(null)); }
public void GetDataPins_Ok() { MsHistoryPart part = GetPart(3); List <DataPin> pins = part.GetDataPins(null).ToList(); Assert.Equal(17, pins.Count); TestHelper.AssertValidDataPinNames(pins); DataPin pin = pins.Find(p => p.Name == "area"); Assert.NotNull(pin); TestHelper.AssertPinIds(part, pin); Assert.Equal("provence", pin.Value); pin = pins.Find(p => p.Name == "pers-count"); Assert.NotNull(pin); TestHelper.AssertPinIds(part, pin); Assert.Equal("3", pin.Value); pin = pins.Find(p => p.Name == "ann-count"); Assert.NotNull(pin); TestHelper.AssertPinIds(part, pin); Assert.Equal("3", pin.Value); pin = pins.Find(p => p.Name == "rest-count"); Assert.NotNull(pin); TestHelper.AssertPinIds(part, pin); Assert.Equal("3", pin.Value); for (int n = 1; n <= 3; n++) { pins.Find(p => p.Name == "pers-name" && p.Value == $"robert mc{n}"); Assert.NotNull(pin); TestHelper.AssertPinIds(part, pin); var date = HistoricalDate.Parse( (1200 + n).ToString(CultureInfo.InvariantCulture) + " AD"); string expectedDate = date.GetSortValue().ToString(CultureInfo.InvariantCulture); pin = pins.Find(p => p.Name == "pers-date-value" && p.Value == expectedDate); Assert.NotNull(pin); TestHelper.AssertPinIds(part, pin); pin = pins.Find(p => p.Name == "rest-date-value" && p.Value == expectedDate); Assert.NotNull(pin); TestHelper.AssertPinIds(part, pin); } pin = pins.Find(p => p.Name == "ann-odd-count"); Assert.NotNull(pin); TestHelper.AssertPinIds(part, pin); Assert.Equal("2", pin.Value); pin = pins.Find(p => p.Name == "ann-even-count"); Assert.NotNull(pin); TestHelper.AssertPinIds(part, pin); Assert.Equal("1", pin.Value); pin = pins.Find(p => p.Name == "rest-odd-count"); Assert.NotNull(pin); TestHelper.AssertPinIds(part, pin); Assert.Equal("2", pin.Value); pin = pins.Find(p => p.Name == "rest-even-count"); Assert.NotNull(pin); TestHelper.AssertPinIds(part, pin); Assert.Equal("1", pin.Value); }