Ejemplo n.º 1
0
        public void Test_Mandate_GetTransactionsForMandate()
        {
            try
            {
                var mandate = GetNewMandate();

                WalletDTO                 wallet = GetJohnsWallet();
                UserNaturalDTO            user   = GetJohn();
                PayInMandateDirectPostDTO payIn  = new PayInMandateDirectPostDTO(user.Id, new Money {
                    Amount = 10000, Currency = CurrencyIso.EUR
                }, new Money {
                    Amount = 0, Currency = CurrencyIso.EUR
                }, wallet.Id, "http://test.test", mandate.Id);
                PayInDTO createPayIn = this.Api.PayIns.CreateMandateDirectDebit(payIn);

                var pagination = new Pagination(1, 1);
                var filter     = new FilterTransactions();
                var sort       = new Sort();
                sort.AddField("CreationDate", SortDirection.desc);

                var transactions = Api.Mandates.GetTransactionsForMandate(mandate.Id, pagination, filter, sort);

                Assert.IsTrue(transactions.Count > 0);
            }
            catch (Exception ex)
            {
                Assert.Fail(ex.Message);
            }
        }
Ejemplo n.º 2
0
        /// <summary>Gets client wallet transactions.</summary>
        /// <param name="fundsType">Type of funds.</param>
        /// <param name="currency">Currency.</param>
        /// <param name="pagination">Pagination.</param>
        /// <param name="filter">Filter.</param>
        /// <param name="sort">Sort.</param>
        /// <returns></returns>
        public async Task <ListPaginated <TransactionDTO> > GetWalletTransactions(FundsType fundsType, CurrencyIso currency, Pagination pagination, FilterTransactions filter, Sort sort = null)
        {
            if (filter == null)
            {
                filter = new FilterTransactions();
            }

            return(await this.GetList <TransactionDTO>(MethodKey.ClientGetWalletTransactions, pagination, sort, filter.GetValues(), fundsType.ToString(), currency.ToString()));
        }
Ejemplo n.º 3
0
        /// <summary>Gets dispute's transactions.</summary>
        /// <param name="disputeId">Dispute identifier.</param>
        /// <param name="pagination">Pagination.</param>
        /// <param name="filters">Filters.</param>
        /// <param name="sort">Sort.</param>
        /// <returns>List of Transaction instances returned from API.</returns>
        public async Task <ListPaginated <TransactionDTO> > GetTransactionsAsync(String disputeId, Pagination pagination, FilterTransactions filters, Sort sort = null)
        {
            if (filters == null)
            {
                filters = new FilterTransactions();
            }

            return(await this.GetListAsync <TransactionDTO>(MethodKey.DisputesGetTransactions, pagination, sort, filters.GetValues(), disputeId));
        }
        /// <summary>Lists transactions for a mandate</summary>
        /// <param name="mandateId">Id of the mandate to get transactions</param>
        /// <param name="pagination">Pagination.</param>
        /// <param name="filter">Filter.</param>
        /// <param name="sort">Sort.</param>
        /// <returns>List of transactions for a mandate</returns>
        public async Task <ListPaginated <TransactionDTO> > GetTransactionsForMandate(string mandateId, Pagination pagination, FilterTransactions filters, Sort sort = null)
        {
            if (filters == null)
            {
                filters = new FilterTransactions();
            }

            return(await GetList <TransactionDTO>(MethodKey.MandatesGetTransactions, pagination, mandateId, sort, filters.GetValues()));
        }
Ejemplo n.º 5
0
        /// <summary>Lists transactions for a bank account</summary>
        /// <param name="bankAccountId">Id of the bank account to get transactions</param>
        /// <param name="pagination">Pagination.</param>
        /// <param name="filter">Filter.</param>
        /// <param name="sort">Sort.</param>
        /// <returns>List of transactions for a bank account</returns>
        public async Task <ListPaginated <TransactionDTO> > GetTransactionsForBankAccount(string bankAccountId, Pagination pagination, FilterTransactions filters, Sort sort = null)
        {
            if (filters == null)
            {
                filters = new FilterTransactions();
            }

            return(await GetList <TransactionDTO>(MethodKey.BankAccountsGetTransactions, pagination, sort, filters.GetValues(), bankAccountId));
        }
