コード例 #1
0
        public void AddToQuantityShouldIncreaseTheQuantityWithOne()
        {
            DbContextOptions <UltimateMoviesDbContext> options = new DbContextOptionsBuilder <UltimateMoviesDbContext>()
                                                                 .UseInMemoryDatabase(databaseName: "Carts_AddToQuantity_Database")
                                                                 .Options;
            UltimateMoviesDbContext db = new UltimateMoviesDbContext(options);

            ICartsService cartsService = new CartsService(db);

            db.Users.Add(new UMUser
            {
                UserName = "******"
            });

            db.SaveChanges();

            db.CartMovies.Add(new CartMovie
            {
                MovieId  = 1,
                UserId   = db.Users.Last().Id,
                Quantity = 1
            });

            db.SaveChanges();

            cartsService.AddToQuantity("Test", 1);

            int quantity = db.CartMovies.Last().Quantity;

            Assert.Equal(2, quantity);
        }
コード例 #2
0
        public void GetAllMoviesShouldReturnIEnurableOfMovies()
        {
            DbContextOptions <UltimateMoviesDbContext> options = new DbContextOptionsBuilder <UltimateMoviesDbContext>()
                                                                 .UseInMemoryDatabase(databaseName: "Movies_GetAllMovies_Database")
                                                                 .Options;
            UltimateMoviesDbContext db = new UltimateMoviesDbContext(options);

            IMoviesService moviesService = new MoviesService(db);

            db.Movies.Add(new Movie {
                Name = "Test 1"
            });
            db.Movies.Add(new Movie {
                Name = "Test 2"
            });
            db.Movies.Add(new Movie {
                Name = "Test 3"
            });

            db.SaveChanges();

            IEnumerable <Movie> movies = moviesService.GetAllMovies();

            int moviesCount = movies.Count();

            Assert.Equal(3, moviesCount);
        }
コード例 #3
0
        public void AddMovieToCartShouldAddMovieAndUserToCartMovies()
        {
            DbContextOptions <UltimateMoviesDbContext> options = new DbContextOptionsBuilder <UltimateMoviesDbContext>()
                                                                 .UseInMemoryDatabase(databaseName: "Carts_AddMovieToCart_Database")
                                                                 .Options;
            UltimateMoviesDbContext db = new UltimateMoviesDbContext(options);

            ICartsService cartsService = new CartsService(db);

            db.Users.Add(new UMUser
            {
                UserName = "******"
            });

            db.SaveChanges();

            db.Movies.Add(new Movie
            {
                Name = "Test Movie"
            });

            db.SaveChanges();

            cartsService.AddMovieToCart(db.Users.ToList()[0].UserName, db.Movies.ToList()[0].Id);

            int    cartMoviesCount   = db.CartMovies.ToList().Count();
            string cartMoviesUserId  = db.CartMovies.ToList()[0].UserId;
            int    cartMoviesMovieId = db.CartMovies.ToList()[0].MovieId;

            Assert.Equal(1, cartMoviesCount);
            Assert.Equal(db.Users.ToList()[0].Id, cartMoviesUserId);
            Assert.Equal(db.Movies.ToList()[0].Id, cartMoviesMovieId);
        }
コード例 #4
0
        public void AddMovieToWishListShouldAddMovieToWishListMovies()
        {
            DbContextOptions <UltimateMoviesDbContext> options = new DbContextOptionsBuilder <UltimateMoviesDbContext>()
                                                                 .UseInMemoryDatabase(databaseName: "Users_AddMovieToWishList_Database")
                                                                 .Options;
            UltimateMoviesDbContext db = new UltimateMoviesDbContext(options);

            IUsersService usersService = new UsersService(db);

            db.Users.Add(new UMUser {
                UserName = "******"
            });

            db.SaveChanges();

            db.Movies.Add(new Movie {
                Name = "Test 1"
            });

            db.SaveChanges();

            usersService.AddMovieToWishList("Tester", db.Movies.Last().Id);

            int wishListMoviesCount = db.WishListMovies.Count();

            Assert.Equal(1, wishListMoviesCount);
        }
