Skip to content

Commit

Permalink
test: improve coverage of lib/readline.js
Browse files Browse the repository at this point in the history
PR-URL: #38646
Refs: https://coverage.nodejs.org/coverage-16e00a15deafdad0/lib/readline.js.html#L441
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Michael Dawson <midawson@redhat.com>
Reviewed-By: Zijian Liu <lxxyxzj@gmail.com>
Reviewed-By: Mohammed Keyvanzadeh <mohammadkeyvanzade94@gmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
  • Loading branch information
pd4d10 authored and targos committed May 12, 2024
1 parent 96566fc commit ea6070b
Showing 1 changed file with 30 additions and 0 deletions.
30 changes: 30 additions & 0 deletions test/parallel/test-readline-interface.js
Original file line number Diff line number Diff line change
Expand Up @@ -1061,6 +1061,16 @@ for (let i = 0; i < 12; i++) {
rli.close();
}

// Calling only the first question callback
{
const [rli] = getInterface({ terminal });
rli.question('foo?', common.mustCall((answer) => {
assert.strictEqual(answer, 'bar');
}));
rli.question('hello?', common.mustNotCall());
rli.write('bar\n');
}

// Calling the question multiple times
{
const [rli] = getInterface({ terminal });
Expand Down Expand Up @@ -1329,6 +1339,26 @@ for (let i = 0; i < 12; i++) {
rli.close();
}), delay);
}

// Write correctly if paused
{
const [rli] = getInterface({ terminal });
rli.on('line', common.mustCall((line) => {
assert.strictEqual(line, 'bar');
}));
rli.pause();
rli.write('bar\n');
assert.strictEqual(rli.paused, false);
rli.close();
}

// Write undefined
{
const [rli] = getInterface({ terminal });
rli.on('line', common.mustNotCall());
rli.write();
rli.close();
}
});

// Ensure that the _wordLeft method works even for large input
Expand Down

0 comments on commit ea6070b

Please sign in to comment.