コード例 #1
0
        public void GivenListParkinglotDto_WhenGetAll_ThenReturnOKWithList()
        {
            //Given
            ParkinglotDto        parkinglotDto     = new ParkinglotDto();
            List <ParkinglotDto> listParkinglotDto = new List <ParkinglotDto>()
            {
                parkinglotDto
            };

            Parkinglot        parkinglot     = new Parkinglot();
            List <Parkinglot> listParkinglot = new List <Parkinglot>()
            {
                parkinglot
            };

            _parkinglotService.GetAll().Returns(listParkinglot);

            //_parkinglotMapper.ListToDtoList(listParkinglot).Returns(listParkinglotDto);

            //When
            OkObjectResult ok = (OkObjectResult)_parkinglotController.GetAllParkinglots().Result;

            //ActionResult<List<ParkinglotDto>> returnValue = _parkinglotController.GetAllParkinglots();


            //then
            //OkObjectResult returnValue = (OkObjectResult)_parkinglotController.GetAllParkinglots().Result;
            Assert.Equal(200, ok.StatusCode);
            Assert.IsType <List <ParkinglotDto> >(ok.Value);
        }
コード例 #2
0
        public void GivenCompletParkinglotDto_WhenCreatingNewParkinglot_ThenReturnStatusCode201WithParkinglotDto()
        {
            //Given
            ParkinglotDto parkinglotDto = new ParkinglotDto();
            Parkinglot    parkinglot    = new Parkinglot();

            //_parkinglotMapper.DtoToDomain(parkinglotDto).Returns(parkinglot);
            _parkinglotService.CreateParkinglot(_parkinglotMapper.DtoToDomain(parkinglotDto)).Returns(parkinglot);

            //When
            CreatedResult returnValue = (CreatedResult)_parkinglotController.Createparkinglot(parkinglotDto).Result;

            //then
            Assert.Equal(201, returnValue.StatusCode);
        }
        public async Task StartAllocation_WhenStartNewAllocation_ThenReturnStatusCode201WithAllocationGuid()
        {
            var server = new TestServer(new WebHostBuilder()
                                        .UseStartup <TestStartup>());

            using (server)
            {
                var client = server
                             .CreateClient();

                var context = server.Host.Services.GetService <ParkSharkContext>();

                FillingInMemoryDatabase(context);


                AllocationDto allocationDto = new AllocationDto()
                {
                    MemberPeronId      = 1,
                    ParkinglotId       = 1,
                    MemberLicensePlate = new LicensePlate("123", "BE")
                };

                var content       = JsonConvert.SerializeObject(allocationDto);
                var stringContent = new StringContent(content, Encoding.UTF8, "application/json");

                var response = await client.PostAsync("api/allocations", stringContent);

                var allocationGuid = await response.Content.ReadAsStringAsync();


                var pl_response = await client.GetAsync("api/parkinglots/1");

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

                ParkinglotDto parkinglotDto = JsonConvert.DeserializeObject <ParkinglotDto>(responseString);

                //context.Dispose();
                //context = server.Host.Services.GetService<ParkSharkContext>();
                //var pl = context.Parkinglots.FirstOrDefault(p => p.Id == 1);
                //Assert.Equal(4, pl.Capacity);

                Assert.Equal(4, parkinglotDto.AvailablePlaces);
            }
        }
