This repository has been archived on 2022-03-31. You can view files and clone it, but cannot push or open issues or pull requests.
cic-ussd-e2e/scenarios/stateless/initial_menu.test.js

42 lines
1.0 KiB
JavaScript

const test = require("tap").test;
const rangi = require("rangi");
const lib = require("../../lib");
const conf = require("../../config");
test("Initial Menu", async (t) => {
const sessionId = lib.newSession();
t.plan(3);
t.test("Display menu and Sarafu balance", async (t) => {
await lib.wait(conf.test.waitNextMenu);
const r = await lib.ussdClient(conf.user.ussdPhone, sessionId);
console.log(rangi.cyan(r.text));
t.equal(r.code, "CON");
t.match(r.text, /Balance/g);
t.end();
});
t.test("Go to help menu", async (t) => {
await lib.wait(conf.test.waitNextMenu);
const r = await lib.ussdClient(conf.user.ussdPhone, sessionId, "4");
console.log(rangi.cyan(r.text));
t.equal(r.code, "CON");
t.match(r.text, /assistance/g);
t.end();
});
t.test("Exit", async (t) => {
await lib.wait(conf.test.waitNextMenu);
const r = await lib.ussdClient(conf.user.ussdPhone, sessionId, "4*99");
console.log(rangi.cyan(r.text));
t.equal(r.code, "END");
t.match(r.text, /Thank/g);
t.end();
});
});