aboutsummaryrefslogtreecommitdiff
path: root/packages/merchant-backoffice-ui/src/hooks/reserve.test.ts
diff options
context:
space:
mode:
authorSebastian <sebasjm@gmail.com>2024-02-09 09:43:29 -0300
committerSebastian <sebasjm@gmail.com>2024-02-09 09:43:29 -0300
commit6e370c3502a8e6474d4665eb42ae1bfdec3034a1 (patch)
tree94009cc2358d7953c40eb2debcc1443a672b1a11 /packages/merchant-backoffice-ui/src/hooks/reserve.test.ts
parent488be3a40ee044b8feb1994eedd42a06f46fc987 (diff)
downloadwallet-core-6e370c3502a8e6474d4665eb42ae1bfdec3034a1.tar.xz
wip #8325 remove rewards
Diffstat (limited to 'packages/merchant-backoffice-ui/src/hooks/reserve.test.ts')
-rw-r--r--packages/merchant-backoffice-ui/src/hooks/reserve.test.ts245
1 files changed, 2 insertions, 243 deletions
diff --git a/packages/merchant-backoffice-ui/src/hooks/reserve.test.ts b/packages/merchant-backoffice-ui/src/hooks/reserve.test.ts
index b3eecd754..186af1f61 100644
--- a/packages/merchant-backoffice-ui/src/hooks/reserve.test.ts
+++ b/packages/merchant-backoffice-ui/src/hooks/reserve.test.ts
@@ -19,25 +19,19 @@
* @author Sebastian Javier Marchano (sebasjm)
*/
+import * as tests from "@gnu-taler/web-util/testing";
import { expect } from "chai";
import { MerchantBackend } from "../declaration.js";
import {
useInstanceReserves,
- useReserveDetails,
useReservesAPI,
- useRewardDetails,
} from "./reserves.js";
import { ApiMockEnvironment } from "./testing.js";
import {
- API_AUTHORIZE_REWARD,
- API_AUTHORIZE_REWARD_FOR_RESERVE,
API_CREATE_RESERVE,
API_DELETE_RESERVE,
- API_GET_RESERVE_BY_ID,
- API_GET_REWARD_BY_ID,
- API_LIST_RESERVES,
+ API_LIST_RESERVES
} from "./urls.js";
-import * as tests from "@gnu-taler/web-util/testing";
describe("reserve api interaction with listing", () => {
it("should evict cache when creating a reserve", async () => {
@@ -211,238 +205,3 @@ describe("reserve api interaction with listing", () => {
expect(env.assertJustExpectedRequestWereMade()).deep.eq({ result: "ok" });
});
});
-
-describe("reserve api interaction with details", () => {
- it("should evict cache when adding a reward for a specific reserve", async () => {
- const env = new ApiMockEnvironment();
-
- env.addRequestExpectation(API_GET_RESERVE_BY_ID("11"), {
- response: {
- accounts: [{ payto_uri: "payto://here" }],
- rewards: [{ reason: "why?", reward_id: "id1", total_amount: "USD:10" }],
- } as MerchantBackend.Rewards.ReserveDetail,
- qparam: {
- rewards: "yes",
- },
- });
-
- const hookBehavior = await tests.hookBehaveLikeThis(
- () => {
- const api = useReservesAPI();
- const query = useReserveDetails("11");
- return { query, api };
- },
- {},
- [
- ({ query, api }) => {
- expect(query.loading).true;
- },
- ({ query, api }) => {
- expect(env.assertJustExpectedRequestWereMade()).deep.eq({
- result: "ok",
- });
- expect(query.loading).false;
- expect(query.ok).true;
- if (!query.ok) return;
- expect(query.data).deep.equals({
- accounts: [{ payto_uri: "payto://here" }],
- rewards: [{ reason: "why?", reward_id: "id1", total_amount: "USD:10" }],
- });
-
- env.addRequestExpectation(API_AUTHORIZE_REWARD_FOR_RESERVE("11"), {
- request: {
- amount: "USD:12",
- justification: "not",
- next_url: "http://taler.net",
- },
- response: {
- reward_id: "id2",
- taler_reward_uri: "uri",
- reward_expiration: { t_s: 1 },
- reward_status_url: "url",
- },
- });
-
- env.addRequestExpectation(API_GET_RESERVE_BY_ID("11"), {
- response: {
- accounts: [{ payto_uri: "payto://here" }],
- rewards: [
- { reason: "why?", reward_id: "id1", total_amount: "USD:10" },
- { reason: "not", reward_id: "id2", total_amount: "USD:12" },
- ],
- } as MerchantBackend.Rewards.ReserveDetail,
- qparam: {
- rewards: "yes",
- },
- });
-
- api.authorizeRewardReserve("11", {
- amount: "USD:12",
- justification: "not",
- next_url: "http://taler.net",
- });
- },
- ({ query, api }) => {
- expect(env.assertJustExpectedRequestWereMade()).deep.eq({
- result: "ok",
- });
- expect(query.loading).false;
-
- expect(query.loading).false;
- expect(query.ok).true;
- if (!query.ok) return;
-
- expect(query.data).deep.equals({
- accounts: [{ payto_uri: "payto://here" }],
- rewards: [
- { reason: "why?", reward_id: "id1", total_amount: "USD:10" },
- { reason: "not", reward_id: "id2", total_amount: "USD:12" },
- ],
- });
- },
- ],
- env.buildTestingContext(),
- );
-
- expect(hookBehavior).deep.eq({ result: "ok" });
- expect(env.assertJustExpectedRequestWereMade()).deep.eq({ result: "ok" });
- });
-
- it("should evict cache when adding a reward for a random reserve", async () => {
- const env = new ApiMockEnvironment();
-
- env.addRequestExpectation(API_GET_RESERVE_BY_ID("11"), {
- response: {
- accounts: [{ payto_uri: "payto://here" }],
- rewards: [{ reason: "why?", reward_id: "id1", total_amount: "USD:10" }],
- } as MerchantBackend.Rewards.ReserveDetail,
- qparam: {
- rewards: "yes",
- },
- });
-
- const hookBehavior = await tests.hookBehaveLikeThis(
- () => {
- const api = useReservesAPI();
- const query = useReserveDetails("11");
- return { query, api };
- },
- {},
- [
- ({ query, api }) => {
- expect(query.loading).true;
- },
- ({ query, api }) => {
- expect(env.assertJustExpectedRequestWereMade()).deep.eq({
- result: "ok",
- });
- expect(query.loading).false;
- expect(query.ok).true;
- if (!query.ok) return;
- expect(query.data).deep.equals({
- accounts: [{ payto_uri: "payto://here" }],
- rewards: [{ reason: "why?", reward_id: "id1", total_amount: "USD:10" }],
- });
-
- env.addRequestExpectation(API_AUTHORIZE_REWARD, {
- request: {
- amount: "USD:12",
- justification: "not",
- next_url: "http://taler.net",
- },
- response: {
- reward_id: "id2",
- taler_reward_uri: "uri",
- reward_expiration: { t_s: 1 },
- reward_status_url: "url",
- },
- });
-
- env.addRequestExpectation(API_GET_RESERVE_BY_ID("11"), {
- response: {
- accounts: [{ payto_uri: "payto://here" }],
- rewards: [
- { reason: "why?", reward_id: "id1", total_amount: "USD:10" },
- { reason: "not", reward_id: "id2", total_amount: "USD:12" },
- ],
- } as MerchantBackend.Rewards.ReserveDetail,
- qparam: {
- rewards: "yes",
- },
- });
-
- api.authorizeReward({
- amount: "USD:12",
- justification: "not",
- next_url: "http://taler.net",
- });
- },
- ({ query, api }) => {
- expect(env.assertJustExpectedRequestWereMade()).deep.eq({
- result: "ok",
- });
- expect(query.loading).false;
- expect(query.ok).true;
- if (!query.ok) return;
-
- expect(query.data).deep.equals({
- accounts: [{ payto_uri: "payto://here" }],
- rewards: [
- { reason: "why?", reward_id: "id1", total_amount: "USD:10" },
- { reason: "not", reward_id: "id2", total_amount: "USD:12" },
- ],
- });
- },
- ],
- env.buildTestingContext(),
- );
-
- expect(hookBehavior).deep.eq({ result: "ok" });
- expect(env.assertJustExpectedRequestWereMade()).deep.eq({ result: "ok" });
- });
-});
-
-describe("reserve api interaction with reward details", () => {
- it("should list rewards", async () => {
- const env = new ApiMockEnvironment();
-
- env.addRequestExpectation(API_GET_REWARD_BY_ID("11"), {
- response: {
- total_picked_up: "USD:12",
- reason: "not",
- } as MerchantBackend.Rewards.RewardDetails,
- qparam: {
- pickups: "yes",
- },
- });
-
- const hookBehavior = await tests.hookBehaveLikeThis(
- () => {
- const query = useRewardDetails("11");
- return { query };
- },
- {},
- [
- ({ query }) => {
- expect(env.assertJustExpectedRequestWereMade()).deep.eq({
- result: "ok",
- });
- expect(query.loading).true;
- },
- ({ query }) => {
- expect(query.loading).false;
- expect(query.ok).true;
- if (!query.ok) return;
- expect(query.data).deep.equals({
- total_picked_up: "USD:12",
- reason: "not",
- });
- },
- ],
- env.buildTestingContext(),
- );
-
- expect(hookBehavior).deep.eq({ result: "ok" });
- expect(env.assertJustExpectedRequestWereMade()).deep.eq({ result: "ok" });
- });
-});