コード例 #5
0
        public void PayAnOrderShouldChangeTheOrderStatus()
        {
            DbContextOptions <UltimateMoviesDbContext> options = new DbContextOptionsBuilder <UltimateMoviesDbContext>()
                                                                 .UseInMemoryDatabase(databaseName: "Orders_PayAnOrder_Database")
                                                                 .Options;
            UltimateMoviesDbContext db = new UltimateMoviesDbContext(options);

            IOrdersService ordersService = new OrdersService(db);

            db.Users.Add(new UMUser {
                UserName = "******"
            });

            db.SaveChanges();

            db.Orders.Add(new Order {
                UserId = db.Users.Last().Id, OrderStatus = OrderStatus.Unfinished
            });

            db.SaveChanges();

            ordersService.PayAnOrder("Tester", db.Orders.Last().Id);

            Assert.Equal(OrderStatus.Unprocessed, db.Orders.Last().OrderStatus);
        }
コード例 #6
0
        public void DeliverOrderShouldChangeTheOrderStatusAndSetTheProcessDateToNow()
        {
            DbContextOptions <UltimateMoviesDbContext> options = new DbContextOptionsBuilder <UltimateMoviesDbContext>()
                                                                 .UseInMemoryDatabase(databaseName: "Orders_DeliverOrder_Database")
                                                                 .Options;
            UltimateMoviesDbContext db = new UltimateMoviesDbContext(options);

            IOrdersService ordersService = new OrdersService(db);

            db.Orders.Add(new Order
            {
                OrderStatus  = OrderStatus.Unprocessed,
                OrderDate    = DateTime.Now,
                ProcesedDate = DateTime.Now
            });

            db.SaveChanges();

            ordersService.DeliverOrder(db.Orders.Last().Id);

            int isNull = db.Orders.Last().DeliveredDate != null ? 1 : 2;

            Assert.Equal(OrderStatus.Delivered, db.Orders.Last().OrderStatus);
            Assert.Equal(1, isNull);
        }
コード例 #7
0
        public void GetMoviesFromWishListShouldReturnCollectionOfMovies()
        {
            DbContextOptions <UltimateMoviesDbContext> options = new DbContextOptionsBuilder <UltimateMoviesDbContext>()
                                                                 .UseInMemoryDatabase(databaseName: "Users_GetMoviesFromWishList_Database")
                                                                 .Options;
            UltimateMoviesDbContext db = new UltimateMoviesDbContext(options);

            IUsersService usersService = new UsersService(db);

            db.Users.Add(new UMUser {
                UserName = "******"
            });

            db.SaveChanges();

            db.WishListMovies.Add(new WishListMovie {
                MovieId = 1, UserId = db.Users.Last().Id
            });
            db.WishListMovies.Add(new WishListMovie {
                MovieId = 2, UserId = db.Users.Last().Id
            });
            db.WishListMovies.Add(new WishListMovie {
                MovieId = 3, UserId = "101"
            });

            db.SaveChanges();

            List <Movie> movies = usersService.GetMoviesFromWishList("Tester").ToList();

            int moviesCount = movies.Count();

            Assert.Equal(2, moviesCount);
        }
コード例 #8
0
        public void GetAllUserAddressesShouldReturnCollectionOfAddresses()
        {
            DbContextOptions <UltimateMoviesDbContext> options = new DbContextOptionsBuilder <UltimateMoviesDbContext>()
                                                                 .UseInMemoryDatabase(databaseName: "Orders_GetAllUserAddresses_Database")
                                                                 .Options;
            UltimateMoviesDbContext db = new UltimateMoviesDbContext(options);

            IOrdersService ordersService = new OrdersService(db);

            db.Users.Add(new UMUser {
                UserName = "******"
            });

            db.SaveChanges();

            db.Addresses.Add(new Address {
                UserId = db.Users.ToList()[0].Id
            });
            db.Addresses.Add(new Address {
                UserId = db.Users.ToList()[0].Id
            });
            db.Addresses.Add(new Address {
                UserId = db.Users.ToList()[0].Id
            });

            db.SaveChanges();

            ICollection <Address> addresses = ordersService.GetAllUserAddresses("Tester");

            int addressCount = addresses.Count();

            Assert.Equal(3, addressCount);
        }
