[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[taler-merchant-backoffice] branch master updated: test history paginati
From: |
gnunet |
Subject: |
[taler-merchant-backoffice] branch master updated: test history pagination |
Date: |
Tue, 11 Jan 2022 18:27:19 +0100 |
This is an automated email from the git hooks/post-receive script.
ms pushed a commit to branch master
in repository merchant-backoffice.
The following commit(s) were added to refs/heads/master by this push:
new 9e2b0a4 test history pagination
9e2b0a4 is described below
commit 9e2b0a454e46e5acbf1fc5a92dafd8eaf287c517
Author: ms <ms@taler.net>
AuthorDate: Tue Jan 11 18:26:43 2022 +0100
test history pagination
---
packages/bank/src/pages/home/index.tsx | 17 +++++++++++---
packages/bank/tests/__tests__/homepage.js | 38 +++++++++++++++++++++++++++++++
2 files changed, 52 insertions(+), 3 deletions(-)
diff --git a/packages/bank/src/pages/home/index.tsx
b/packages/bank/src/pages/home/index.tsx
index 166579b..791068c 100644
--- a/packages/bank/src/pages/home/index.tsx
+++ b/packages/bank/src/pages/home/index.tsx
@@ -488,7 +488,7 @@ async function registrationCall(
*************************/
/**
- * Show list of transactions.
+ * Show one page of transactions.
*/
function Transactions(Props: any): VNode {
@@ -513,7 +513,18 @@ function Transactions(Props: any): VNode {
var txsPages = <p>"loading..."</p>
if (data) {
- txsPages = data.map((item: any) => <div>Result</div>)
+ console.log("History data", data);
+ txsPages = <div>{
+ data.transactions.map(function(item: any) {
+ const sign = item.direction == "DBIT" ? "-" : "";
+ const counterpart = item.direction == "DBIT" ? item.creditorIban :
item.debtorIban;
+ const amount = item.amount.split(":") // assume well-formed.
+ // Pattern:
+ //
+ // DD-MM-YYYY subject -5 EUR
+ // DD-MM-YYYY subject 5 EUR
+ return <span>{item.date} {item.subject} {sign}{amount[1]}
{amount[0]}</span>
+ })}</div>
}
return txsPages;
}
@@ -530,7 +541,7 @@ function Account(Props: any): VNode {
* This part shows a list of transactions: with 5 elements by
* default and offers a "load more" button.
*/
- var [txPageNumber, setTxPageNumber] = useTransactionPageNumber() // Buggy.
+ var [txPageNumber, setTxPageNumber] = useTransactionPageNumber()
var txsPages = []
for (let i = 0; i <= txPageNumber; i++) {
txsPages.push(<Transactions accountLabel={Props.accountLabel}
pageNumber={txPageNumber} />)
diff --git a/packages/bank/tests/__tests__/homepage.js
b/packages/bank/tests/__tests__/homepage.js
index 65661a3..71d300e 100644
--- a/packages/bank/tests/__tests__/homepage.js
+++ b/packages/bank/tests/__tests__/homepage.js
@@ -237,15 +237,46 @@ describe("home page", () => {
fireEvent.click(signinButton);
await screen.findByText("wrong credentials given", {exact: false})
})
+
+ /**
+ * Test that balance and last transactions get shown
+ * after a successful login.
+ */
test("login success", async () => {
render(<BankHome />);
const { username, signinButton } = fillCredentialsForm();
+
+ // Response to balance request.
fetch.once(JSON.stringify({
balance: {
amount: "EUR:10",
credit_debit_indicator: "credit"
},
paytoUri: "payto://iban/123/ABC"
+ })).once(JSON.stringify({ // Response to history request.
+ transactions: [{
+ debtorIban: "XXX",
+ debtorBic: "YYY",
+ debtorName: "Foo",
+ creditorIban: "AAA",
+ creditorBic: "BBB",
+ creditorName: "Bar",
+ direction: "DBIT",
+ amount: "EUR:5",
+ subject: "Donation",
+ date: "01-01-1970"
+ }, {
+ debtorIban: "XXX",
+ debtorBic: "YYY",
+ debtorName: "Foo",
+ creditorIban: "AAA",
+ creditorBic: "BBB",
+ creditorName: "Bar",
+ direction: "CRDT",
+ amount: "EUR:5",
+ subject: "Refund",
+ date: "01-01-2000"
+ }]
}))
fireEvent.click(signinButton);
expect(fetch).toHaveBeenCalledWith(
@@ -253,6 +284,13 @@ describe("home page", () => {
expect.anything()
)
await screen.findByText("balance is EUR:10", {exact: false})
+ // The two transactions in the history mocked above.
+ await screen.findByText("refund", {exact: false})
+ await screen.findByText("donation", {exact: false})
+ expect(fetch).toHaveBeenCalledWith(
+
`http://localhost/demobanks/default/access-api/accounts/${username}/transactions?page=0`,
+ expect.anything()
+ )
})
test("registration success", async () => {
--
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [taler-merchant-backoffice] branch master updated: test history pagination,
gnunet <=