Пример #1
0
        public async Task TestAllGoodData()
        {
            ACMDbContext    context         = ACMDbContextInMemoryFactory.InitializeContext();
            HomeownerSevice homeownerSevice = new HomeownerSevice(context);
            ACMUser         user            = new ACMUser {
                Email = "*****@*****.**", FullName = "gosho"
            };
            Idea idea1 = new Idea {
                Id = "1", User = user, Text = "idea1"
            };
            Idea idea2 = new Idea {
                Id = "2", User = user, Text = "idea2"
            };
            await context.Users.AddAsync(user);

            await context.Ideas.AddAsync(idea1);

            await context.Ideas.AddAsync(idea2);

            await context.SaveChangesAsync();

            var list = homeownerSevice.All();

            Assert.Equal(2, list.Count);
            Assert.Equal("1", list[1].Id);
            Assert.Equal("idea1", list[1].Text);
            Assert.Equal("*****@*****.**", list[1].UserName);
            Assert.Equal("gosho", list[1].Name);
            Assert.Equal("2", list[0].Id);
            Assert.Equal("idea2", list[0].Text);
            Assert.Equal("*****@*****.**", list[0].UserName);
            Assert.Equal("gosho", list[0].Name);
        }
Пример #2
0
        public async Task TestGetIdeaGoodData()
        {
            ACMDbContext    context         = ACMDbContextInMemoryFactory.InitializeContext();
            HomeownerSevice homeownerSevice = new HomeownerSevice(context);
            ACMUser         user            = new ACMUser {
                Email = "*****@*****.**", FullName = "gosho"
            };
            Idea idea1 = new Idea {
                Id = "1", User = user, Text = "idea1"
            };
            Idea idea2 = new Idea {
                Id = "2", User = user, Text = "idea2"
            };
            await context.Users.AddAsync(user);

            await context.Ideas.AddAsync(idea1);

            await context.Ideas.AddAsync(idea2);

            await context.SaveChangesAsync();

            EditIdeaDTO output = homeownerSevice.GetIdea(idea1.Id, user.Email);

            Assert.Equal(idea1.Text, output.Text);
            Assert.Equal(idea1.Id, output.Id);
        }
Пример #3
0
        public async Task TestGetIdeaInvalidId()
        {
            ACMDbContext    context         = ACMDbContextInMemoryFactory.InitializeContext();
            HomeownerSevice homeownerSevice = new HomeownerSevice(context);
            ACMUser         user            = new ACMUser {
                Email = "*****@*****.**", FullName = "gosho"
            };
            Idea idea1 = new Idea {
                Id = "1", User = user, Text = "idea1"
            };
            Idea idea2 = new Idea {
                Id = "2", User = user, Text = "idea2"
            };
            await context.Users.AddAsync(user);

            await context.Ideas.AddAsync(idea1);

            await context.Ideas.AddAsync(idea2);

            await context.SaveChangesAsync();

            Action act = () => homeownerSevice
                         .GetIdea(idea1.Id + "Random string", user.Email);

            Assert.Throws <ACMException>(act);
        }
Пример #4
0
        public async Task TestEditIdeaGoodData()
        {
            ACMDbContext    context         = ACMDbContextInMemoryFactory.InitializeContext();
            HomeownerSevice homeownerSevice = new HomeownerSevice(context);
            ACMUser         user            = new ACMUser {
                Email = "*****@*****.**", FullName = "gosho"
            };
            Idea idea1 = new Idea {
                Id = "1", User = user, Text = "idea1"
            };
            Idea idea2 = new Idea {
                Id = "2", User = user, Text = "idea2"
            };
            await context.Users.AddAsync(user);

            await context.Ideas.AddAsync(idea1);

            await context.Ideas.AddAsync(idea2);

            await context.SaveChangesAsync();

            bool output = await homeownerSevice.EditIdea(idea1.Id, user.Email, "Edited text");

            Assert.True(output);
            Assert.Equal("Edited text", context.Ideas
                         .Where(x => x.Id == idea1.Id)
                         .FirstOrDefault()
                         .Text);
        }
