public async Task AddAgencyToDb_When_ValidGlobalAgencyRegionLabel_And_ExistingGlobalAgency_Should_AddGlobalAgencyRegion()
        {
            // Arrange
            var agencyName = "Saatchi";
            var regionName = "Japan";
            var globalAgencyRegionLabel = $"{Constants.BusinessUnit.GlobalAgencyRegionLabelPrefix}{agencyName}_{regionName}";
            var a5Agency = await PrepareTestData(globalAgencyRegionLabel);

            var costAgency = EFContext.Agency.First();
            var existingGlobalAgencyRegion = new GlobalAgencyRegion
            {
                Region       = "North America",
                GlobalAgency = new GlobalAgency
                {
                    Name = agencyName
                }
            };

            costAgency.GlobalAgencyRegion = existingGlobalAgencyRegion;

            EFContext.GlobalAgencyRegion.Add(existingGlobalAgencyRegion);
            EFContext.SaveChanges();

            // Act
            await AgencyService.AddAgencyToDb(a5Agency);

            // Assert
            EFContext.GlobalAgency.Should().HaveCount(1);
            EFContext.GlobalAgencyRegion.Should().HaveCount(2);
        }
        public async Task AddAgencyToDb_When_ValidGlobalAgencyRegionLabel_And_ChanginGlobalAgencyForBU_Should_UpdateGlobalAgencyOfAgency()
        {
            // Arrange
            var agencyName = "Saatchi";
            var regionName = "Japan";
            var globalAgencyRegionLabel = $"{Constants.BusinessUnit.GlobalAgencyRegionLabelPrefix}{agencyName}_{regionName}";
            var a5Agency = await PrepareTestData(globalAgencyRegionLabel);

            var existingGlobalAgencyRegion = new GlobalAgencyRegion
            {
                Region       = regionName,
                GlobalAgency = new GlobalAgency
                {
                    Name = "Any other global agency"
                }
            };


            var costAgency = EFContext.Agency.First();

            costAgency.GlobalAgencyRegion = existingGlobalAgencyRegion;

            EFContext.GlobalAgencyRegion.Add(existingGlobalAgencyRegion);
            EFContext.SaveChanges();

            // Act
            await AgencyService.AddAgencyToDb(a5Agency);

            // Assert
            EFContext.GlobalAgency.Should().HaveCount(2);
            EFContext.GlobalAgencyRegion.Should().HaveCount(2);
            costAgency.GlobalAgencyRegion.Region.Should().Be(regionName);
            costAgency.GlobalAgencyRegion.GlobalAgency.Name.Should().Be(agencyName);
        }
Ejemplo n.º 3
0
        public void GlobalAgencyRegion_To_RegionModel_IsValid()
        {
            // Arrange
            var agencyRegion = new GlobalAgencyRegion
            {
                Id     = Guid.NewGuid(),
                Region = "Global Agency Region Name here"
            };

            // Act
            var model = _mapper.Map <RegionModel>(agencyRegion);

            // Assert
            model.Id.Should().Be(agencyRegion.Id.ToString());
            model.Name.Should().Be(agencyRegion.Region);
            model.Key.Should().Be(agencyRegion.Region);
        }