public void GetUserFields_WhenUserFieldHostValuesAreAdded_ShouldOutputACollectionOfUserFields() { // ARRANGE List <UserField> userFieldList; var applicant = GetApplicant(); var numberOfUserFieldNameHVs = _app.HostValues.Count(hv => hv.Field1.Equals("AddAccount.Message.DataUpdate.Account.UserFields.UserField.Name")); var numberOfUserFieldValueHVs = _app.HostValues.Count(hv => hv.Field1.Equals("AddAccount.Message.DataUpdate.Account.UserFields.UserField.Value")); var numberOfActualUserFieldHV = numberOfUserFieldNameHVs + numberOfUserFieldValueHVs; var stubServiceRepo = Substitute.For <ISoapRepository>(); var stubLmsRepo = Substitute.For <ILmsRepository>(); var mockBehavior = new AddAccountBehavior(_app, _userToken, stubServiceRepo, stubLmsRepo); // ACT userFieldList = mockBehavior.GetUserFields(applicant); // ASSERT Assert.IsNotNull(userFieldList); Assert.AreEqual(numberOfUserFieldNameHVs, userFieldList.Count(u => !string.IsNullOrWhiteSpace(u.Name))); Assert.AreEqual(numberOfUserFieldValueHVs, userFieldList.Count(u => !string.IsNullOrWhiteSpace(u.Value))); }
public AddAccount GetAddAccountDto(Application app, Applicant applicant, string userToken) { var stubServiceRepo = Substitute.For <ISoapRepository>(); var stubLmsRepo = Substitute.For <ILmsRepository>(); var fakeBehavior = new AddAccountBehavior(app, userToken, stubServiceRepo, stubLmsRepo); var account = new AddAccount() { Message = new Dto.Soap.Message() { DataUpdate = new DataUpdate() { TraceNumber = "668254", ProcessingCode = "ExternalUpdateRequest", Source = "LoanOrigination", UpdateAction = "Add", UpdateTarget = "Account", Account = new Account() { LoanOfficerName = "Admin Admin", AccountOpenDate = "2019-07-25", ProductName = app.HostValues.Any(h => h.Field1.Equals("AddAccount.Message.DataUpdate.Account.ProductName")) ? string.Empty : null, RateClass = app.HostValues.Any(h => h.Field1.Equals("AddAccount.Message.DataUpdate.Account.RateClass")) ? string.Empty : null, PromotionalRateClass = app.HostValues.Any(h => h.Field1.Equals("AddAccount.Message.DataUpdate.Account.PromotionalRateClass")) ? string.Empty : null, PromotionalRateClassStartDate = app.HostValues.Any(h => h.Field1.Equals("AddAccount.Message.DataUpdate.Account.PromotionalRateClassStartDate")) ? string.Empty : null, PromotionalRateClassEndDate = app.HostValues.Any(h => h.Field1.Equals("AddAccount.Message.DataUpdate.Account.PromotionalRateClassEndDate")) ? string.Empty : null, CreditLimit = 10000.00m, TaxOwnerPartyId = "79396", TaxOwnerPartyType = "Person", UserFields = fakeBehavior.GetUserFields(applicant) } } } }; return(account); }