public async Task ObtenerSalasDeCineA5kilometrosOMenos()
        {
            var geometryFactory = NtsGeometryServices.Instance.CreateGeometryFactory(srid: 4326);

            using (var context = LocalDbDatabaseInitializer.GetDbContextLocalDb(false))
            {
                var salasDeCine = new List <SalaDeCine>()
                {
                    new SalaDeCine {
                        Nombre = "Agora", Ubicacion = geometryFactory.CreatePoint(new Coordinate(-69.9388777, 18.4839233))
                    }
                };

                context.AddRange(salasDeCine);
                await context.SaveChangesAsync();
            }

            var filtro = new SalaDeCineCercanoFiltroDTO()
            {
                DistanciaEnKms = 5,
                Latitud        = 18.481139,
                Longitud       = -69.938950
            };

            using (var context = LocalDbDatabaseInitializer.GetDbContextLocalDb(false))
            {
                var mapper     = ConfigurarAutoMapper();
                var controller = new SalasDeCineController(context, mapper, geometryFactory);
                var respuesta  = await controller.Cercanos(filtro);

                var valor = respuesta.Value;
                Assert.AreEqual(2, valor.Count);
            }
        }
        public async Task GetMovieTheaters5KmsOrCloser()
        {
            var geometryFactory = NtsGeometryServices.Instance.CreateGeometryFactory(srid: 4326);

            using (var context = LocalDbDatabaseInitializer.GetDbContextLocalDb())
            {
                var theaters = new List <MovieTheater>
                {
                    new MovieTheater {
                        Name = "Agora", Location = geometryFactory.CreatePoint(new Coordinate(-69.9388777, 18.4839233))
                    },
                    new MovieTheater {
                        Name = "Sambil", Location = geometryFactory.CreatePoint(new Coordinate(-69.9118804, 18.4826214))
                    },
                    new MovieTheater {
                        Name = "Megacentro", Location = geometryFactory.CreatePoint(new Coordinate(-69.856427, 18.506934))
                    },
                    new MovieTheater {
                        Name = "Village East Cinema", Location = geometryFactory.CreatePoint(new Coordinate(-73.986227, 40.730898))
                    }
                };

                context.AddRange(theaters);
                context.SaveChanges();
            }

            var filterMovieTheatersDTO = new FilterMovieTheatersDto()
            {
                DistanceInKms = 5,
                Lat           = 18.481139,
                Long          = -69.938950
            };

            using (var context = LocalDbDatabaseInitializer.GetDbContextLocalDb())
            {
                var controller = new MovieTheatersController(context);

                var response = await controller.Get(filterMovieTheatersDTO);

                var theatersFromController = response.Value;

                Assert.AreEqual(2, theatersFromController.Count);
            }
        }
Exemple #3
0
        public async Task GetCinema5KmOrLess()
        {
            var geometryFactory = NtsGeometryServices.Instance.CreateGeometryFactory(srid: 4326);

            using (var context = LocalDbDatabaseInitializer.GetDbContextLocalDb(false))
            {
                var cinemas = new List <Cinema>()
                {
                    new Cinema {
                        Name = "Agora", Ubication = geometryFactory.CreatePoint(new Coordinate(-69.9388777, 18.4839233))
                    },
                    new Cinema {
                        Name = "Agora 2", Ubication = geometryFactory.CreatePoint(new Coordinate(-69.927275, 18.478026))
                    }
                };

                context.AddRange(cinemas);
                await context.SaveChangesAsync();
            }

            var filter = new NearbyCinemaFilterDTO()
            {
                DistanceInKms = 5,
                Latitude      = 18.481139,
                Longitude     = -69.938950
            };

            using (var context = LocalDbDatabaseInitializer.GetDbContextLocalDb(false))
            {
                var mapper     = ConfigurationAutoMapper();
                var controller = new CinemasController(context, mapper, geometryFactory);
                var response   = await controller.GetNearbyCinema(filter);

                var value = response.Value;
                Assert.AreEqual(2, value.Count);
            }
        }