コード例 #9
0
        public void RemoveAddressShouldRemoveAnAddressFromTheDatabase()
        {
            DbContextOptions <UltimateMoviesDbContext> options = new DbContextOptionsBuilder <UltimateMoviesDbContext>()
                                                                 .UseInMemoryDatabase(databaseName: "Addresses_RemoveAddress_Database")
                                                                 .Options;
            UltimateMoviesDbContext db = new UltimateMoviesDbContext(options);

            IAddressesService addressesService = new AddressService(db);

            db.Addresses.Add(new Address {
                Country = "Test 1"
            });
            db.Addresses.Add(new Address {
                Country = "Test 2"
            });

            db.SaveChanges();

            addressesService.RemoveAddress(db.Addresses.Last().Id);

            int    addressesCount     = db.Addresses.ToList().Count();
            string leftAddressCountry = db.Addresses.ToList()[0].Country;

            Assert.Equal(1, addressesCount);
            Assert.Equal("Test 1", leftAddressCountry);
        }
コード例 #10
0
        public void EditAddressShouldChangeAddressValues()
        {
            DbContextOptions <UltimateMoviesDbContext> options = new DbContextOptionsBuilder <UltimateMoviesDbContext>()
                                                                 .UseInMemoryDatabase(databaseName: "Addresses_EditAddress_Database")
                                                                 .Options;
            UltimateMoviesDbContext db = new UltimateMoviesDbContext(options);

            IAddressesService addressesService = new AddressService(db);

            db.Addresses.Add(new Address
            {
                Country = "Country",
                City    = "City",
                Street  = "Street",
                AdditionalInformation = "Additional Information",
                Postcode = 1111
            });

            db.SaveChanges();

            addressesService.EditAddress("co", "ci", "st", "ai", 11, db.Addresses.Last().Id);

            Assert.Equal("co", db.Addresses.Last().Country);
            Assert.Equal("ci", db.Addresses.Last().City);
            Assert.Equal("st", db.Addresses.Last().Street);
            Assert.Equal("ai", db.Addresses.Last().AdditionalInformation);
            Assert.Equal(11, db.Addresses.Last().Postcode);
        }
コード例 #11
0
        public void GetMoviesShouldReturnACollectionOfMovies()
        {
            DbContextOptions <UltimateMoviesDbContext> options = new DbContextOptionsBuilder <UltimateMoviesDbContext>()
                                                                 .UseInMemoryDatabase(databaseName: "Home_GetMovies_Database")
                                                                 .Options;
            UltimateMoviesDbContext db = new UltimateMoviesDbContext(options);

            IHomeServices homeServices = new HomeServices(db);

            db.Movies.Add(new Movie {
                Name = "Test 1"
            });
            db.Movies.Add(new Movie {
                Name = "Test 2"
            });
            db.Movies.Add(new Movie {
                Name = "Test 3"
            });
            db.Movies.Add(new Movie {
                Name = "Test 4"
            });

            db.SaveChanges();

            List <Movie> movies = homeServices.GetMovies().ToList();

            int moviesCount = movies.Count();

            Assert.Equal(4, moviesCount);
        }
