public async Task Should_edit_department(ContosoUniversityCore.Features.Instructor.CreateEdit.Command instructor, ContosoUniversityCore.Features.Instructor.CreateEdit.Command instructor2, Department dept, Edit.Command command) { var adminId = await SendAsync(instructor); var admin = await FindAsync <Instructor>(adminId); var admin2Id = await SendAsync(instructor2); var admin2 = await FindAsync <Instructor>(admin2Id); dept.Administrator = admin; await InsertAsync(dept); command.Id = dept.Id; command.Administrator = admin; await SendAsync(command); var result = await ExecuteDbContextAsync(db => db.Departments.Where(d => d.Id == dept.Id).Include(d => d.Administrator).SingleOrDefaultAsync()); result.Name.ShouldBe(command.Name); result.Administrator.Id.ShouldBe(command.Administrator.Id); result.StartDate.ShouldBe(command.StartDate.GetValueOrDefault()); result.Budget.ShouldBe(command.Budget.GetValueOrDefault()); }
public async Task Should_edit(ContosoUniversityCore.Features.Instructor.CreateEdit.Command instructor, Department dept, Department newDept, Course course, Edit.Command command) { var adminId = await SendAsync(instructor); var admin = await FindAsync <Instructor>(adminId); dept.Administrator = admin; newDept.Administrator = admin; course.Id = 1234; course.Department = dept; await InsertAsync(dept, newDept, course); command.Id = course.Id; command.Department = newDept; await SendAsync(command); var edited = await FindAsync <Course>(course.Id); edited.ShouldNotBeNull(); edited.DepartmentID.ShouldBe(newDept.Id); edited.Credits.ShouldBe(command.Credits.GetValueOrDefault()); edited.Title.ShouldBe(command.Title); }
public async Task Should_create_new_department(ContosoUniversityCore.Features.Instructor.CreateEdit.Command instructor, Create.Command command) { var adminId = await SendAsync(instructor); var admin = await FindAsync <Instructor>(adminId); command.Administrator = admin; await SendAsync(command); var created = await ExecuteDbContextAsync(db => db.Departments.Where(d => d.Name == command.Name).SingleOrDefaultAsync()); created.ShouldNotBeNull(); created.Budget.ShouldBe(command.Budget.GetValueOrDefault()); created.StartDate.ShouldBe(command.StartDate.GetValueOrDefault()); created.InstructorID.ShouldBe(admin.Id); }
public async Task Should_list_departments(ContosoUniversityCore.Features.Instructor.CreateEdit.Command instructor, Department dept, Department dept2) { var adminId = await SendAsync(instructor); var admin = await FindAsync <Instructor>(adminId); dept.Administrator = admin; dept.Administrator = admin; await InsertAsync(dept, dept2); var query = new Index.Query(); var result = await SendAsync(query); result.ShouldNotBeNull(); result.Count.ShouldBe(2); }
public async Task Should_get_department_details(ContosoUniversityCore.Features.Instructor.CreateEdit.Command instructor, Department dept) { var adminId = await SendAsync(instructor); var admin = await FindAsync <Instructor>(adminId); dept.Administrator = admin; await InsertAsync(dept); var query = new Details.Query { Id = dept.Id }; var result = await SendAsync(query); result.ShouldNotBeNull(); result.Name.ShouldBe(dept.Name); result.AdministratorFullName.ShouldBe(admin.FullName); }
public async Task Should_return_all_courses(ContosoUniversityCore.Features.Instructor.CreateEdit.Command instructor, Department dept, Department dept2, Course course, Course course2) { var adminId = await SendAsync(instructor); var admin = await FindAsync <Instructor>(adminId); dept.Administrator = admin; dept2.Administrator = admin; course.Id = 1235; course.Department = dept; course2.Id = 4312; course2.Department = dept2; await InsertAsync(dept, dept2, course, course2); var result = await SendAsync(new Index.Query()); result.ShouldNotBeNull(); result.Courses.Count.ShouldBe(2); }
public async Task Should_delete(ContosoUniversityCore.Features.Instructor.CreateEdit.Command instructor, Department dept, Course course) { var adminId = await SendAsync(instructor); var admin = await FindAsync <Instructor>(adminId); dept.Administrator = admin; course.Id = 1234; course.Department = dept; await InsertAsync(dept, course); await SendAsync(new Delete.Command { Id = course.Id }); var result = await ExecuteDbContextAsync(db => db.Courses.Where(c => c.Id == course.Id).SingleOrDefaultAsync()); result.ShouldBeNull(); }
public async Task Should_create_new_course(ContosoUniversityCore.Features.Instructor.CreateEdit.Command instructor, Department dept, Create.Command command) { var adminId = await SendAsync(instructor); var admin = await FindAsync <Instructor>(adminId); dept.Administrator = admin; await InsertAsync(dept); command.Department = dept; await SendAsync(command); var created = await ExecuteDbContextAsync(db => db.Courses.Where(c => c.Id == command.Number).SingleOrDefaultAsync()); created.ShouldNotBeNull(); created.DepartmentID.ShouldBe(dept.Id); created.Credits.ShouldBe(command.Credits); created.Title.ShouldBe(command.Title); }
public async Task Should_query_for_details(ContosoUniversityCore.Features.Instructor.CreateEdit.Command instructor, Department dept, Course course) { var adminId = await SendAsync(instructor); var admin = await FindAsync <Instructor>(adminId); dept.Administrator = admin; course.Id = 1234; course.Department = dept; await InsertAsync(dept, course); var result = await SendAsync(new Details.Query { Id = course.Id }); result.ShouldNotBeNull(); result.Credits.ShouldBe(course.Credits); result.DepartmentName.ShouldBe(dept.Name); result.Title.ShouldBe(course.Title); }
public async Task Should_delete_department(ContosoUniversityCore.Features.Instructor.CreateEdit.Command instructor, Department dept) { var adminId = await SendAsync(instructor); var admin = await FindAsync <Instructor>(adminId); dept.Administrator = admin; await InsertAsync(dept); var command = new Delete.Command { Id = dept.Id, RowVersion = dept.RowVersion }; await SendAsync(command); var any = await ExecuteDbContextAsync(db => db.Departments.AnyAsync()); any.ShouldBeFalse(); }