Ejemplo n.º 6
0
        /// <summary>Lists transactions for a card</summary>
        /// <param name="cardId">Id of the card to get transactions</param>
        /// <param name="pagination">Pagination.</param>
        /// <param name="filter">Filter.</param>
        /// <param name="sort">Sort.</param>
        /// <returns>List of transactions for a card</returns>
        public async Task <ListPaginated <TransactionDTO> > GetTransactionsForCard(string cardId, Pagination pagination, FilterTransactions filters, Sort sort = null)
        {
            if (filters == null)
            {
                filters = new FilterTransactions();
            }

            return(await GetList <TransactionDTO>(MethodKey.CardTransactions, pagination, sort, filters.GetValues(), cardId));
        }
Ejemplo n.º 7
0
        /// <summary>Gets client transactions.</summary>
        /// <param name="pagination">Pagination.</param>
        /// <param name="filter">Filter.</param>
        /// <param name="sort">Sort.</param>
        /// <returns>Collection of client's transactions.</returns>
        public async Task <ListPaginated <TransactionDTO> > GetTransactions(Pagination pagination, FilterTransactions filter, Sort sort = null)
        {
            if (filter == null)
            {
                filter = new FilterTransactions();
            }

            return(await this.GetList <TransactionDTO>(MethodKey.ClientGetTransactions, pagination, sort, filter.GetValues()));
        }
Ejemplo n.º 8
0
        /// <summary>Gets dispute's transactions.</summary>
        /// <param name="disputeId">Dispute identifier.</param>
        /// <param name="pagination">Pagination.</param>
        /// <param name="filters">Filters.</param>
        /// <param name="sort">Sort.</param>
        /// <returns>List of Transaction instances returned from API.</returns>
        public ListPaginated <TransactionDTO> GetTransactions(String disputeId, Pagination pagination, FilterTransactions filters, Sort sort = null)
        {
            if (filters == null)
            {
                filters = new FilterTransactions();
            }

            return(this.GetList <TransactionDTO>(MethodKey.DisputesGetTransactions, pagination, disputeId, sort, filters.GetValues()));
        }
        public async Task <ListPaginated <TransactionDTO> > GetTransactionsForBankAccount(string bankAccountId, Pagination pagination, FilterTransactions filters, Sort sort = null)
        {
            var targetUrl = $"{_baseUrl}/bankaccounts/{bankAccountId}/transactions";

            if (filters == null)
            {
                filters = new FilterTransactions();
            }
            return(await GetList <TransactionDTO>(targetUrl, pagination, sort, filters.GetValues()));
        }
        public async Task <ListPaginated <TransactionDTO> > GetTransactions(string walletId, Pagination pagination, FilterTransactions filter, Sort sort = null)
        {
            var targetUrl = $"{_baseUrl}/wallets/{walletId}/transactions";

            if (filter == null)
            {
                filter = new FilterTransactions();
            }
            return(await GetList <TransactionDTO>(targetUrl, pagination, sort, filter.GetValues()));
        }
        /// <summary>
        /// Gets client wallet transactions.
        /// </summary>
        /// <param name="fundsType">Type of funds.</param>
        /// <param name="currency">Currency.</param>
        /// <param name="pagination">Pagination.</param>
        /// <param name="filter">Filter.</param>
        /// <param name="sort">Sort.</param>
        /// <returns></returns>
        public async Task <ListPaginated <TransactionDTO> > GetWalletTransactions(FundsType fundsType, CurrencyIso currency, Pagination pagination, FilterTransactions filter, Sort sort = null)
        {
            var targetUrl = $"{_baseUrl}/clients/wallets/{fundsType.ToString()}/{currency.ToString()}/transactions";

            if (filter == null)
            {
                filter = new FilterTransactions();
            }

            return(await GetList <TransactionDTO>(targetUrl, pagination, sort, filter.GetValues()));
        }
