add prompt payment scenario
This commit is contained in:
parent
898de013e7
commit
5ab2e235c0
26
packages/taler-integrationtests/scenario
Executable file
26
packages/taler-integrationtests/scenario
Executable file
@ -0,0 +1,26 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
# Simple test runner for the wallet integration tests.
|
||||||
|
#
|
||||||
|
# Usage: $0 TESTGLOB
|
||||||
|
#
|
||||||
|
# The TESTGLOB can be used to select which test cases to execute
|
||||||
|
|
||||||
|
set -eu
|
||||||
|
|
||||||
|
if [ "$#" -ne 1 ]; then
|
||||||
|
echo "Usage: $0 SCENARIO"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
|
||||||
|
|
||||||
|
cd $DIR
|
||||||
|
|
||||||
|
./node_modules/.bin/tsc
|
||||||
|
|
||||||
|
export ESM_OPTIONS='{"sourceMap": true}'
|
||||||
|
|
||||||
|
file=lib/scenario-$1.js
|
||||||
|
|
||||||
|
exec node -r source-map-support/register -r esm $file
|
@ -0,0 +1,61 @@
|
|||||||
|
/*
|
||||||
|
This file is part of GNU Taler
|
||||||
|
(C) 2020 Taler Systems S.A.
|
||||||
|
|
||||||
|
GNU Taler is free software; you can redistribute it and/or modify it under the
|
||||||
|
terms of the GNU General Public License as published by the Free Software
|
||||||
|
Foundation; either version 3, or (at your option) any later version.
|
||||||
|
|
||||||
|
GNU Taler is distributed in the hope that it will be useful, but WITHOUT ANY
|
||||||
|
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
|
||||||
|
A PARTICULAR PURPOSE. See the GNU General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU General Public License along with
|
||||||
|
GNU Taler; see the file COPYING. If not, see <http://www.gnu.org/licenses/>
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Imports.
|
||||||
|
*/
|
||||||
|
import { runTest, GlobalTestState } from "./harness";
|
||||||
|
import { createSimpleTestkudosEnvironment, withdrawViaBank } from "./helpers";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Run test for basic, bank-integrated withdrawal.
|
||||||
|
*/
|
||||||
|
runTest(async (t: GlobalTestState) => {
|
||||||
|
// Set up test environment
|
||||||
|
|
||||||
|
const {
|
||||||
|
wallet,
|
||||||
|
bank,
|
||||||
|
exchange,
|
||||||
|
merchant,
|
||||||
|
} = await createSimpleTestkudosEnvironment(t);
|
||||||
|
|
||||||
|
// Withdraw digital cash into the wallet.
|
||||||
|
|
||||||
|
await withdrawViaBank(t, { wallet, bank, exchange, amount: "TESTKUDOS:20" });
|
||||||
|
|
||||||
|
// Set up order.
|
||||||
|
|
||||||
|
const orderResp = await merchant.createOrder("default", {
|
||||||
|
order: {
|
||||||
|
summary: "Buy me!",
|
||||||
|
amount: "TESTKUDOS:5",
|
||||||
|
fulfillment_url: "taler://fulfillment-success/thx",
|
||||||
|
},
|
||||||
|
});
|
||||||
|
|
||||||
|
let orderStatus = await merchant.queryPrivateOrderStatus(
|
||||||
|
"default",
|
||||||
|
orderResp.order_id,
|
||||||
|
);
|
||||||
|
|
||||||
|
t.assertTrue(orderStatus.order_status === "unpaid")
|
||||||
|
|
||||||
|
console.log(orderStatus);
|
||||||
|
|
||||||
|
// Wait "forever"
|
||||||
|
await new Promise(() => {});
|
||||||
|
});
|
Loading…
Reference in New Issue
Block a user