From 6e066466632434a4ea8738692833fcf8e36630ec Mon Sep 17 00:00:00 2001 From: Stedoss <29103029+Stedoss@users.noreply.github.com> Date: Tue, 28 Jul 2026 09:23:25 +0100 Subject: [PATCH] Add more validation tests --- .../Endpoints/Missions/CreateMissionTests.cs | 37 ++++++++++++++++++- 1 file changed, 36 insertions(+), 1 deletion(-) diff --git a/test/MissionControl.Server.Tests/Endpoints/Missions/CreateMissionTests.cs b/test/MissionControl.Server.Tests/Endpoints/Missions/CreateMissionTests.cs index fdee5c9..501e816 100644 --- a/test/MissionControl.Server.Tests/Endpoints/Missions/CreateMissionTests.cs +++ b/test/MissionControl.Server.Tests/Endpoints/Missions/CreateMissionTests.cs @@ -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)); + } }