Esempio n. 1
0
        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);
        }
Esempio n. 2
0
        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);
        }
Esempio n. 3
0
        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);
        }