From fbcb72a6650957d19b476dbbe9d59bcbf0692150 Mon Sep 17 00:00:00 2001 From: Zijian Liu Date: Sat, 5 Dec 2020 02:32:46 +0800 Subject: [PATCH] test: increase coverage for readline 1. test call readline.Interface without new should return instance Refs: https://coverage.nodejs.org/coverage-f7dd330ba0e7bfa9/lib/readline.js.html#L101 2. test keypress ctrl + c should close readline interface Refs: https://coverage.nodejs.org/coverage-f7dd330ba0e7bfa9/lib/readline.js.html#L891 PR-URL: https://github.com/nodejs/node/pull/36389 Refs: https://coverage.nodejs.org/coverage-f7dd330ba0e7bfa9/lib/readline.js.html#L101 Refs: https://coverage.nodejs.org/coverage-f7dd330ba0e7bfa9/lib/readline.js.html#L891 Reviewed-By: Antoine du Hamel Reviewed-By: Benjamin Gruenbaum Reviewed-By: Luigi Pinca --- test/parallel/test-readline-interface.js | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/test/parallel/test-readline-interface.js b/test/parallel/test-readline-interface.js index 3a14d618ad0c86..8e32edcc49768a 100644 --- a/test/parallel/test-readline-interface.js +++ b/test/parallel/test-readline-interface.js @@ -63,6 +63,12 @@ function assertCursorRowsAndCols(rli, rows, cols) { assert.strictEqual(cursorPos.cols, cols); } +{ + const input = new FakeInput(); + const rl = readline.Interface({ input }); + assert(rl instanceof readline.Interface); +} + [ undefined, 50, @@ -657,6 +663,13 @@ function assertCursorRowsAndCols(rli, rows, cols) { rli.close(); } +// Close readline interface +{ + const [rli, fi] = getInterface({ terminal: true, prompt: '' }); + fi.emit('keypress', '.', { ctrl: true, name: 'c' }); + assert(rli.closed); +} + // Multi-line input cursor position { const [rli, fi] = getInterface({ terminal: true, prompt: '' });