コード例 #12
0
        public void RemoveMovieFromWishListShouldRemoveWishListMovieFromRemoveWishListMoviesDB()
        {
            DbContextOptions <UltimateMoviesDbContext> options = new DbContextOptionsBuilder <UltimateMoviesDbContext>()
                                                                 .UseInMemoryDatabase(databaseName: "Users_RemoveMovieFromWish_Database")
                                                                 .Options;
            UltimateMoviesDbContext db = new UltimateMoviesDbContext(options);

            IUsersService usersService = new UsersService(db);

            db.Users.Add(new UMUser {
                UserName = "******"
            });

            db.SaveChanges();

            db.Movies.Add(new Movie {
                Name = "Test"
            });

            db.SaveChanges();

            db.WishListMovies.Add(new WishListMovie {
                MovieId = db.Movies.Last().Id, UserId = db.Users.Last().Id
            });

            db.SaveChanges();

            usersService.RemoveMovieFromWishList("Tester", db.Movies.Last().Id);

            Assert.Equal(0, db.WishListMovies.Count());
        }
コード例 #13
0
        public void GetCartMoviesShouldReturnADictionaryOfMoviesAndInts()
        {
            DbContextOptions <UltimateMoviesDbContext> options = new DbContextOptionsBuilder <UltimateMoviesDbContext>()
                                                                 .UseInMemoryDatabase(databaseName: "Orders_GetCartMovies_Database")
                                                                 .Options;
            UltimateMoviesDbContext db = new UltimateMoviesDbContext(options);

            IOrdersService ordersService = new OrdersService(db);

            db.Users.Add(new UMUser {
                UserName = "******"
            });

            db.SaveChanges();

            db.Movies.Add(new Movie {
                Name = "Test1"
            });
            db.Movies.Add(new Movie {
                Name = "Test2"
            });
            db.Movies.Add(new Movie {
                Name = "Test3"
            });

            db.SaveChanges();

            db.CartMovies.Add(new CartMovie
            {
                MovieId  = db.Movies.ToList()[0].Id,
                UserId   = db.Users.Last().Id,
                Quantity = 1
            });

            db.CartMovies.Add(new CartMovie
            {
                MovieId  = db.Movies.ToList()[1].Id,
                UserId   = db.Users.Last().Id,
                Quantity = 1
            });

            db.CartMovies.Add(new CartMovie
            {
                MovieId  = db.Movies.ToList()[2].Id,
                UserId   = db.Users.Last().Id,
                Quantity = 1
            });

            db.SaveChanges();

            Dictionary <Movie, int> cart = ordersService.GetCartMovies("Tester");

            int cartCount = cart.Count();

            Assert.Equal(3, cartCount);
        }
コード例 #14
0
        public void RemoveMovieFromCartShouldRemoveAMovieFromTheCart()
        {
            DbContextOptions <UltimateMoviesDbContext> options = new DbContextOptionsBuilder <UltimateMoviesDbContext>()
                                                                 .UseInMemoryDatabase(databaseName: "Carts_RemoveMovieFromCart_Database")
                                                                 .Options;
            UltimateMoviesDbContext db = new UltimateMoviesDbContext(options);

            ICartsService cartsService = new CartsService(db);

            db.Users.Add(new UMUser
            {
                UserName = "******"
            });

            db.SaveChanges();

            db.Movies.Add(new Movie
            {
                Name = "Test Movie"
            });

            db.Movies.Add(new Movie
            {
                Name = "Test Movie 2"
            });

            db.SaveChanges();

            db.CartMovies.Add(new CartMovie
            {
                UserId   = db.Users.Last().Id,
                MovieId  = db.Movies.ToList()[0].Id,
                Quantity = 1
            });

            db.CartMovies.Add(new CartMovie
            {
                UserId   = db.Users.Last().Id,
                MovieId  = db.Movies.ToList()[1].Id,
                Quantity = 1
            });

            db.SaveChanges();

            cartsService.RemoveMovieFromCart("Test", db.Movies.FirstOrDefault(m => m.Name == "Test Movie 2").Id);

            int cartMoviesCount = db.CartMovies.ToList().FindAll(c => c.UserId == db.Users.Last().Id).Count();

            Assert.Equal(1, cartMoviesCount);
        }