コード例 #4
0
        public void GivenInCompletParkinglotDto_WhenCreatingNewParkinglot_ThenReturnStatusCode400()
        {
            //Given
            ParkinglotDto parkinglotDto = new ParkinglotDto();
            Parkinglot    parkinglot    = new Parkinglot();

            _parkinglotMapper.When(fake => fake.DtoToDomain(parkinglotDto))
            .Do(call => { throw new EntityNotValidException("Name required", this); });

            // is allowed but only if void
            //_parkinglotMapper.DtoToDomain(parkinglotDto)
            //                .Returns(x => throw new EntityNotValidException("Name required", this));

            Action action    = () => _parkinglotController.Createparkinglot(parkinglotDto);
            var    exception = Assert.Throws <EntityNotValidException>(action);

            Assert.Contains("Name required", exception.Message);

            ////then
            //Assert.IsType<BadRequestObjectResult>(returnValue);
        }
        public async Task Createparkinglot_WhenCreatingNewParkinglot_ThenReturnStatusCode201WithParkinglotDto()
        {
            var server = new TestServer(new WebHostBuilder()
                                        .UseStartup <TestStartup>());

            using (server)
            {
                var client = server
                             .CreateClient();

                var context = server.Host.Services.GetService <ParkSharkContext>();


                #region fillingInMemoryDatabase

                Address adress = new Address()
                {
                    StreetNumber = "1",
                    StreetName   = "tt",
                    CityName     = "er",
                    PostalCode   = "4153",
                };
                context.Persons.Add(new Person(
                                        1,
                                        "Person1",
                                        "MobilePhone1",
                                        "000",
                                        adress,
                                        "*****@*****.**",
                                        new LicensePlate("123", "be")
                                        ));

                context.Set <BuildingType>().Add(new BuildingType()
                {
                    Id   = 1,
                    Name = "Underground"
                });

                context.Divisions.Add(new Division(1, "Division1", "Original1", 1, null));
                await context.SaveChangesAsync();

                #endregion fillingInMemoryDatabase


                ParkinglotDto parkinglotDtoToCreate = new ParkinglotDto()
                {
                    BuildingTypeId  = 1,
                    Capacity        = 5,
                    AvailablePlaces = 5,
                    ContactPersonId = 1,
                    DivisionId      = 1,
                    Name            = "Name",
                    PlAddress       = new Address()
                    {
                        StreetNumber = "1",
                        StreetName   = "tt",
                        CityName     = "er",
                        PostalCode   = "4153"
                    },
                    PricePerHour = 10
                };
                var content       = JsonConvert.SerializeObject(parkinglotDtoToCreate);
                var stringContent = new StringContent(content, Encoding.UTF8, "application/json");

                var response = await client.PostAsync("api/parkinglots", stringContent);

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

                ParkinglotDto parkinglotDtoCreated = JsonConvert.DeserializeObject <ParkinglotDto>(responseString);

                Assert.True(response.IsSuccessStatusCode);
                Assert.Equal("Name", parkinglotDtoCreated.Name);
            }
        }
        public async Task GetOneParkinglot_WhenGetOneParkinglot_ThenReturnParkinglotDto()
        {
            var server = new TestServer(new WebHostBuilder()
                                        .UseStartup <TestStartup>());

            using (server)
            {
                var client = server
                             .CreateClient();

                var context = server.Host.Services.GetService <ParkSharkContext>();
                #region fillingInMemoryDatabase

                Address adress = new Address()
                {
                    StreetNumber = "1",
                    StreetName   = "tt",
                    CityName     = "er",
                    PostalCode   = "4153",
                };
                context.Persons.Add(new Person(
                                        1,
                                        "Person1",
                                        "MobilePhone1",
                                        "000",
                                        adress,
                                        "*****@*****.**",
                                        new LicensePlate("123", "be")
                                        ));

                context.Set <BuildingType>().Add(new BuildingType()
                {
                    Id   = 1,
                    Name = "Underground"
                });

                context.Divisions.Add(new Division("test", "original", 0, null));


                Parkinglot parkinglot = new Parkinglot()
                {
                    BuildingTypeId  = 1,
                    Capacity        = 5,
                    AvailablePlaces = 5,
                    ContactPersonId = 1,
                    DivisionId      = 1,
                    Name            = "Name",
                    Id        = 1,
                    PlAddress = new Address()
                    {
                        StreetNumber = "1",
                        StreetName   = "tt",
                        CityName     = "er",
                        PostalCode   = "4153"
                    },
                    PricePerHour = 10
                };
                context.Add(parkinglot);
                await context.SaveChangesAsync();

                #endregion fillingInMemoryDatabase

                var response = await client.GetAsync("api/parkinglots/1");

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

                ParkinglotDto parkinglotDto = JsonConvert.DeserializeObject <ParkinglotDto>(responseString);

                Assert.True(response.IsSuccessStatusCode);
                Assert.IsType <ParkinglotDto>(parkinglotDto);
            }
        }