Example #1
0
        public void ShouldCreateRequestWithPassedCampaignIdAndDefaultPollingConfiguration()
        {
            // arrange
            var configurationProvider = Substitute.For <IConfigurationProvider>();
            var campaignId            = Guid.NewGuid().ToString();
            var configuration         = new Configuration
            {
                PollingConfiguration = new PollingConfiguration
                {
                    DefaultTimeInterval  = TimeSpan.FromSeconds(15.0),
                    DefaultAttemptsCount = 4
                }
            };

            configurationProvider.GetConfiguration().Returns(configuration);

            // act
            var customAudiencesRequestBuilder = new CampaignCustomAudiencesRequestBuilder(configurationProvider, campaignId);

            var customAudiencesRequest = customAudiencesRequestBuilder.WithPolling().Create();

            // assert
            customAudiencesRequest.Should().NotBeNull();
            customAudiencesRequest.Configuration.Should().NotBeNull();
            customAudiencesRequest.Configuration.CampaignId.Should().Be(campaignId);
            customAudiencesRequest.Configuration.Polling.Should().NotBeNull();
            customAudiencesRequest.Configuration.Polling.Enabled.Should().BeTrue();
            customAudiencesRequest.Configuration.Polling.Attempts.Should().Be(configuration.PollingConfiguration.DefaultAttemptsCount);
            customAudiencesRequest.Configuration.Polling.Interval.Should().Be(configuration.PollingConfiguration.DefaultTimeInterval);
        }
Example #2
0
        public void ShouldCreateRemoveCustomAudienceRequestWithSpecifiedData()
        {
            // arrange
            var configurationProvider = Substitute.For <IConfigurationProvider>();
            var updateCustomAudiencesRequestConfiguration = new UpdateCustomAudiencesInCampaignRequestConfiguration
            {
                CampaignId      = Guid.NewGuid().ToString(),
                CustomAudiences =
                {
                    CustomAudienceId = Guid.NewGuid().ToString()
                }
            };

            // act
            var customAudiencesRequestBuilder = new CampaignCustomAudiencesRequestBuilder(configurationProvider, updateCustomAudiencesRequestConfiguration.CampaignId);

            var removeCustomAudienceRequest = customAudiencesRequestBuilder
                                              .Remove(customAudience => customAudience.CustomAudienceId(updateCustomAudiencesRequestConfiguration.CustomAudiences.CustomAudienceId))
                                              .Create();

            // assert
            removeCustomAudienceRequest.Should().NotBeNull();
            removeCustomAudienceRequest.Configuration.Should().NotBeNull();
            removeCustomAudienceRequest.Configuration.ShouldBeEquivalentTo(updateCustomAudiencesRequestConfiguration);
        }
Example #3
0
        public void ShouldCreateRequestWithPassedCampaignIdAndDisabledPolling()
        {
            // arrange
            var configurationProvider = Substitute.For <IConfigurationProvider>();
            var campaignId            = Guid.NewGuid().ToString();

            // act
            var customAudiencesRequestBuilder = new CampaignCustomAudiencesRequestBuilder(configurationProvider, campaignId);

            var customAudiencesRequest = customAudiencesRequestBuilder.Create();

            // assert
            customAudiencesRequest.Should().NotBeNull();
            customAudiencesRequest.Configuration.Should().NotBeNull();
            customAudiencesRequest.Configuration.CampaignId.Should().Be(campaignId);
            customAudiencesRequest.Configuration.Polling.Should().NotBeNull();
            customAudiencesRequest.Configuration.Polling.Enabled.Should().BeFalse();
        }
Example #4
0
        public void ShouldCreateRequestWithPassedCampaignIdSpecifiedPollingConfiguration()
        {
            // arrange
            var configurationProvider = Substitute.For <IConfigurationProvider>();
            var campaignId            = Guid.NewGuid().ToString();
            var configuration         = new Configuration
            {
                PollingConfiguration = new PollingConfiguration
                {
                    DefaultTimeInterval  = TimeSpan.FromSeconds(15.0),
                    DefaultAttemptsCount = 4
                }
            };

            var expectedPollingRequestConfiguration = new PollingRequestConfiguration
            {
                Enabled  = true,
                Attempts = 6,
                Interval = TimeSpan.FromSeconds(10.0)
            };

            configurationProvider.GetConfiguration().Returns(configuration);

            // act
            var customAudiencesRequestBuilder = new CampaignCustomAudiencesRequestBuilder(configurationProvider, campaignId);

            var customAudiencesRequest = customAudiencesRequestBuilder
                                         .WithPolling(polling => polling
                                                      .Interval(expectedPollingRequestConfiguration.Interval)
                                                      .Attempts(expectedPollingRequestConfiguration.Attempts))
                                         .Create();

            // assert
            customAudiencesRequest.Should().NotBeNull();
            customAudiencesRequest.Configuration.Should().NotBeNull();
            customAudiencesRequest.Configuration.CampaignId.Should().Be(campaignId);
            customAudiencesRequest.Configuration.Polling.Should().NotBeNull();
            customAudiencesRequest.Configuration.Polling.ShouldBeEquivalentTo(expectedPollingRequestConfiguration);
        }