Esempio n. 1
0
        public async System.Threading.Tasks.Task AddTeacher_ToCourse_TestAsync()
        {
            var options = new DbContextOptionsBuilder <OlpContext>()
                          .UseInMemoryDatabase(databaseName: "Add_writes_to_database_TeacherCourses")
                          .Options;

            // Run the test against one instance of the context
            using (var context = new OlpContext(options))
            {
                Teacher teacher = new Domain.Teacher()
                {
                    FirstName = "Test Name",
                    LastName  = "Test last name",
                    Email     = "test email",
                };

                var teacherService = new TeacherService(context);
                await teacherService.Create(teacher);

                Teacher fecthedTeacher = await teacherService.FindBy(x => x.FirstName == teacher.FirstName);

                Assert.AreEqual(fecthedTeacher.FirstName, teacher.FirstName);

                Course course = new Domain.Course()
                {
                    Name        = "Test course name",
                    Description = "test course desc",
                };

                var courseService = new CourseService(context);
                await courseService.Create(course);

                Course fecthedCourse = await courseService.FindBy(x => x.Name == course.Name);

                Assert.AreEqual(fecthedCourse.Name, course.Name);

                //teacher.TeacherCourses.Add(course);

                TeacherCourse teacherCourse = new TeacherCourse()
                {
                    Course  = course,
                    Teacher = teacher
                };

                context.Add(teacherCourse);
                context.SaveChanges();

                TeacherCourse fecthedTeacherCourse = context.TeacherCourses.FirstOrDefaultAsync().Result;

                Assert.AreEqual(fecthedTeacherCourse.Teacher.UserId, teacher.UserId);

                fecthedCourse = await courseService.FindBy(x => x.Name == course.Name);

                Assert.AreEqual(fecthedCourse.TeacherCourses.Count, 1);

                //Assert.AreEqual(teacher.TeacherCourses, teacherCourse.Course);
            }
        }
Esempio n. 2
0
        public void InheritanceTesti()
        {
            var options = new DbContextOptionsBuilder <OLP_Context>()
                          .UseInMemoryDatabase(databaseName: "InheritanceTest")
                          .Options;

            using (var context = new OLP_Context(options))
            {
                //stud 1
                Domain.Student student = new Domain.Student()
                {
                    FirstName = "Daniel",
                    LastName  = "Zeimo",
                    Email     = "*****@*****.**",
                };

                var studentService = new UserService(context);
                studentService.Create(student);

                Domain.User fetchedUser = studentService.FindBy(x => x.FirstName == student.FirstName);
                Assert.AreEqual(fetchedUser.FirstName, student.FirstName);
                Console.Write("Stud inserted");
                //stud 2
                Domain.Student student2 = new Domain.Student()
                {
                    FirstName = "Lukas",
                    LastName  = "Velycka",
                    Email     = "*****@*****.**",
                };

                var student1Service = new UserService(context);
                student1Service.Create(student2);

                Domain.User fetchedUser2 = student1Service.FindBy(x => x.FirstName == student2.FirstName);
                Assert.AreEqual(fetchedUser2.FirstName, student2.FirstName);
                Console.Write("Stud 2 inserted");
                //stud 3
                Domain.Student student3 = new Domain.Student()
                {
                    FirstName = "Airidas",
                    LastName  = "Amsejus",
                    Email     = "*****@*****.**",
                };

                var student2Service = new UserService(context);
                student2Service.Create(student3);

                Domain.User fetchedUser3 = student2Service.FindBy(x => x.FirstName == student3.FirstName);
                Assert.AreEqual(fetchedUser3.FirstName, student3.FirstName);
                Console.Write("Stud 3 inserted");

                //teach 1
                Domain.Teacher teacher = new Domain.Teacher()
                {
                    FirstName = "Nerijus",
                    LastName  = "Muranovas",
                    Email     = "*****@*****.**",
                };

                var teacherService = new TeacherService(context);
                teacherService.Create(teacher);

                Domain.Teacher fetchedTeacher = teacherService.FindBy(x => x.FirstName == teacher.FirstName);
                Assert.AreEqual(teacher.FirstName, teacher.FirstName);

                Console.Write("Teacher inserted");

                //StudentService studentServiceF = new StudentService
            }
        }