public async Task DoNotThrowArgumentException_When_AlreadyExists()
        {
            //Arrange
            var options  = Utils.GetOptions(nameof(DoNotThrowArgumentException_When_AlreadyExists));
            var industry = TestModelsSeeder.SeedIndustry();
            var user     = TestModelsSeeder.SeedUser();

            using (var arrangeContext = new InsightHubContext(options))
            {
                await arrangeContext.Industries.AddAsync(industry);

                await arrangeContext.Users.AddAsync(user);

                await arrangeContext.SaveChangesAsync();
            }
            //Act & Assert
            using var assertContext = new InsightHubContext(options);
            var sut = new IndustryServices(assertContext);

            await sut.AddSubscription(user.Id, industry.Id);

            await sut.AddSubscription(user.Id, industry.Id);

            var result = await assertContext.IndustrySubscriptions.AnyAsync(ui => ui.UserId == user.Id && ui.IndustryId == industry.Id);

            Assert.IsTrue(result);
            Assert.AreEqual(1, assertContext.IndustrySubscriptions.Count());
        }
Exemplo n.º 2
0
        public async Task ReturnNotDeletedIndustries_WithSearch_When_ParamValid()
        {
            //Arrange
            var options   = Utils.GetOptions(nameof(ReturnNotDeletedIndustries_WithSearch_When_ParamValid));
            var industry  = TestModelsSeeder.SeedIndustry();
            var industry2 = TestModelsSeeder.SeedIndustry2();
            var industry3 = TestModelsSeeder.SeedIndustry3();

            industry.IsDeleted = true;

            using (var arrangeContext = new InsightHubContext(options))
            {
                await arrangeContext.Industries.AddAsync(industry);

                await arrangeContext.Industries.AddAsync(industry2);

                await arrangeContext.Industries.AddAsync(industry3);

                await arrangeContext.SaveChangesAsync();
            }
            //Act & Assert
            using var assertContext = new InsightHubContext(options);
            var sut    = new IndustryServices(assertContext);
            var result = (await sut.GetAllIndustries(null, "3")).ToArray();

            Assert.AreEqual(1, result.Length);
            Assert.AreEqual(industry3.Name, result[0].Name);
        }
        public async Task AddSubscription_WhenParamsAreValid()
        {
            //Arrange
            var options  = Utils.GetOptions(nameof(AddSubscription_WhenParamsAreValid));
            var industry = TestModelsSeeder.SeedIndustry();
            var user     = TestModelsSeeder.SeedUser();

            using (var arrangeContext = new InsightHubContext(options))
            {
                await arrangeContext.Industries.AddAsync(industry);

                await arrangeContext.Users.AddAsync(user);

                await arrangeContext.SaveChangesAsync();
            }

            //Act & Assert
            using var assertContext = new InsightHubContext(options);
            var sut = new IndustryServices(assertContext);

            await sut.AddSubscription(user.Id, industry.Id);

            var result = await assertContext.IndustrySubscriptions.AnyAsync(ui => ui.UserId == user.Id && ui.IndustryId == industry.Id);

            Assert.IsTrue(result);
        }
Exemplo n.º 4
0
        public async Task ReturnNotDeletedIndustries()
        {
            //Arrange
            var options   = Utils.GetOptions(nameof(ReturnNotDeletedIndustries));
            var industry  = TestModelsSeeder.SeedIndustry();
            var industry2 = TestModelsSeeder.SeedIndustry2();
            var industry3 = TestModelsSeeder.SeedIndustry3();

            industry.IsDeleted = true;

            using (var arrangeContext = new InsightHubContext(options))
            {
                await arrangeContext.Industries.AddAsync(industry);

                await arrangeContext.Industries.AddAsync(industry2);

                await arrangeContext.Industries.AddAsync(industry3);

                await arrangeContext.SaveChangesAsync();
            }
            //Act & Assert
            using var assertContext = new InsightHubContext(options);
            var sut    = new IndustryServices(assertContext);
            var result = await sut.GetAllIndustries(null, null);

            Assert.AreEqual(2, result.Count);
        }
Exemplo n.º 5
0
 public APIController()
 {
     _masterCampaignServices = new MasterCampaignServices();
     _childCampaignServices  = new ChildCampaignServices();
     _tacticCampaignServices = new TacticCampaignServices();
     _businessGroupServices  = new BusinessGroupServices();
     _businessLineServices   = new BusinessLineServices();
     _segmentServices        = new SegmentServices();
     _industryServices       = new IndustryServices();
 }
Exemplo n.º 6
0
        public async Task Throw_WhenIdIsInvalid()
        {
            //Arrange
            var options = Utils.GetOptions(nameof(Throw_WhenIdIsInvalid));

            //Act & Assert
            using var assertContext = new InsightHubContext(options);
            var sut = new IndustryServices(assertContext);
            await Assert.ThrowsExceptionAsync <ArgumentNullException>(async() => await sut.DeleteIndustry(5));
        }
Exemplo n.º 7
0
 public MasterCampaignController()
 {
     _industryService        = new IndustryServices();
     _businessgroupService   = new BusinessGroupServices();
     _businesslineService    = new BusinessLineServices();
     _segmentService         = new SegmentServices();
     _geographyService       = new GeographyServices();
     _themeService           = new ThemeServices();
     _masterCampaignServices = new MasterCampaignServices();
     _tacticCampaignServices = new TacticCampaignServices();
 }
