private IList <ServiceProducerOrganization> CreateServiceProducerOrganization()
        {
            var producer = new ServiceProducer
            {
                ProvisionTypeId        = CacheManager.TypesCache.Get <ProvisionType>(ProvisionTypeEnum.Other.ToString()),
                AdditionalInformations = new List <ServiceProducerAdditionalInformation>
                {
                    new ServiceProducerAdditionalInformation
                    {
                        Text           = DESCRIPTION_FI,
                        LocalizationId = CacheManager.LanguageCache.Get(LanguageCode.sv.ToString())
                    }
                }
            };
            var producerOrganization = new ServiceProducerOrganization {
                ServiceProducer = producer
            };

            return(new List <ServiceProducerOrganization> {
                producerOrganization
            });
        }
        private void CheckTranslation(ProvisionTypeEnum provisionType, VmServiceProducer source, ServiceProducer target)
        {
            target.Id.Should().NotBe(Guid.Empty);
            target.ProvisionTypeId.Should().Be(source.ProvisionType);
            switch (provisionType)
            {
            case ProvisionTypeEnum.SelfProduced:
                target.AdditionalInformations.Count.Should().Be(0);
                target.Organizations.Count.Should().Be(source.SelfProducers.Count);
                if (source.SelfProducers.Count > 0)
                {
                    target.Organizations.First().OrganizationId.Should().Be(source.SelfProducers.First());
                }
                break;

            case ProvisionTypeEnum.PurchaseServices:
                if (source.Organization.HasValue)
                {
                    target.Organizations.Count.Should().Be(1);
                    target.Organizations.First().OrganizationId.Should().Be(source.Organization.Value);
                }
                else
                {
                    target.Organizations.Should().BeEmpty();
                }

                if (string.IsNullOrEmpty(source.AdditionalInformation["fi"]))
                {
                    target.AdditionalInformations.Should().BeEmpty();
                }
                else
                {
                    var ai = target.AdditionalInformations.FirstOrDefault();
                    ai.Should().NotBeNull();
                    ai.Text.Should().Be(source.AdditionalInformation["fi"]);
                    ai.LocalizationId.Should().Be(LanguageCode.fi.ToString().GetGuid());
                }
                break;

            case ProvisionTypeEnum.Other:
                if (source.Organization.HasValue)
                {
                    target.Organizations.Count.Should().Be(1);
                    target.Organizations.First().OrganizationId.Should().Be(source.Organization.Value);
                    target.AdditionalInformations.Should().BeEmpty();
                }
                else if (!string.IsNullOrEmpty(source.AdditionalInformation["fi"]))
                {
                    target.Organizations.Should().BeEmpty();
                    var ai = target.AdditionalInformations.FirstOrDefault();
                    ai.Should().NotBeNull();
                    ai.Text.Should().Be(source.AdditionalInformation["fi"]);
                    ai.LocalizationId.Should().Be(LanguageCode.fi.ToString().GetGuid());
                }
                else
                {
                    target.Organizations.Should().BeEmpty();
                    target.AdditionalInformations.Should().BeEmpty();
                }
                break;

            default:
                throw new ArgumentOutOfRangeException(nameof(provisionType), provisionType, null);
            }
        }