Exemplo n.º 1
0
        public void GetAllPlayerPartsByUserName_ShoudlReturnCorrectPlayerParts()
        {
            var options = GetDbOptions("GetAllPlayerPartsByUserName_Database");

            var dummPlayer1 = new Player()
            {
                UserName = "******"
            };
            var dummPlayer2 = new Player()
            {
                UserName = "******"
            };

            var dummyPart1 = new Part()
            {
                Id = 1
            };
            var dummyPart2 = new Part()
            {
                Id = 2
            };
            var dummyPart3 = new Part()
            {
                Id = 3
            };

            var dummyPlayerPart1 = new PlayerParts()
            {
                Player = dummPlayer1, Part = dummyPart1
            };
            var dummyPlayerPart2 = new PlayerParts()
            {
                Player = dummPlayer1, Part = dummyPart2
            };
            var dummyPlayerPart3 = new PlayerParts()
            {
                Player = dummPlayer2, Part = dummyPart3
            };

            using (var context = new RiderDBContext(options))
            {
                context.PlayerParts.Add(dummyPlayerPart1);
                context.PlayerParts.Add(dummyPlayerPart2);
                context.PlayerParts.Add(dummyPlayerPart3);
                context.SaveChanges();
            }

            List <PlayerParts> actual;

            using (var context = new RiderDBContext(options))
            {
                var partsService = new PartsService(context);
                actual = partsService.GetAllPlayerPartsByUserName("Dummy1").ToList();
            }

            Assert.True(actual.Count() == 2);
            Assert.Contains(actual, x => x.Id == dummyPlayerPart1.Id);
            Assert.Contains(actual, x => x.Id == dummyPlayerPart2.Id);

            using (var context = new RiderDBContext(options))
            {
                var partsService = new PartsService(context);
                actual = partsService.GetAllPlayerPartsByUserName("Dummy2").ToList();
            }

            Assert.True(actual.Count() == 1);
            Assert.Contains(actual, x => x.Id == dummyPlayerPart3.Id);

            using (var context = new RiderDBContext(options))
            {
                var partsService = new PartsService(context);
                actual = partsService.GetAllPlayerPartsByUserName("Dummy").ToList();
            }

            Assert.True(actual.Count() == 0);
        }