From 77bf29b4888f789af33b78c1fa25b593005f6221 Mon Sep 17 00:00:00 2001 From: Anthony RICHARD Date: Sat, 6 Apr 2024 13:19:47 -0400 Subject: [PATCH] unit tests LoginRequest --- .../adminBlazor/TestUnit/LoginRequest_UT.cs | 37 +++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 Project/adminBlazor/TestUnit/LoginRequest_UT.cs diff --git a/Project/adminBlazor/TestUnit/LoginRequest_UT.cs b/Project/adminBlazor/TestUnit/LoginRequest_UT.cs new file mode 100644 index 0000000..b3b9baf --- /dev/null +++ b/Project/adminBlazor/TestUnit/LoginRequest_UT.cs @@ -0,0 +1,37 @@ +using adminBlazor.Models; +using System.ComponentModel.DataAnnotations; + +namespace TestUnit +{ + public class LoginRequest_UT + { + [Theory] + //correct + [InlineData(true, "password", "username")] + //password incorrect (required) + [InlineData(false, null, "username")] + //password incorrect (required) + [InlineData(false, "", "username")] + //username incorrect (required) + [InlineData(false, "password", null)] + //username incorrect (required) + [InlineData(false, "password", "")] + + public void LoginRequest_Validation(bool isValid, string password, string userName) + { + var loginRequest = new LoginRequest { Password = password, UserName = userName }; + + Assert.Equal(isValid, ValidateModel(loginRequest)); + } + + private static bool ValidateModel(LoginRequest loginRequest) + { + var validationContext = new ValidationContext(loginRequest, serviceProvider: null, items: null); + var validationResults = new List(); + + Validator.TryValidateObject(loginRequest, validationContext, validationResults, validateAllProperties: true); + + return !validationResults.Any(); + } + } +}