예제 #1
0
        public void WithNewPrimaryLanguageAsNull()
        {
            var importMunicipalityFromCrab = _fixture
                                             .Build <ImportMunicipalityFromCrab>()
                                             .With(x => x.PrimaryLanguage, (CrabLanguage?)null)
                                             .With(x => x.SecondaryLanguage, (CrabLanguage?)null)
                                             .With(x => x.FacilityLanguage, (CrabLanguage?)null)
                                             .With(x => x.Geometry, (WkbGeometry)null)
                                             .With(x => x.Lifetime, new CrabLifetime(_fixture.Create <LocalDateTime>(), null))
                                             .Create();

            var municipalityWasRegistered = new MunicipalityWasRegistered(_municipalityId, importMunicipalityFromCrab.NisCode);

            ((ISetProvenance)municipalityWasRegistered).SetProvenance(CreateProvenance(1));

            var municipalityOfficialLanguageWasRemoved = new MunicipalityOfficialLanguageWasRemoved(_municipalityId, Language.Dutch);

            ((ISetProvenance)municipalityOfficialLanguageWasRemoved).SetProvenance(CreateProvenance(1));

            Assert(
                new Scenario()
                .Given(_municipalityId,
                       municipalityWasRegistered,
                       _fixture.Create <MunicipalityNisCodeWasDefined>(),
                       _fixture.Create <MunicipalityOfficialLanguageWasAdded>(),
                       _fixture.Create <MunicipalityBecameCurrent>())

                .When(importMunicipalityFromCrab)

                .Then(_municipalityId,
                      municipalityOfficialLanguageWasRemoved,
                      importMunicipalityFromCrab.ToLegacyEvent()));
        }
 private void When(MunicipalityOfficialLanguageWasRemoved @event)
 {
     _officialLanguages.Remove(@event.Language);
 }