Ejemplo n.º 12
0
        public void Test_Wallets_Transactions()
        {
            UserNaturalDTO john = GetJohn();

            WalletDTO wallet = CreateJohnsWallet();
            PayInDTO  payIn  = CreateJohnsPayInCardWeb(wallet.Id);

            Pagination         pagination = new Pagination(1, 1);
            FilterTransactions filter     = new FilterTransactions();

            filter.Type = TransactionType.PAYIN;
            ListPaginated <TransactionDTO> transactions = Api.Wallets.GetTransactions(wallet.Id, pagination, filter, null);

            Assert.IsTrue(transactions.Count == 1);
            Assert.IsTrue(transactions[0] is TransactionDTO);
            Assert.AreEqual(transactions[0].AuthorId, john.Id);
            AssertEqualInputProps(transactions[0], payIn);
        }
Ejemplo n.º 13
0
        public void Test_Wallets_Transactions_With_Sorting()
        {
            WalletDTO wallet = this.GetJohnsWallet();

            // create 2 payins
            this.GetJohnsPayInCardWeb();
            this.GetNewPayInCardWeb();
            Sort sort = new Sort();

            sort.AddField("CreationDate", SortDirection.desc);
            Pagination         pagination = new Pagination(1, 20);
            FilterTransactions filter     = new FilterTransactions();

            filter.Type = TransactionType.PAYIN;

            ListPaginated <TransactionDTO> transactions = this.Api.Wallets.GetTransactions(wallet.Id, pagination, filter, sort);

            Assert.IsTrue(transactions[0].CreationDate > transactions[1].CreationDate);
        }
Ejemplo n.º 14
0
        public async Task Test_Card_GetTransactionsForCard()
        {
            try
            {
                PayInCardDirectDTO payIn = await GetNewPayInCardDirect();

                var pagination = new Pagination(1, 1);
                var filter     = new FilterTransactions();
                var sort       = new Sort();
                sort.AddField("CreationDate", SortDirection.desc);

                var transactions = await Api.Cards.GetTransactionsForCardAsync(payIn.CardId, pagination, filter, sort);

                Assert.IsTrue(transactions.Count > 0);
            }
            catch (Exception ex)
            {
                Assert.Fail(ex.Message);
            }
        }
        public async Task Test_Wallets_Transactions_With_Sorting()
        {
            WalletDTO wallet = TestHelper.GetJohnsWallet();

            // create 2 payins
            TestHelper.GetJohnsPayInCardWeb();
            System.Threading.Thread.Sleep(1000);
            TestHelper.GetNewPayInCardWeb();
            Sort sort = new Sort();

            sort.AddField("CreationDate", SortDirection.desc);
            Pagination         pagination = new Pagination(1, 20);
            FilterTransactions filter     = new FilterTransactions();

            filter.Type = TransactionType.PAYIN;

            ListPaginated <TransactionDTO> transactions = await _objectToTest.GetTransactions(wallet.Id, pagination, filter, sort);

            Assert.True(transactions[0].CreationDate > transactions[1].CreationDate);
        }
        public void Test_Users_GetTransactionsForBankAccount()
        {
            try
            {
                var    payOut        = TestHelper.GetJohnsPayOutBankWire();
                string bankAccountId = TestHelper.GetJohnsAccount().Id;

                var pagination = new Pagination(1, 1);
                var filter     = new FilterTransactions();
                var sort       = new Sort();
                sort.AddField("CreationDate", SortDirection.desc);

                var transactions = _objectToTest.GetTransactionsForBankAccount(bankAccountId, pagination, filter, sort).Result;

                Assert.True(transactions.Count > 0);
            }
            catch (Exception ex)
            {
                Assert.True(false, ex.Message);
            }
        }
Ejemplo n.º 17
0
        public void Test_Users_GetTransactionsForBankAccount()
        {
            try
            {
                var    payOut        = GetJohnsPayOutBankWire();
                string bankAccountId = GetJohnsAccount().Id;

                var pagination = new Pagination(1, 1);
                var filter     = new FilterTransactions();
                var sort       = new Sort();
                sort.AddField("CreationDate", SortDirection.desc);

                var transactions = Api.Users.GetTransactionsForBankAccount(bankAccountId, pagination, filter, sort);

                Assert.IsTrue(transactions.Count > 0);
            }
            catch (Exception ex)
            {
                Assert.Fail(ex.Message);
            }
        }
        public async Task <ListPaginated <TransactionDTO> > GetTransactions(string userId, Pagination pagination, FilterTransactions filter, Sort sort = null)
        {
            var targetUrl = $"{_baseUrl}/users/{userId}/transactions";

            return(await GetList <TransactionDTO>(targetUrl, pagination, sort, filter.GetValues()));
        }
