public async Task DoesValidatorPreventFromCreatingDuplicateClass() { var context = new FakeDbContext(); var validator = new CreateClassCommandValidator(context); var request = new CreateClassCommand(1, "a"); var result = await validator.ValidateAsync(request); result.IsValid.Should().BeFalse(); result.Errors.Should().HaveCount(1).And.ContainSingle(x => x.ErrorMessage == "Mentioned class must be unique." && x.ErrorCode == "AsyncPredicateValidator"); }
public async Task DoesValidatorPreventFromCreatingClassWithTooLongSectionName() { var context = new FakeDbContext(); var validator = new CreateClassCommandValidator(context); var request = new CreateClassCommand(3, new string(Enumerable.Repeat('a', 300).ToArray())); var result = await validator.ValidateAsync(request); result.IsValid.Should().BeFalse(); result.Errors.Should().HaveCount(1).And.ContainSingle(x => x.ErrorCode == "MaximumLengthValidator"); }
public async Task DoesValidatorPreventFromCreatingClassWithNoYearAndSection() { var context = new FakeDbContext(); var validator = new CreateClassCommandValidator(context); var request = new CreateClassCommand(0, null); var result = await validator.ValidateAsync(request); result.IsValid.Should().BeFalse(); result.Errors.Should().HaveCount(2).And.Contain(x => x.ErrorCode == "NotEmptyValidator"); }
public async Task DoesValidatorAllowCorrectCreateClassCommand() { var context = new FakeDbContext(); var validator = new CreateClassCommandValidator(context); var request = new CreateClassCommand(3, "f"); var result = await validator.ValidateAsync(request); result.IsValid.Should().BeTrue(); result.Errors.Should().HaveCount(0); }