Пример #5
0
        public async Task TestDeleteIdeaGoodData()
        {
            ACMDbContext    context         = ACMDbContextInMemoryFactory.InitializeContext();
            HomeownerSevice homeownerSevice = new HomeownerSevice(context);
            ACMUser         user            = new ACMUser {
                Email = "*****@*****.**", FullName = "gosho"
            };
            Idea idea1 = new Idea {
                Id = "1", User = user, Text = "idea1"
            };
            Idea idea2 = new Idea {
                Id = "2", User = user, Text = "idea2"
            };
            await context.Users.AddAsync(user);

            await context.Ideas.AddAsync(idea1);

            await context.Ideas.AddAsync(idea2);

            await context.SaveChangesAsync();

            bool output = await homeownerSevice.DeleteIdea(idea1.Id, user.Email);

            Assert.True(output);
            Assert.Single(context.Ideas.ToList());
            Assert.True(context.Ideas.Any(x => x.Id == idea2.Id));
        }
Пример #6
0
        public void TestAllEmptyTable()
        {
            ACMDbContext    context         = ACMDbContextInMemoryFactory.InitializeContext();
            HomeownerSevice homeownerSevice = new HomeownerSevice(context);
            var             list            = homeownerSevice.All();

            Assert.Empty(list);
        }
Пример #7
0
        public async Task TestAdminDeleteIdeaInvalidId()
        {
            ACMDbContext    context         = ACMDbContextInMemoryFactory.InitializeContext();
            HomeownerSevice homeownerSevice = new HomeownerSevice(context);
            Idea            idea            = new Idea {
                Id = "1"
            };
            await context.AddAsync(idea);

            await context.SaveChangesAsync();

            await Assert.ThrowsAsync <ACMException>(() => homeownerSevice.AdminDeleteIdea("2"));
        }
Пример #8
0
        public async Task TestCreateInvalidUser()
        {
            ACMDbContext    context         = ACMDbContextInMemoryFactory.InitializeContext();
            HomeownerSevice homeownerSevice = new HomeownerSevice(context);
            ACMUser         user            = new ACMUser {
                Email = "*****@*****.**"
            };
            await context.Users.AddAsync(user);

            await context.SaveChangesAsync();

            await Assert.ThrowsAsync <ACMException>(()
                                                    => homeownerSevice.Create("beer", "NOT [email protected]"));
        }
Пример #9
0
        public async Task TestAdminDeleteIdeaGoodData()
        {
            ACMDbContext    context         = ACMDbContextInMemoryFactory.InitializeContext();
            HomeownerSevice homeownerSevice = new HomeownerSevice(context);
            Idea            idea            = new Idea {
                Id = "1"
            };
            await context.AddAsync(idea);

            await context.SaveChangesAsync();

            bool output = await homeownerSevice.AdminDeleteIdea("1");

            Assert.True(output);
            Assert.Empty(context.Ideas.ToList());
        }
Пример #10
0
        public async Task TestCreateGoodData()
        {
            ACMDbContext    context         = ACMDbContextInMemoryFactory.InitializeContext();
            HomeownerSevice homeownerSevice = new HomeownerSevice(context);
            ACMUser         user            = new ACMUser {
                Email = "*****@*****.**"
            };
            await context.Users.AddAsync(user);

            await context.SaveChangesAsync();

            string id = await homeownerSevice.Create("beer", "*****@*****.**");

            Assert.Single(context.Ideas.ToList());
            Assert.Equal("beer", context.Ideas
                         .Where(x => x.Id == id)
                         .FirstOrDefault()
                         .Text);
            Assert.Equal("*****@*****.**", context.Ideas
                         .Where(x => x.Id == id)
                         .FirstOrDefault()
                         .User.Email);
        }