コード例 #15
0
        public void SuggestAMovieShouldAddSuggestedMovieToDatabase()
        {
            DbContextOptions <UltimateMoviesDbContext> options = new DbContextOptionsBuilder <UltimateMoviesDbContext>()
                                                                 .UseInMemoryDatabase(databaseName: "Movies_SuggestAMovie_Database")
                                                                 .Options;
            UltimateMoviesDbContext db = new UltimateMoviesDbContext(options);

            IMoviesService moviesService = new MoviesService(db);

            moviesService.SuggestAMovie("Test", "TestUrl");

            int suggestedMoviesCount = db.SuggestedMovies.Count();

            Assert.Equal(1, suggestedMoviesCount);
        }
コード例 #16
0
        public void CreateActorShouldCreateActor()
        {
            DbContextOptions <UltimateMoviesDbContext> options = new DbContextOptionsBuilder <UltimateMoviesDbContext>()
                                                                 .UseInMemoryDatabase(databaseName: "Actors_CreateActor_Database")
                                                                 .Options;
            UltimateMoviesDbContext db = new UltimateMoviesDbContext(options);

            IActorsService actorsService = new ActorsService(db);

            actorsService.CreateActor("Test Actor");
            actorsService.CreateActor("Test Actor 2");
            actorsService.CreateActor("Test Actor 3");

            int actorsCount = db.Actors.ToList().Count();

            Assert.Equal(3, actorsCount);
        }
コード例 #17
0
        public void EditAMovieShouldReplaceTheOldInformationWithNewInTheDB()
        {
            DbContextOptions <UltimateMoviesDbContext> options = new DbContextOptionsBuilder <UltimateMoviesDbContext>()
                                                                 .UseInMemoryDatabase(databaseName: "Movies_EditAMovie_Database")
                                                                 .Options;
            UltimateMoviesDbContext db = new UltimateMoviesDbContext(options);

            IMoviesService moviesService = new MoviesService(db);

            db.Movies.Add(new Movie
            {
                BluRayPrice    = 1,
                Description    = "1",
                Directors      = "1",
                DvdPrice       = 1,
                Genre          = MovieGenre.Action,
                Genre2         = MovieGenre.Adventure,
                IMDbScore      = 1,
                IMDbUrl        = "1",
                Length         = 1,
                Name           = "",
                OnlinePrice    = 1,
                PosterUrl      = "1",
                RottenTomatoes = 1,
                ReleaseDate    = DateTime.Now,
                TrailerUrl     = "1"
            });

            db.SaveChanges();

            moviesService.EditAMovie(db.Movies.Last().Id, "2", 2, 2, 2, "2", "2", MovieGenre.Adventure, MovieGenre.Comedy, MovieGenre.Drama, DateTime.Now, 2, 2, 2, "2", "2", "2");

            Movie movie = db.Movies.Last();

            Assert.Equal("2", movie.Name);
            Assert.Equal(2, movie.BluRayPrice);
            Assert.Equal(2, movie.OnlinePrice);
            Assert.Equal(2, movie.DvdPrice);
            Assert.Equal(2, movie.IMDbScore);
            Assert.Equal(2, movie.RottenTomatoes);
            Assert.Equal("2", movie.IMDbUrl);
            Assert.Equal(2, movie.Length);
            Assert.Equal("2", movie.Description);
        }
コード例 #18
0
        public void GetMovieShouldReturnMovie()
        {
            DbContextOptions <UltimateMoviesDbContext> options = new DbContextOptionsBuilder <UltimateMoviesDbContext>()
                                                                 .UseInMemoryDatabase(databaseName: "Movies_GetMovie_Database")
                                                                 .Options;
            UltimateMoviesDbContext db = new UltimateMoviesDbContext(options);

            IMoviesService moviesService = new MoviesService(db);

            db.Movies.Add(new Movie {
                Name = "Test Movie"
            });

            db.SaveChanges();

            Movie movie = moviesService.GetMovie(db.Movies.Last().Id);

            Assert.Equal("Test Movie", movie.Name);
        }
