protected StreetName Act(StreetName sut,
                                 CrabStreetNameId CrabStreetNameId,
                                 CrabMunicipalityId crabMunicipalityId,
                                 CrabStreetName primaryStreetName,
                                 CrabStreetName secondaryStreetName,
                                 CrabTransStreetName primaryTransStreetName,
                                 CrabTransStreetName secondaryTransStreetName,
                                 CrabLanguage?primaryLanguage,
                                 CrabLanguage?secondaryLanguage,
                                 CrabLifetime lifetime,
                                 CrabTimestamp crabTimestamp,
                                 CrabOperator beginOperator,
                                 CrabModification?modification,
                                 CrabOrganisation?beginOrganisation)
        {
            LogAct($"ImportFromCrab({CrabStreetNameId},{crabMunicipalityId},{primaryStreetName},{secondaryStreetName},{secondaryTransStreetName},{primaryTransStreetName},{primaryLanguage},{secondaryLanguage},{lifetime},{crabTimestamp},{beginOperator},{modification},{beginOrganisation})");

            sut.ImportFromCrab(CrabStreetNameId,
                               crabMunicipalityId,
                               primaryStreetName,
                               secondaryStreetName,
                               primaryTransStreetName,
                               secondaryTransStreetName,
                               primaryLanguage,
                               secondaryLanguage,
                               lifetime,
                               crabTimestamp,
                               beginOperator,
                               modification,
                               beginOrganisation);

            return(sut);
        }
        protected StreetName EnsureStreetNameRemoved(StreetName sut)
        {
            var primaryLanguage = Arrange(Generate.CrabLanguageNullable);

            sut.ImportFromCrab(Arrange(Generate.CrabStreetNameId),
                               Arrange(Generate.CrabMunicipalityId), Arrange(Generate.CrabStreetName), Arrange(Generate.CrabStreetName),
                               Arrange(Generate.CrabTransStreetName), Arrange(Generate.CrabTransStreetName),
                               primaryLanguage,
                               Arrange(Generate.NullableEnumExcept(primaryLanguage)),
                               Arrange(Generate.CrabLifetime),
                               Arrange(Generate.CrabTimestamp),
                               Arrange(Generate.CrabOperator), CrabModification.Delete, Arrange(Generate.CrabOrganisationNullable));

            return(sut);
        }