Exemplo n.º 1
0
        public HttpDownloadTest()
        {
            var httpClientFactoryMock = FakeHttpClientFactory.GetHttpClientFactoryMock(ResponseType.Html);

            _httpDownload = new HttpDownload(httpClientFactoryMock.Object);
            _url          = "http://good.uri";
        }
Exemplo n.º 2
0
        public async Task be_inactive_if_configured_country_is_not_the_same_as_remote_ip_address()
        {
            var toggle = Build
                         .Toggle <Ip2CountryToggle>()
                         .AddParameter(Countries, "FR")
                         .Build();

            var feature = Build
                          .Feature(Constants.FeatureName)
                          .AddOne(toggle)
                          .Build();

            var context = new DefaultHttpContext();

            context.Connection.RemoteIpAddress = IPAddress.Parse("2.142.250.6");

            var contextAccessor   = new FakeHttpContextAccessor(context);
            var httpClientFactory = new FakeHttpClientFactory();

            var active = await new Ip2CountryToggle(contextAccessor, httpClientFactory).IsActiveAsync(
                ToggleExecutionContext.FromToggle(
                    feature.Name,
                    EsquioConstants.DEFAULT_PRODUCT_NAME,
                    EsquioConstants.DEFAULT_DEPLOYMENT_NAME,
                    toggle));

            active.Should().BeFalse();
        }
Exemplo n.º 3
0
            private static Initializer GetInitializer(Func <HttpRequestMessage, HttpResponseMessage> handler)
            {
                var httpMessageHandler  = new MockableMessageHandler(handler);
                var configurableHandler = new ConfigurableMessageHandler(httpMessageHandler);
                var clientFactory       = new FakeHttpClientFactory(configurableHandler);

                return(new Initializer {
                    HttpClientFactory = clientFactory
                });
            }
        public void KeepTruckinStoreShouldHandleKeepTruckinProvider()
        {
            //Arrange
            var logger     = new Mock <ILogger>();
            var httpClient = new FakeHttpClientFactory(new FakeHttpMessageHandler());

            //Act
            var store = new KeepTruckinStore(logger.Object, httpClient);

            //Assert
            Assert.AreEqual(IntegrationProvider.KeepTruckin, store.HandlesProvider);
        }
        private static DefaultRequestHandler Sut(Action <DefaultRequestHandler.Options> configure, bool failRequest = false, bool failResponse = false)
        {
            var options = new DefaultRequestHandler.Options();

            configure(options);

            var validator     = new NullValidator(failRequest, failResponse);
            var dataProvider  = new FakeMockDataProvider();
            var clientFactory = new FakeHttpClientFactory();

            return(new DefaultRequestHandler(options, validator, validator, dataProvider, clientFactory));
        }
Exemplo n.º 6
0
        public async Task GetPageAsString_WithErrorException_ReturnsEmptyString()
        {
            //Arrange
            var httpClientFactoryMock = FakeHttpClientFactory.GetHttpClientFactoryWithExceptionMock();
            var httpDownload          = new HttpDownload(httpClientFactoryMock.Object);

            //Act
            var   pageContent = httpDownload.DownloadPage(_url);
            await pageContent;

            //Assert
            Assert.True(string.IsNullOrWhiteSpace(pageContent.Result));
        }
        public async Task Test_That_DownloadService_Returns_Null_If_Api_Error()
        {
            var httpClientFactory = new FakeHttpClientFactory
            {
                ExpectedResponseCode = HttpStatusCode.InternalServerError, ExpectedResponse = ""
            };

            var downloadService = new DownloadService(httpClientFactory);
            var downloadedFiles = await downloadService.DownloadAsync(new[] { "des moines" });

            Assert.AreEqual(1, downloadedFiles.Count());
            Assert.IsNull(downloadedFiles.First());
        }
        public PresentationViewModelTests()
        {
            var factory = new FakeHttpClientFactory();

            _httpClient = factory.Client;

            var messageBus = new MessageBus(new MessagingCenter());

            _errorHandler = new ErrorHandler(messageBus);
            var service = new PresentationsService(new FakeConfig(), factory, _errorHandler);

            _viewModel = new PresentationViewModel(null, service, _errorHandler, messageBus);
        }
