Esempio n. 1
0
        public void GetAllCars_WhenCalled_ReturnsAllEvents()
        {
            var test = new[]
            {
                new
                {
                    carId    = Guid.Parse("45D80D13-D5A2-48D7-8353-CBB4C0EAABF5"),
                    mileage1 = 0,
                    fuel     = "Gasoline"
                },
                new
                {
                    carId    = Guid.Parse("83F9262F-28F1-4703-AB1A-8CFD9E8249C9"),
                    mileage1 = 0,
                    fuel     = "Gasoline"
                },
                new
                {
                    carId    = Guid.Parse("3E83A96B-2A0C-49B1-9959-26DF23F83AEB"),
                    mileage1 = 15000,
                    fuel     = "Diesel"
                }
            };

            var res = new ProviderServiceResponse
            {
                Status  = 200,
                Headers = new Dictionary <string, object>
                {
                    { "Content-Type", "application/json; charset=utf-8" }
                },
                Body = test
            };

            //Arrange
            _mockProviderService.Given("there are cars with ids '45D80D13-D5A2-48D7-8353-CBB4C0EAABF5', '83F9262F-28F1-4703-AB1A-8CFD9E8249C9' and '3E83A96B-2A0C-49B1-9959-26DF23F83AEB'")
            .UponReceiving("a request to retrieve all cars")
            .With(new ProviderServiceRequest
            {
                Method  = HttpVerb.Get,
                Path    = "/cars",
                Headers = new Dictionary <string, object>
                {
                    { "Accept", "application/json" },
                }
            })
            .WillRespondWith(res);

            var consumer = new CarsApiClient(_mockProviderServiceBaseUri);

            //Act
            var events = consumer.GetAllCars();

            //Assert
            Assert.NotEmpty(events);
            Assert.Equal(3, events.Count());


            _mockProviderService.VerifyInteractions();
        }
Esempio n. 2
0
        public void CreateEvent_WhenCalledWithEvent_Succeeds()
        {
            //Arrange
            var carId = Guid.Parse("1F587704-2DCC-4313-A233-7B62B4B469DB");

            _mockProviderService.UponReceiving("a request to create a new car")
            .With(new ProviderServiceRequest
            {
                Method  = HttpVerb.Post,
                Path    = "/cars",
                Headers = new Dictionary <string, object>
                {
                    { "Content-Type", "application/json; charset=utf-8" }
                },
                Body = new
                {
                    carId,
                    mileage = 0,
                    fuel    = "Gasoline"
                }
            })
            .WillRespondWith(new ProviderServiceResponse
            {
                Status = 201
            });

            var consumer = new CarsApiClient(_mockProviderServiceBaseUri);

            //Act / Assert
            consumer.CreateCar(carId);

            _mockProviderService.VerifyInteractions();
        }
        private async Task <CarApiResponse> AddCar(AddCarRequest car)
        {
            var result = await CarsApiClient.AddCar(car);

            var responseString = await result.Content.ReadAsStringAsync();

            return(JsonConvert.DeserializeObject <CarApiResponse>(responseString));
        }
Esempio n. 4
0
        public CallPipeLineTests(CustomWebApplicationFactory <Startup> factory) : base(factory)
        {
            var httpClient = Factory.CreateClient(
                new WebApplicationFactoryClientOptions
            {
                AllowAutoRedirect = false
            });

            client = new CarsApiClient(httpClient);
        }
        protected override async Task ActAsync()
        {
            await base.ActAsync();

            var carsId = _carsToGetDiscount
                         .Select(c => c.Id)
                         .ToArray();

            _response = await CarsApiClient.GetDiscount(carsId);
        }
Esempio n. 6
0
        protected override async Task ArrangeAsync()
        {
            await base.ArrangeAsync();

            var carToAdd = Fixture.Create <AddCarRequest>();

            carToAdd.Year = new Random().Next(1908, DateTime.Now.Year);

            var result = await CarsApiClient.AddCar(carToAdd);

            var responseString = await result.Content.ReadAsStringAsync();

            dynamic response =
                JsonConvert.DeserializeObject <ExpandoObject>(responseString, new ExpandoObjectConverter());

            _carToUpdate      = Fixture.Create <UpdateCarRequest>();
            _carToUpdate.Year = new Random().Next(1908, DateTime.Now.Year);

            _carIdToUpdate = (int)response.id;
        }
 protected GivenCarApi()
 {
     CarsApiClient = new CarsApiClient(Config.CarsApiUrl);
 }
        protected override async Task ActAsync()
        {
            await base.ActAsync();

            _carAddedResult = await CarsApiClient.AddCar(_carToAdd);
        }
Esempio n. 9
0
        protected override async Task ActAsync()
        {
            await base.ActAsync();

            _response = await CarsApiClient.UpdateCar(_carIdToUpdate, _carToUpdate);
        }