コード例 #19
0
        public void AddPhoneToUserShouldChangeOrAddPhoneToUser()
        {
            DbContextOptions <UltimateMoviesDbContext> options = new DbContextOptionsBuilder <UltimateMoviesDbContext>()
                                                                 .UseInMemoryDatabase(databaseName: "Users_AddPhoneToUser_Database")
                                                                 .Options;
            UltimateMoviesDbContext db = new UltimateMoviesDbContext(options);

            IUsersService usersService = new UsersService(db);

            db.Users.Add(new UMUser {
                UserName = "******"
            });

            db.SaveChanges();

            usersService.AddPhoneToUser("Tester", "080011100");

            Assert.Equal("080011100", db.Users.Last().PhoneNumber);
        }
コード例 #20
0
        public void GetUserShouldReturnUser()
        {
            DbContextOptions <UltimateMoviesDbContext> options = new DbContextOptionsBuilder <UltimateMoviesDbContext>()
                                                                 .UseInMemoryDatabase(databaseName: "Orders_GetUser_Database")
                                                                 .Options;
            UltimateMoviesDbContext db = new UltimateMoviesDbContext(options);

            IOrdersService ordersService = new OrdersService(db);

            db.Users.Add(new UMUser {
                UserName = "******"
            });

            db.SaveChanges();

            UMUser user = ordersService.GetUser("Tester");

            Assert.Equal("Tester", user.UserName);
        }
コード例 #21
0
        public void CreateMovieShouldAddMoviesToTheDatabase()
        {
            DbContextOptions <UltimateMoviesDbContext> options = new DbContextOptionsBuilder <UltimateMoviesDbContext>()
                                                                 .UseInMemoryDatabase(databaseName: "Movies_CreateMovie_Database")
                                                                 .Options;
            UltimateMoviesDbContext db = new UltimateMoviesDbContext(options);

            IMoviesService moviesService = new MoviesService(db);

            moviesService.CreateMovie("Test 1", 10, 10, 10, "Description", "Directors", MovieGenre.Action,
                                      MovieGenre.Adventure, null, DateTime.Now, 100, 10, 100, "link", "Actor Name\r\nAnother Actor", "posterUrl",
                                      "trailerUrl");

            int moviesCount = db.Movies.ToList().Count();
            int actorsCount = db.Actors.ToList().Count();

            Assert.Equal(1, moviesCount);
            Assert.Equal(2, actorsCount);
        }
コード例 #22
0
        public void GetAllActorsShouldReturnAllActors()
        {
            DbContextOptions <UltimateMoviesDbContext> options = new DbContextOptionsBuilder <UltimateMoviesDbContext>()
                                                                 .UseInMemoryDatabase(databaseName: "Actors_GetAllActors_Database")
                                                                 .Options;
            UltimateMoviesDbContext db = new UltimateMoviesDbContext(options);

            IActorsService actorsService = new ActorsService(db);

            actorsService.CreateActor("Name 1");
            actorsService.CreateActor("Name 2");
            actorsService.CreateActor("Name 3");
            actorsService.CreateActor("Name 4");

            List <Actor> actors = actorsService.GetAllActors().ToList();

            int actorsCount = actors.Count();

            Assert.Equal(4, actorsCount);
        }
コード例 #23
0
        public void GetActorShouldReturnActor()
        {
            DbContextOptions <UltimateMoviesDbContext> options = new DbContextOptionsBuilder <UltimateMoviesDbContext>()
                                                                 .UseInMemoryDatabase(databaseName: "Actors_GetActor_Database")
                                                                 .Options;
            UltimateMoviesDbContext db = new UltimateMoviesDbContext(options);

            IActorsService actorsService = new ActorsService(db);

            db.Actors.Add(new Actor
            {
                Name = "Mark Hamill"
            });

            db.SaveChanges();

            Actor actor = actorsService.GetActor(db.Actors.Last().Id);

            Assert.Equal("Mark Hamill", actor.Name);
        }