Exemplo n.º 9
0
            private FakeCaseJobServer()
            {
                _factory = new FakeHttpClientFactory();
                var serviceCollection = new ServiceCollection();

                serviceCollection.AddCaseJobServer(callback: opt =>
                {
                    opt.WSHumanTaskAPI = "http://localhost";
                });
                serviceCollection.AddSingleton <IHttpClientFactory>(_factory);
                _serviceProvider = serviceCollection.BuildServiceProvider();
                _caseJobServer   = _serviceProvider.GetRequiredService <ICaseJobServer>();
                _casePlanInstanceQueryRepository = _serviceProvider.GetRequiredService <ICasePlanInstanceQueryRepository>();
            }
        protected UseCaseTests()
        {
            var loggerFactory = new FakeLoggerFactory();

            var httpClientFactory = new FakeHttpClientFactory();

            HttpClient = httpClientFactory.Client;

            var configurationFactory = new ConfigurationFactory();

            Config = configurationFactory.Create();

            _filesContainerMock = new Mock <CloudBlobContainer>(new Uri("https://something.com/files"));
            _filesContainerMock.Setup(s => s.GetBlockBlobReference(It.IsAny <string>()))
            .Returns(() =>
            {
                var mock = CreateMockCloudBlockBlob("idk");
                mock.Setup(s => s.ExistsAsync()).ReturnsAsync(false);
                return(mock.Object);
            });
            var blobClientMock = new Mock <CloudBlobClient>(new Uri("https://something.com"));

            blobClientMock.Setup(s => s.GetContainerReference("files")).Returns(_filesContainerMock.Object);

            StorageAccount = new Mock <CloudStorageAccount>(new StorageCredentials("storageaccount", ""), false);
            StorageAccount.Setup(s => s.CreateCloudBlobClient()).Returns(blobClientMock.Object);

            var storageAccountFactory = new Mock <IStorageAccountFactory>();

            storageAccountFactory.Setup(s => s.Get()).Returns(StorageAccount.Object);


            _provider = new ServiceCollection()
                        .AddRealTimePresenter(Config)

                        .RemoveAll <ILoggerFactory>()
                        .AddSingleton <ILoggerFactory>(loggerFactory)

                        .RemoveAll <IHttpClientFactory>()
                        .AddSingleton <IHttpClientFactory>(httpClientFactory)
                        .AddSingleton(httpClientFactory)

                        .RemoveAll <IConfiguration>()
                        .AddSingleton(Config)

                        .RemoveAll <IStorageAccountFactory>()
                        .AddSingleton(storageAccountFactory.Object)

                        .BuildServiceProvider();
        }
        public void KeepTruckinStoreShouldCreateWithKeepTruckinEldProviderParameterObject()
        {
            //Arrange
            var logger     = new Mock <ILogger>();
            var httpClient = new FakeHttpClientFactory(new FakeHttpMessageHandler());
            var store      = new KeepTruckinStore(logger.Object, httpClient);
            var eld        = new KeepTruckinEldProvider("api");

            //Act
            var integration = store.CreateIntegration(eld);

            //Assert
            Assert.IsNotNull(integration);
        }
