private IEventCentricTestSpecificationBuilder ExtraScenarioAddressGetRetired(Fixture fixture, CrabHouseNumberId crabHouseNumberId, WkbGeometry geometry1, WkbGeometry geometry2, WkbGeometry geometry3) { var addressId = new AddressId(crabHouseNumberId.CreateDeterministicId()); var command = new ImportHouseNumberFromCrab( crabHouseNumberId, _streetNameId, _houseNumber, fixture.Create <GrbNotation>(), new CrabLifetime(LocalDateTime.FromDateTime(new DateTime(1830, 1, 1)), LocalDateTime.FromDateTime(new DateTime(2014, 10, 3))), new CrabTimestamp(Instant.FromDateTimeOffset(new DateTimeOffset(2014, 10, 17, 20, 26, 30, 480, TimeSpan.Zero))), new CrabOperator("13029:kenisils"), CrabModification.Historize, Enum.Parse <CrabOrganisation>("1")); return(new AutoFixtureScenario(fixture) .Given(Scenario10(fixture, crabHouseNumberId, geometry1, geometry2, geometry3)) .When(command) .Then(addressId, new AddressWasRetired(addressId), new AddressPositionWasCorrected(addressId, new AddressGeometry(GeometryMethod.AppointedByAdministrator, GeometrySpecification.Parcel, GeometryHelpers.CreateEwkbFrom(geometry2))), command.ToLegacyEvent())); }
public void ThenAddressRemovedException( Fixture fixture, AddressId addressId, ImportHouseNumberFromCrab importHouseNumberFromCrab) { Assert(RemovedAddressScenario(fixture) .When(importHouseNumberFromCrab) .Throws(new AddressRemovedException($"Cannot change removed address for address id {addressId}"))); }
public void ThenAddressRemovedExceptionIfModificationIsDelete( Fixture fixture, AddressId addressId, ImportHouseNumberFromCrab importHouseNumberFromCrab) { importHouseNumberFromCrab = importHouseNumberFromCrab.WithCrabModification(CrabModification.Delete); Assert(RemovedAddressScenario(fixture) .When(importHouseNumberFromCrab) .Throws(new AddressRemovedException($"Cannot change removed address for address id {addressId}"))); }
public void ThenNoStatusChangeIfLifetimeIsFinite( Fixture fixture, AddressId addressId, ImportHouseNumberFromCrab importHouseNumberFromCrab) { importHouseNumberFromCrab = importHouseNumberFromCrab .WithLifetime(new Fixture().Customize(new NodaTimeCustomization()).Customize(new WithFiniteLifetime()).Create <CrabLifetime>()); Assert(RetiredAddressScenario(fixture) .When(importHouseNumberFromCrab) .Then(addressId, importHouseNumberFromCrab.ToLegacyEvent())); }
public void ThenAddressStatusWasRemovedIfPreviousStatusWasRemoved( Fixture fixture, AddressId addressId, ImportHouseNumberFromCrab importHouseNumberFromCrab) { Assert(RegisteredAddressScenario(fixture) .Given <AddressStatusWasRemoved>(addressId) .Given <AddressWasRetired>(addressId) .When(importHouseNumberFromCrab) .Then(addressId, new AddressStatusWasRemoved(addressId), importHouseNumberFromCrab.ToLegacyEvent())); }
private static void ImportHouseNumberFromCrab(Address address, ImportHouseNumberFromCrab message) { address.ImportHouseNumberFromCrab( message.HouseNumberId, message.StreetNameId, message.HouseNumber, message.GrbNotation, message.Lifetime, message.Timestamp, message.Operator, message.Modification, message.Organisation); }
public static ImportHouseNumberFromCrab WithInfiniteLifetime(this ImportHouseNumberFromCrab command) { return(new ImportHouseNumberFromCrab( command.HouseNumberId, command.StreetNameId, command.HouseNumber, command.GrbNotation, new CrabLifetime(new Fixture().Create <LocalDateTime>(), null), command.Timestamp, command.Operator, command.Modification, command.Organisation)); }
public static ImportHouseNumberFromCrab WithLifetime(this ImportHouseNumberFromCrab command, CrabLifetime lifetime) { return(new ImportHouseNumberFromCrab( command.HouseNumberId, command.StreetNameId, command.HouseNumber, command.GrbNotation, lifetime, command.Timestamp, command.Operator, command.Modification, command.Organisation)); }
public static AddressHouseNumberWasImportedFromCrab ToLegacyEvent(this ImportHouseNumberFromCrab command) { return(new AddressHouseNumberWasImportedFromCrab( command.HouseNumberId, command.StreetNameId, command.HouseNumber, command.GrbNotation, command.Lifetime, command.Timestamp, command.Operator, command.Modification, command.Organisation)); }
public void ThenHouseNumberChanged( Fixture fixture, AddressId addressId, ImportHouseNumberFromCrab importHouseNumberFromCrab) { importHouseNumberFromCrab = importHouseNumberFromCrab .WithHouseNumber(new Fixture().Create <HouseNumber>()); Assert(RegisteredAddressScenario(fixture) .When(importHouseNumberFromCrab) .Then(addressId, new AddressHouseNumberWasChanged(addressId, importHouseNumberFromCrab.HouseNumber), importHouseNumberFromCrab.ToLegacyEvent())); }
public void ThenAddressWasRemovedIfModificationIsDeleted( Fixture fixture, AddressId addressId, ImportHouseNumberFromCrab importHouseNumberFromCrab) { importHouseNumberFromCrab = importHouseNumberFromCrab .WithCrabModification(CrabModification.Delete); Assert(RegisteredAddressScenario(fixture) .When(importHouseNumberFromCrab) .Then(addressId, new AddressWasRemoved(addressId), importHouseNumberFromCrab.ToLegacyEvent())); }
public void GivenNoStreetNameThenAddressStreetNameWasChanged( Fixture fixture, AddressId addressId, StreetNameId streetNameId, ImportHouseNumberFromCrab importHouseNumberFromCrab) { importHouseNumberFromCrab = importHouseNumberFromCrab .WithStreetNameId(new Fixture().Customize(new WithStreetNameIdExcept(streetNameId)).Create <CrabStreetNameId>()); Assert(RegisteredAddressScenario(fixture) .When(importHouseNumberFromCrab) .Then(addressId, new AddressStreetNameWasChanged(addressId, StreetNameId.CreateFor(importHouseNumberFromCrab.StreetNameId)), importHouseNumberFromCrab.ToLegacyEvent())); }
public void ThenAddressWasCorrectedToRetiredIfLifetimeIsFiniteAndCorrection( Fixture fixture, AddressId addressId, ImportHouseNumberFromCrab importHouseNumberFromCrab) { importHouseNumberFromCrab = importHouseNumberFromCrab. WithLifetime(new Fixture().Customize(new NodaTimeCustomization()).Customize(new WithFiniteLifetime()).Create <CrabLifetime>()) .WithCrabModification(CrabModification.Correction); Assert(RegisteredAddressScenario(fixture) .When(importHouseNumberFromCrab) .Then(addressId, new AddressWasCorrectedToRetired(addressId), importHouseNumberFromCrab.ToLegacyEvent())); }
public void ThenAddressWasCorrectedToProposedIfPreviousStatusWasProposed( Fixture fixture, AddressId addressId, ImportHouseNumberFromCrab importHouseNumberFromCrab) { importHouseNumberFromCrab = importHouseNumberFromCrab.WithCrabModification(CrabModification.Correction); Assert(RegisteredAddressScenario(fixture) .Given <AddressWasProposed>(addressId) .Given <AddressWasRetired>(addressId) .When(importHouseNumberFromCrab) .Then(addressId, new AddressWasCorrectedToProposed(addressId), importHouseNumberFromCrab.ToLegacyEvent())); }
public void GivenAddressPositionHasEndDate( IFixture fixture, AddressId addressId, AddressHouseNumberPositionWasImportedFromCrab addressHouseNumberPositionWasImported, ImportHouseNumberFromCrab importHouseNumberFromCrab) { addressHouseNumberPositionWasImported = addressHouseNumberPositionWasImported .WithEndDate(DateTimeOffset.Now) .WithCrabAddressPositionOrigin(CrabAddressPositionOrigin.ManualIndicationFromEntryOfBuilding); importHouseNumberFromCrab = importHouseNumberFromCrab .WithLifetime(new CrabLifetime(LocalDateTime.FromDateTime(DateTime.Now), LocalDateTime.FromDateTime(DateTime.Now.AddDays(1)))); Assert(RegisteredAddressScenario(fixture) .Given(addressId, addressHouseNumberPositionWasImported) .When(importHouseNumberFromCrab) .Then(addressId, new AddressWasRetired(addressId), new AddressWasPositioned(addressId, new AddressGeometry(GeometryMethod.AppointedByAdministrator, GeometrySpecification.Entry, GeometryHelpers.CreateEwkbFrom(new WkbGeometry(addressHouseNumberPositionWasImported.AddressPosition)))), importHouseNumberFromCrab.ToLegacyEvent())); }