public void WithNewFacilityLanguage() { var importMunicipalityFromCrab = _fixture .Build <ImportMunicipalityFromCrab>() .With(x => x.PrimaryLanguage, CrabLanguage.Dutch) .With(x => x.SecondaryLanguage, (CrabLanguage?)null) .With(x => x.FacilityLanguage, CrabLanguage.German) .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 municipalityExistingFacilityLanguage = new MunicipalityFacilityLanguageWasAdded(_municipalityId, Language.French); ((ISetProvenance)municipalityExistingFacilityLanguage).SetProvenance(CreateProvenance(1)); var municipalityFacilityLanguageWasRemoved = new MunicipalityFacilitiesLanguageWasRemoved(_municipalityId, Language.French); ((ISetProvenance)municipalityFacilityLanguageWasRemoved).SetProvenance(CreateProvenance(1)); var municipalityFacilityLanguageWasAdded = new MunicipalityFacilityLanguageWasAdded(_municipalityId, Language.German); ((ISetProvenance)municipalityFacilityLanguageWasAdded).SetProvenance(CreateProvenance(1)); Assert( new Scenario() .Given(_municipalityId, municipalityWasRegistered, _fixture.Create <MunicipalityNisCodeWasDefined>(), _fixture.Create <MunicipalityOfficialLanguageWasAdded>(), municipalityExistingFacilityLanguage, _fixture.Create <MunicipalityBecameCurrent>()) .When(importMunicipalityFromCrab) .Then(_municipalityId, municipalityFacilityLanguageWasAdded, municipalityFacilityLanguageWasRemoved, importMunicipalityFromCrab.ToLegacyEvent())); }
private void When(MunicipalityFacilitiesLanguageWasRemoved @event) { _facilitiesLanguages.Remove(@event.Language); }