環境 node.js 15.14.0 npm 7.11.1 typescript 4.2.4 ts-node 9.1.1 jest 26.6.3 ts-jest 26.5.5 はじめに node.jsで標準入力で処理対象を受け取って、加工した後に標準出力するプログラムを書くことがありました。 その際のテストを書くのに少しハマったので、ここで共有します。 簡単な標準入出力を扱うNode.jsプログラム 例えば以下のようなものを考えてみます。 空白で区切られた文字列を改行で区切られ、複数列が入力される。 文字列の空白の前をkey、後をvalueとしたコレクションを作成する。 ただ、既に出現しているkeyの場合は、そのvalueは無視する。(最初のvalueを結果とする) 最後にそのkey-valueのコレクションをjson文字列で標準出力に出す。