Ejemplo n.º 19
0
 /// <summary>Gets transactions for the wallet.</summary>
 /// <param name="walletId">Wallet identifier.</param>
 /// <param name="pagination">Pagination.</param>
 /// <param name="filter">Filter.</param>
 /// <param name="sort">Sort.</param>
 /// <returns>Transactions for wallet returned from API.</returns>
 public ListPaginated<TransactionDTO> GetTransactions(String walletId, Pagination pagination, FilterTransactions filter, Sort sort = null)
 {
     return this.GetList<TransactionDTO>(MethodKey.WalletsAllTransactions, pagination, walletId, sort, filter.GetValues());
 }
Ejemplo n.º 20
0
 /// <summary>Gets transactions for the wallet.</summary>
 /// <param name="walletId">Wallet identifier.</param>
 /// <param name="pagination">Pagination.</param>
 /// <param name="filter">Filter.</param>
 /// <param name="sort">Sort.</param>
 /// <returns>Transactions for wallet returned from API.</returns>
 public ListPaginated <TransactionDTO> GetTransactions(String walletId, Pagination pagination, FilterTransactions filter, Sort sort = null)
 {
     return(this.GetList <TransactionDTO>(MethodKey.WalletsAllTransactions, pagination, walletId, sort, filter.GetValues()));
 }
Ejemplo n.º 21
0
 /// <summary>Gets transactions for the wallet.</summary>
 /// <param name="walletId">Wallet identifier.</param>
 /// <param name="pagination">Pagination.</param>
 /// <param name="filter">Filter.</param>
 /// <param name="sort">Sort.</param>
 /// <returns>Transactions for wallet returned from API.</returns>
 public async Task <ListPaginated <TransactionDTO> > GetTransactionsAsync(String walletId, Pagination pagination, FilterTransactions filter, Sort sort = null)
 {
     return(await this.GetListAsync <TransactionDTO>(MethodKey.WalletsAllTransactions, pagination, sort, filter.GetValues(), walletId));
 }
Ejemplo n.º 22
0
        /// <summary>Gets dispute's transactions.</summary>
        /// <param name="disputeId">Dispute identifier.</param>
        /// <param name="pagination">Pagination.</param>
        /// <param name="filters">Filters.</param>
        /// <param name="sort">Sort.</param>
        /// <returns>List of Transaction instances returned from API.</returns>
        public ListPaginated<TransactionDTO> GetTransactions(String disputeId, Pagination pagination, FilterTransactions filters, Sort sort = null)
        {
            if (filters == null) filters = new FilterTransactions();

            return this.GetList<TransactionDTO>(MethodKey.DisputesGetTransactions, pagination, disputeId, sort, filters.GetValues());
        }
Ejemplo n.º 23
0
 /// <summary>Gets transactions for user.</summary>
 /// <param name="userId">User identifier.</param>
 /// <param name="pagination">Pagination.</param>
 /// <param name="filter">Filter.</param>
 /// <param name="sort">Sort.</param>
 /// <returns>Collection of user's transactions.</returns>
 public async Task <ListPaginated <TransactionDTO> > GetTransactions(String userId, Pagination pagination, FilterTransactions filter, Sort sort = null)
 {
     return(await this.GetList <TransactionDTO>(MethodKey.UsersAllTransactions, pagination, sort, filter.GetValues(), userId));
 }
Ejemplo n.º 24
0
        public async Task <ListPaginated <TransactionDTO> > GetTransactionsForCard(string cardId, Pagination pagination, FilterTransactions filters, Sort sort = null)
        {
            var targetUrl = $"{_baseUrl}/cards/{cardId}/transactions";

            return(await GetList <TransactionDTO>(targetUrl, pagination, sort, filters.GetValues()));
        }