Exemplo n.º 12
0
        public async Task Allows_Setting_Global_HttpClientFactory()
        {
            var factory = new FakeHttpClientFactory();

            ShopifyService.SetGlobalHttpClientFactory(factory);

            var shopService  = new ShopService(Utils.MyShopifyUrl, Utils.AccessToken);
            var orderService = new OrderService(Utils.MyShopifyUrl, Utils.AccessToken);
            var policy       = new LeakyBucketExecutionPolicy();
            var orderFilter  = new OrderListFilter
            {
                Limit = 1
            };

            shopService.SetExecutionPolicy(policy);
            orderService.SetExecutionPolicy(policy);

            var ex1 = await Assert.ThrowsAsync <Exception>(() => shopService.GetAsync());

            var ex2 = await Assert.ThrowsAsync <Exception>(() => orderService.ListAsync(orderFilter));

            Assert.Equal("This is an exception thrown by the FakeHttpClient", ex1.Message);
            Assert.Equal("This is an exception thrown by the FakeHttpClient", ex2.Message);

            // Removing the factory should only remove it for future instances
            ShopifyService.SetGlobalHttpClientFactory(null);

            ex1 = await Assert.ThrowsAsync <Exception>(() => shopService.GetAsync());

            ex2 = await Assert.ThrowsAsync <Exception>(() => orderService.ListAsync(orderFilter));

            Assert.Equal("This is an exception thrown by the FakeHttpClient", ex1.Message);
            Assert.Equal("This is an exception thrown by the FakeHttpClient", ex2.Message);

            // Instantiating the services again should now use the default HttpClientFactory
            shopService  = new ShopService(Utils.MyShopifyUrl, Utils.AccessToken);
            orderService = new OrderService(Utils.MyShopifyUrl, Utils.AccessToken);

            shopService.SetExecutionPolicy(policy);
            orderService.SetExecutionPolicy(policy);

            var shop = await shopService.GetAsync();

            var orders = await orderService.ListAsync(orderFilter);

            Assert.NotNull(shop);
            Assert.NotNull(orders);
        }
            private FakeCaseJobServer()
            {
                _factory = new FakeHttpClientFactory();
                var serviceCollection = new ServiceCollection();

                serviceCollection.AddLogging();
                serviceCollection.AddProcessJobServer(callbackServerOpts: o =>
                {
                    o.WSHumanTaskAPI = "http://localhost";
                    o.CallbackUrl    = "http://localhost/{id}/{eltId}";
                });
                serviceCollection.AddSingleton <IHttpClientFactory>(_factory);
                _serviceProvider  = serviceCollection.BuildServiceProvider();
                _processJobServer = _serviceProvider.GetRequiredService <IProcessJobServer>();
                _processInstanceQueryRepository = _serviceProvider.GetRequiredService <IProcessInstanceQueryRepository>();
            }
            private FakeCaseJobServer()
            {
                _factory = new FakeHttpClientFactory();
                var serviceCollection = new ServiceCollection();

                serviceCollection.AddCaseApi(callback: opt =>
                {
                    opt.WSHumanTaskAPI = "http://localhost";
                });
                serviceCollection.AddSingleton <IHttpClientFactory>(_factory);
                serviceCollection.AddMassTransitHostedService();
                _serviceProvider = serviceCollection.BuildServiceProvider();
                _casePlanInstanceCommandRepository = _serviceProvider.GetRequiredService <ICasePlanInstanceCommandRepository>();
                _mediator   = _serviceProvider.GetRequiredService <MediatR.IMediator>();
                _busControl = _serviceProvider.GetRequiredService <IBusControl>();
            }
Exemplo n.º 15
0
            private FakeCaseJobServer()
            {
                _factory = new FakeHttpClientFactory();
                var serviceCollection = new ServiceCollection();

                serviceCollection.AddLogging();
                serviceCollection.AddProcessJobServer(callbackServerOpts: o =>
                {
                    o.WSHumanTaskAPI = "http://localhost";
                    o.CallbackUrl    = "http://localhost/{id}/{eltId}";
                }).AddDelegateConfigurations(new ConcurrentBag <DelegateConfigurationAggregate>
                {
                    DelegateConfigurationAggregate.Create("GetWeatherInformationDelegate", typeof(GetWeatherInformationDelegate).FullName)
                });
                serviceCollection.AddSingleton <IHttpClientFactory>(_factory);
                _serviceProvider = serviceCollection.BuildServiceProvider();
                _processInstanceCommandRepository = _serviceProvider.GetRequiredService <IProcessInstanceCommandRepository>();
                _busControl = _serviceProvider.GetRequiredService <IBusControl>();
                _mediator   = _serviceProvider.GetRequiredService <IMediator>();
            }
Exemplo n.º 16
0
        public async Task Test_That_DownloadService_DownloadsFile_For_City()
        {
            var apiResponseJsonFilename =
                Path.Combine("unit", "JsonFiles", "CompleteApiResponseForCity.json");

            var httpClientFactory = new FakeHttpClientFactory
            {
                ExpectedResponseCode = HttpStatusCode.OK,
                ExpectedResponse     = await File.ReadAllTextAsync(apiResponseJsonFilename)
            };

            var downloadService = new DownloadService(httpClientFactory);
            var downloadedFiles = await downloadService.DownloadAsync(new[] { "des moines" });

            Assert.AreEqual(1, downloadedFiles.Count());

            foreach (var downloadedFile in downloadedFiles)
            {
                File.Delete(downloadedFile);
            }
        }
 public SharedContext()
 {
     HttpClientFactory = new FakeHttpClientFactory();
 }