Exemplo n.º 8
0
        public async Task CreateIndustry_WhenParamsAreValid()
        {
            //Arrange
            var options      = Utils.GetOptions(nameof(CreateIndustry_WhenParamsAreValid));
            var industryName = "Test Industry";
            var imgUrl       = "Test URL";

            //Act & Assert
            using var assertContext = new InsightHubContext(options);
            var sut = new IndustryServices(assertContext);
            var act = await sut.CreateIndustry(industryName, imgUrl);

            var result = assertContext.Industries.FirstOrDefault(t => t.Name == industryName);

            Assert.AreEqual(industryName, result.Name);
        }
Exemplo n.º 9
0
        public TacticCampaignController()
        {
            _industryService        = new IndustryServices();
            _businessgroupService   = new BusinessGroupServices();
            _businesslineService    = new BusinessLineServices();
            _segmentService         = new SegmentServices();
            _geographyService       = new GeographyServices();
            _themeService           = new ThemeServices();
            _tacticCampaignServices = new TacticCampaignServices();
            _childCampaignServices  = new ChildCampaignServices();
            _masterCampaignServices = new MasterCampaignServices();

            _metricReachServices    = new MetricReachServices();
            _metricResponseServices = new MetricResponseServices();
            _journeyStageServices   = new JourneyStageServices();
            _digitalTouchpoint      = new DigitalTouchpoint();
        }
Exemplo n.º 10
0
        public async Task Throw_WhenIdIsInvalid()
        {
            //Arrange
            var options  = Utils.GetOptions(nameof(Throw_WhenIdIsInvalid));
            var industry = TestModelsSeeder.SeedIndustry();

            using (var arrangeContext = new InsightHubContext(options))
            {
                await arrangeContext.AddAsync(industry);

                await arrangeContext.SaveChangesAsync();
            }
            //Act & Assert
            using var assertContext = new InsightHubContext(options);
            var sut = new IndustryServices(assertContext);
            await Assert.ThrowsExceptionAsync <ArgumentNullException>(() => sut.UpdateIndustry(5, "NewName", "NewTestURL"));
        }
Exemplo n.º 11
0
        public async Task Throw_When_IndustryAlreadyExists()
        {
            //Arrange
            var options      = Utils.GetOptions(nameof(Throw_When_IndustryAlreadyExists));
            var industry     = TestModelsSeeder.SeedIndustry();
            var industryName = industry.Name;

            using (var arrangeContext = new InsightHubContext(options))
            {
                await arrangeContext.Industries.AddAsync(industry);

                await arrangeContext.SaveChangesAsync();
            }
            //Act & Assert
            using var assertContext = new InsightHubContext(options);
            var sut = new IndustryServices(assertContext);
            await Assert.ThrowsExceptionAsync <ArgumentException>(() => sut.CreateIndustry(industryName, "testURL"));
        }
Exemplo n.º 12
0
        public async Task ReturnFalse_WhenIndustryAlreadyDeleted()
        {
            //Arrange
            var options  = Utils.GetOptions(nameof(ReturnFalse_WhenIndustryAlreadyDeleted));
            var industry = TestModelsSeeder.SeedIndustry();

            industry.IsDeleted = true;

            using (var arrangeContext = new InsightHubContext(options))
            {
                await arrangeContext.Industries.AddAsync(industry);

                await arrangeContext.SaveChangesAsync();
            }
            //Act & Assert
            using var assertContext = new InsightHubContext(options);
            var sut = new IndustryServices(assertContext);
            await Assert.ThrowsExceptionAsync <ArgumentException>(async() => await sut.DeleteIndustry(industry.Id));
        }
Exemplo n.º 13
0
        public async Task Throw_WhenIndustryWithNameAlreadyExists()
        {
            var options   = Utils.GetOptions(nameof(Throw_WhenIndustryWithNameAlreadyExists));
            var industry  = TestModelsSeeder.SeedIndustry();
            var industry2 = TestModelsSeeder.SeedIndustry2();

            using (var arrangeContext = new InsightHubContext(options))
            {
                await arrangeContext.AddAsync(industry);

                await arrangeContext.AddAsync(industry2);

                await arrangeContext.SaveChangesAsync();
            }

            using var assertContext = new InsightHubContext(options);
            var sut = new IndustryServices(assertContext);
            await Assert.ThrowsExceptionAsync <ArgumentException>(() => sut.UpdateIndustry(1, industry2.Name, "testURL"));
        }
Exemplo n.º 14
0
        public async Task ReturnCorrectIndustry_WhenParamsAreValid()
        {
            //Arrange
            var options  = Utils.GetOptions(nameof(ReturnCorrectIndustry_WhenParamsAreValid));
            var industry = TestModelsSeeder.SeedIndustry();

            using (var arrangeContext = new InsightHubContext(options))
            {
                await arrangeContext.AddAsync(industry);

                await arrangeContext.SaveChangesAsync();
            }
            //Act & Assert
            using var assertContext = new InsightHubContext(options);
            var sut    = new IndustryServices(assertContext);
            var result = await sut.GetIndustry(1);

            Assert.AreEqual(industry.Id, result.Id);
            Assert.AreEqual(industry.Name, result.Name);
        }
Exemplo n.º 15
0
        public async Task SetDeletedFlag_WhenParamsAreValid()
        {
            //Arrange
            var options  = Utils.GetOptions(nameof(SetDeletedFlag_WhenParamsAreValid));
            var industry = TestModelsSeeder.SeedIndustry();

            using (var arrangeContext = new InsightHubContext(options))
            {
                await arrangeContext.Industries.AddAsync(industry);

                await arrangeContext.SaveChangesAsync();
            }
            //Act & Assert
            using var assertContext = new InsightHubContext(options);
            var sut = new IndustryServices(assertContext);
            await sut.DeleteIndustry(1);

            var result = await assertContext.Industries.FirstOrDefaultAsync(i => i.Name == industry.Name);

            Assert.IsTrue(result.IsDeleted);
        }