using System.Linq; using NUnit.Framework; using LCU.Library.Internal.DocumentIngestorModels.Constants; using LCU.Library.Internal.DocumentIngestorModels.Models; using LCU.Library.Internal.DocumentIngestorModels.Validations; namespace LCU.API.Internal.DocumentIngestorTests.Models.Validations; public class MetaDataValidationTests { [Test] public void ValidateAccountNumber_Valid() { var processResult = new ProcessResult(); var accountNumber = "1"; var result = MetaDataValidation.ValidateAccountNumber(processResult, accountNumber); Assert.IsNotNull(result); Assert.IsTrue(result.Success); Assert.IsEmpty(result.MessageStack); } [Test] public void ValidateAccountNumber_InValid() { var processResult = new ProcessResult(); var accountNumber = "0"; var result = MetaDataValidation.ValidateAccountNumber(processResult, accountNumber); Assert.IsNotNull(result); Assert.IsFalse(result.Success); Assert.AreEqual(ValidationMessages.AccountInvalidMessage, result.MessageStack.First()); } [Test] public void ValidateFileName_Valid() { var processResult = new ProcessResult(); var fileName = "Tester File Name"; var result = MetaDataValidation.ValidateFileName(processResult, fileName); Assert.IsNotNull(result); Assert.IsTrue(result.Success); Assert.IsEmpty(result.MessageStack); } [Test] public void ValidateFileName_InValid() { var processResult = new ProcessResult(); var fileName = ""; var result = MetaDataValidation.ValidateFileName(processResult, fileName); Assert.IsNotNull(result); Assert.IsFalse(result.Success); Assert.AreEqual(ValidationMessages.FileNameInvalidMessage, result.MessageStack.First()); } [Test] public void ValidateFullName_Valid() { var processResult = new ProcessResult(); var fullName = "Tester Full Name"; var result = MetaDataValidation.ValidateFullName(processResult, fullName); Assert.IsNotNull(result); Assert.IsTrue(result.Success); Assert.IsEmpty(result.MessageStack); } [Test] public void ValidateFullName_InValid() { var processResult = new ProcessResult(); var fullName = ""; var result = MetaDataValidation.ValidateFullName(processResult, fullName); Assert.IsNotNull(result); Assert.IsFalse(result.Success); Assert.AreEqual(ValidationMessages.FullNameInvalidMessage, result.MessageStack.First()); } [Test] public void ValidatePdf_Valid() { var processResult = new ProcessResult(); var pdf = "Tester PDF"; var result = MetaDataValidation.ValidatePdf(processResult, pdf); Assert.IsNotNull(result); Assert.IsTrue(result.Success); Assert.IsEmpty(result.MessageStack); } [Test] public void ValidatePdf_InValid() { var processResult = new ProcessResult(); var pdf = ""; var result = MetaDataValidation.ValidatePdf(processResult, pdf); Assert.IsNotNull(result); Assert.IsFalse(result.Success); Assert.AreEqual(ValidationMessages.PdfInvalidMessage, result.MessageStack.First()); } [Test] public void ValidateTin_Valid() { var processResult = new ProcessResult(); var tin = "111111111"; var result = MetaDataValidation.ValidateTin(processResult, tin); Assert.IsNotNull(result); Assert.IsTrue(result.Success); Assert.IsEmpty(result.MessageStack); } [Test] public void ValidateTin_InValid() { var processResult = new ProcessResult(); var tin = ""; var result = MetaDataValidation.ValidateTin(processResult, tin); Assert.IsNotNull(result); Assert.IsFalse(result.Success); Assert.AreEqual(ValidationMessages.TinInvalidMessage, result.MessageStack.First()); } [Test] public void ValidateTin_TinZero_InValid() { var processResult = new ProcessResult(); var tin = "0"; var result = MetaDataValidation.ValidateTin(processResult, tin); Assert.IsNotNull(result); Assert.IsFalse(result.Success); Assert.AreEqual(ValidationMessages.TinInvalidMessage, result.MessageStack.First()); } }