コード例 #24
0
        public void GetAddressShoudlReturnAddress()
        {
            DbContextOptions <UltimateMoviesDbContext> options = new DbContextOptionsBuilder <UltimateMoviesDbContext>()
                                                                 .UseInMemoryDatabase(databaseName: "Addresses_GetAddress_Database")
                                                                 .Options;
            UltimateMoviesDbContext db = new UltimateMoviesDbContext(options);

            IAddressesService addressesService = new AddressService(db);

            db.Addresses.Add(new Address
            {
                Country = "Country"
            });

            db.SaveChanges();

            Address address = addressesService.GetAddress(db.Addresses.Last().Id);

            Assert.Equal("Country", address.Country);
        }
コード例 #25
0
        public void GetActorsMoviesAndPostersShouldReturnAListOfMovies()
        {
            DbContextOptions <UltimateMoviesDbContext> options = new DbContextOptionsBuilder <UltimateMoviesDbContext>()
                                                                 .UseInMemoryDatabase(databaseName: "Actors_GetActorsMoviesAndPosters_Database")
                                                                 .Options;
            UltimateMoviesDbContext db = new UltimateMoviesDbContext(options);

            IActorsService actorsService = new ActorsService(db);

            db.Movies.Add(new Movie
            {
                Name      = "Test Name",
                PosterUrl = "https://imdb.com/"
            });

            db.SaveChanges();

            db.Actors.Add(new Actor
            {
                Name = "Test Actor"
            });

            db.SaveChanges();

            db.ActorsMovies.Add(new ActorMovie
            {
                ActorId = db.Actors.Last().Id,
                MovieId = db.Movies.Last().Id
            });

            db.SaveChanges();

            List <Movie> movies = actorsService.GetActorsMoviesAndPosters(db.Actors.Last().Id).ToList();

            int moviesCount = movies.Count();

            Assert.Equal(1, moviesCount);
            Assert.Equal(db.Movies.Last().Id, movies[0].Id);
            Assert.Equal("Test Name", movies[0].Name);
            Assert.Equal("https://imdb.com/", movies[0].PosterUrl);
        }
コード例 #26
0
        public void GetActorsNamesShouldReturnACollectionOfActors()
        {
            DbContextOptions <UltimateMoviesDbContext> options = new DbContextOptionsBuilder <UltimateMoviesDbContext>()
                                                                 .UseInMemoryDatabase(databaseName: "Movies_GetActorsNames_Database")
                                                                 .Options;
            UltimateMoviesDbContext db = new UltimateMoviesDbContext(options);

            IMoviesService moviesService = new MoviesService(db);

            db.Actors.Add(new Actor
            {
                Name = "Tester"
            });

            db.Actors.Add(new Actor
            {
                Name = "Tester 2"
            });

            db.SaveChanges();

            db.ActorsMovies.Add(new ActorMovie
            {
                ActorId = db.Actors.ToList()[0].Id,
                MovieId = 1
            });

            db.ActorsMovies.Add(new ActorMovie
            {
                ActorId = db.Actors.ToList()[1].Id,
                MovieId = 1
            });

            db.SaveChanges();

            List <Actor> actors = moviesService.GetActorsNames(1).ToList();

            int actorsCount = actors.Count();

            Assert.Equal(2, actorsCount);
        }
