Exemple #1
0
        public async Task ValidateAsync_StudentExists_DoesNothing()
        {
            // Arrange
            var departmentContainer = new Mock <IStudentIdentity>();

            var student           = new Student();
            var studentDataAccess = new Mock <IStudentsRepository>();

            studentDataAccess.Setup(x => x.GetByAsync(departmentContainer.Object)).ReturnsAsync(student);

            var studentGetService = new StudentGetService(studentDataAccess.Object);

            // Act
            var action = new Func <Task>(() => studentGetService.ValidateAsync(departmentContainer.Object));

            // Assert
            await action.Should().NotThrowAsync <Exception>();
        }
Exemple #2
0
        public async Task ValidateAsync_StudentNotExists_ThrowsError()
        {
            // Arrange
            var fixture = new Fixture();
            var id      = fixture.Create <int>();

            var studentContainer = new Mock <IStudentIdentity>();

            studentContainer.Setup(x => x.Id).Returns(id);

            var department           = new Student();
            var departmentDataAccess = new Mock <IStudentsRepository>();

            departmentDataAccess.Setup(x => x.GetByAsync(studentContainer.Object)).ReturnsAsync((Student)null);

            var departmentGetService = new StudentGetService(departmentDataAccess.Object);

            // Act
            var action = new Func <Task>(() => departmentGetService.ValidateAsync(studentContainer.Object));

            // Assert
            await action.Should().ThrowAsync <InvalidOperationException>($"Student not found by id {id}");
        }