Add more validation tests
This commit is contained in:
@@ -28,15 +28,50 @@ public class CreateMissionTests
|
||||
}
|
||||
|
||||
[Theory]
|
||||
[InlineData(null)]
|
||||
[InlineData("")]
|
||||
[InlineData(" ")]
|
||||
public void Rejects_a_blank_mission_name(string name)
|
||||
public void Rejects_a_blank_or_null_mission_name(string? name)
|
||||
{
|
||||
var validator = new CreateMissionRequestValidator();
|
||||
|
||||
var result = validator.Validate(new CreateMissionRequest { Name = name! });
|
||||
|
||||
result.IsValid.ShouldBeFalse();
|
||||
result.Errors.ShouldContain(e => e.PropertyName == nameof(CreateMissionRequest.Name));
|
||||
}
|
||||
|
||||
[Theory]
|
||||
[InlineData(101)]
|
||||
[InlineData(567)]
|
||||
[InlineData(1000)]
|
||||
[InlineData(10000)]
|
||||
public void Rejects_a_too_long_mission_name(int length)
|
||||
{
|
||||
var validator = new CreateMissionRequestValidator();
|
||||
|
||||
var name = new string('a', length);
|
||||
|
||||
var result = validator.Validate(new CreateMissionRequest { Name = name });
|
||||
|
||||
result.IsValid.ShouldBeFalse();
|
||||
result.Errors.ShouldContain(e => e.PropertyName == nameof(CreateMissionRequest.Name));
|
||||
}
|
||||
|
||||
[Theory]
|
||||
[InlineData(501)]
|
||||
[InlineData(567)]
|
||||
[InlineData(1000)]
|
||||
[InlineData(10000)]
|
||||
public void Rejects_a_too_long_mission_description(int length)
|
||||
{
|
||||
var validator = new CreateMissionRequestValidator();
|
||||
|
||||
var description = new string('a', length);
|
||||
|
||||
var result = validator.Validate(new CreateMissionRequest { Name = "name", Description = description});
|
||||
|
||||
result.IsValid.ShouldBeFalse();
|
||||
result.Errors.ShouldContain(e => e.PropertyName == nameof(CreateMissionRequest.Description));
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user