コード例 #27
0
        public void RemoveActorFromMovieShouldDeleteActorMovie()
        {
            DbContextOptions <UltimateMoviesDbContext> options = new DbContextOptionsBuilder <UltimateMoviesDbContext>()
                                                                 .UseInMemoryDatabase(databaseName: "Movies_RemoveActorFromMovie_Database")
                                                                 .Options;
            UltimateMoviesDbContext db = new UltimateMoviesDbContext(options);

            IMoviesService moviesService = new MoviesService(db);

            db.ActorsMovies.Add(new ActorMovie {
                ActorId = 1, MovieId = 1
            });

            db.SaveChanges();

            moviesService.RemoveActorFromMovie(1, 1);

            int count = db.ActorsMovies.Count();

            Assert.Equal(0, count);
        }
コード例 #28
0
        public void CreateAnOrderShouldAddAnOrderToTheDatabase()
        {
            DbContextOptions <UltimateMoviesDbContext> options = new DbContextOptionsBuilder <UltimateMoviesDbContext>()
                                                                 .UseInMemoryDatabase(databaseName: "Orders_CreateAnOrder_Database")
                                                                 .Options;
            UltimateMoviesDbContext db = new UltimateMoviesDbContext(options);

            IOrdersService ordersService = new OrdersService(db);

            db.Users.Add(new UMUser {
                UserName = "******"
            });

            db.SaveChanges();

            db.Addresses.Add(new Address {
                UserId = db.Users.Last().Id
            });

            db.SaveChanges();

            db.Movies.Add(new Movie {
                Name = "Test"
            });

            db.SaveChanges();

            db.CartMovies.Add(new CartMovie
            {
                MovieId  = db.Movies.Last().Id,
                UserId   = db.Users.Last().Id,
                Quantity = 1
            });

            db.SaveChanges();

            ordersService.CreateAnOrder(10, DeliveryType.Normal, PaymentType.CashOnDelivery, db.Addresses.Last().Id, "Tester", "0888888888");

            Assert.Equal(1, db.Orders.Count());
        }
コード例 #29
0
        public void CreateANewAddressShouldCreateANewAddress()
        {
            DbContextOptions <UltimateMoviesDbContext> options = new DbContextOptionsBuilder <UltimateMoviesDbContext>()
                                                                 .UseInMemoryDatabase(databaseName: "Addresses_CreateANewAddress_Database")
                                                                 .Options;
            UltimateMoviesDbContext db = new UltimateMoviesDbContext(options);

            IAddressesService addressesService = new AddressService(db);

            db.Users.Add(new UMUser
            {
                UserName = "******"
            });

            db.SaveChanges();

            addressesService.CreateANewAddress("Country", "City", "Street", "Additional Information", 1111, "TestUser");

            int addressesCount = db.Addresses.ToList().Count();

            Assert.Equal(1, addressesCount);
        }
コード例 #30
0
        public void IsMovieInUserWishlistShouldReturnABoolean()
        {
            DbContextOptions <UltimateMoviesDbContext> options = new DbContextOptionsBuilder <UltimateMoviesDbContext>()
                                                                 .UseInMemoryDatabase(databaseName: "Home_IsMovieInUserWishlist_Database")
                                                                 .Options;
            UltimateMoviesDbContext db = new UltimateMoviesDbContext(options);

            IHomeServices homeServices = new HomeServices(db);

            db.Users.Add(new UMUser {
                UserName = "******"
            });

            db.SaveChanges();

            db.Movies.Add(new Movie {
                Name = "Test 1"
            });
            db.Movies.Add(new Movie {
                Name = "Test 2"
            });

            db.SaveChanges();

            db.WishListMovies.Add(new WishListMovie
            {
                MovieId = db.Movies.ToList()[0].Id,
                UserId  = db.Users.Last().Id
            });

            db.SaveChanges();

            string movie1 = homeServices.IsMovieInUserWishlist("Tester", db.Movies.ToList()[0].Id) ? "In" : "Out";
            string movie2 = homeServices.IsMovieInUserWishlist("Tester", db.Movies.ToList()[1].Id) ? "In" : "Out";

            Assert.Equal("In", movie1);
            Assert.Equal("Out", movie2);
        }