public void EmptyValueIsPassed_ValidationFailedWithExpectedErrorIsReturned() { // arrange var mockApplicationDbContext = new Mock <IApplicationDbContext>(); Account account = new() { AccountNumber = "ABC123", Currency = Currency.EUR }; List <Account> accounts = new List <Account>() { account, new() { AccountNumber = "DEF123" } }; var stubAccounts = new StubListOfEntities <Account>(accounts); mockApplicationDbContext .Setup(m => m.Accounts) .Returns(stubAccounts); var sut = new GetTransactionQueryValidator(mockApplicationDbContext.Object); // act var instanceToValidate = new GetTransactionsQuery(); var validationResult = sut.Validate(instanceToValidate); // assert validationResult.IsValid.Should().BeFalse(); validationResult.Errors.Any(e => e.ErrorMessage == "Account Number is required.").Should().BeTrue(); }
public void PassValidAccountNumber_ValidationSucceded() { // arrange var mockApplicationDbContext = new Mock <IApplicationDbContext>(); var accountNumber = "ABC123"; Account account = new() { AccountNumber = accountNumber, Currency = Currency.EUR }; List <Account> accounts = new List <Account>() { account, new() { AccountNumber = "DEF123" } }; var stubAccounts = new StubListOfEntities <Account>(accounts); mockApplicationDbContext .Setup(m => m.Accounts) .Returns(stubAccounts); var sut = new GetTransactionQueryValidator(mockApplicationDbContext.Object); // act var instanceToValidate = new GetTransactionsQuery() { AccountNumber = accountNumber }; var validationResult = sut.Validate(instanceToValidate); // assert validationResult.IsValid.Should().BeTrue(); } } }