public async Task AccountListTest() { var expectedRequest = EmbeddedResourceReader.ReadRequestAsString("accountList.sgml"); var expectedResponse = EmbeddedResourceReader.ReadResponseAsString("accountList.sgml"); var options = new OfxClientOptions(ApiUrl, "HAN", "5959", "testUserAccount", "testUserPassword"); var transportMock = Substitute.For <IOfxClientTransport>(); var utilsMock = Substitute.For <IUtils>(); transportMock.PostRequest(Arg.Any <Uri>(), Arg.Any <string>()).Returns(Task.FromResult(expectedResponse)); utilsMock.GenerateTransactionId().Returns("0000000000"); utilsMock.GetCurrentDateTime().Returns("20150127131257"); utilsMock.GetClientUid(Arg.Is <string>(val => val == "testUserAccount")).Returns("SomeGuidHere"); var client = new OfxClient(options, transportMock, utilsMock); var result = await client.GetAccounts(); var account = result; Assert.NotEqual(ImmutableArray <Account> .Empty, account); Assert.Equal(2, account.Length); }
public void BankStatementTest() { var expectedRequest = EmbeddedResourceReader.ReadRequestAsString("bankTransactions.sgml"); var options = new OfxClientOptions(ApiUrl, "HAN", "5959", "testUserAccount", "testUserPassword"); var utilsMock = Substitute.For <IProtocolUtils>(); utilsMock.Requests.Returns(new DefaultOfxRequestLocator()); utilsMock.GenerateTransactionId().Returns("0000000000"); utilsMock.GetCurrentDateTime().Returns("XXXXXXXXXXXXXX"); utilsMock.DateFormat.Returns(OfxProtocolUtils.DateTimeFormat); utilsMock.GetClientUid(Arg.Is("testUserAccount")).Returns("XXXXXXXXX"); var client = new OfxClient(options, utilsMock, new OfxSgmlSerializer()); var startDate = new DateTime(2019, 1, 1); var endDate = new DateTime(2019, 3, 1); var statement = client.PrepareBankStatementOfxRequest(new BankStatementArgs() { AccountNumber = "YYYYYYYY3158", RoutingNumber = "XXXXXXXXX", Type = AccountTypeEnum.Checking, StartDate = startDate, EndDate = endDate }); Assert.Equal(expectedRequest, statement); }
public async Task BankTransactionsListTest() { var expectedRequest = EmbeddedResourceReader.ReadRequestAsString("bankTransactions.sgml"); var expectedResponse = EmbeddedResourceReader.ReadResponseAsString("bankTransactions.sgml"); var options = new OfxClientOptions(ApiUrl, "HAN", "5959", "testUserAccount", "testUserPassword"); var transportMock = Substitute.For <IOfxClientTransport>(); var utilsMock = Substitute.For <IUtils>(); transportMock.PostRequest(Arg.Any <Uri>(), Arg.Any <string>()).Returns(Task.FromResult(expectedResponse)); utilsMock.GenerateTransactionId().Returns("0000000000"); utilsMock.GetCurrentDateTime().Returns("XXXXXXXXXXXXXX"); var client = new OfxClient(options, transportMock, utilsMock); var result = await client.GetTransactions(new Account(AccountTypeEnum.Checking, "YYYYYYYY1924", "XXXXXXXXX")); var transactions = result; Assert.NotEqual(null, transactions); Assert.Equal(2, transactions.Items.Length); }