如果某个东西试图从stdin读取,那么使它无法通过笑话测试的好方法?

时间:2018-09-28 14:52:50

标签: node.js jestjs shelljs

我正在使用shelljsjest测试Shell脚本。如果Shell脚本找不到所需的某些变量,它将退回到交互式模式,并且对于大多数测试,应设置变量,以免发生这种情况。

因此,如果进程尝试从stdin中读取数据,我想通过的测试失败。我有一个直觉,可以通过模拟stdin来做到这一点,但是浏览一下Node process API,我没有看到与“等待输入”或任何东西相对应的事件,所以我转向社区。

例如,如果shell脚本具有以下内容:

if [[ -z "$FOO" ]]; then
  read -p "FOO: " FOO # <- I want to trigger failure in the jest test
fi

0 个答案:

没有答案