Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/444.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在Travis中测试空文件夹?_Javascript_Node.js_Git_Travis Ci - Fatal编程技术网

Javascript 如何在Travis中测试空文件夹?

Javascript 如何在Travis中测试空文件夹?,javascript,node.js,git,travis-ci,Javascript,Node.js,Git,Travis Ci,我正在开发一个npm模块,它返回文件夹的内容 我正在尝试测试所有可能的用例,并且我希望我的测试能够继续运行 我知道git不能处理空文件夹,正如上面所描述的,我们通常必须在git上放置隐藏文件来存储半空文件夹 但是如果我把一个空文件放在我的文件夹中,我正在测试一个不同的用例,所以我不能遵循这个模式。我也不能在Travis上运行脚本来创建一个空文件夹,因为 在我的本地机器上测试会失败 你曾经发现自己处于类似的情况吗?你建议我如何处理这种情况 编辑:我想在空文件夹中添加一个文件,并在测试开始时将其删除

我正在开发一个npm模块,它返回文件夹的内容

我正在尝试测试所有可能的用例,并且我希望我的测试能够继续运行

我知道git不能处理空文件夹,正如上面所描述的,我们通常必须在git上放置隐藏文件来存储半空文件夹

但是如果我把一个空文件放在我的文件夹中,我正在测试一个不同的用例,所以我不能遵循这个模式。我也不能在Travis上运行脚本来创建一个空文件夹,因为 在我的本地机器上测试会失败

你曾经发现自己处于类似的情况吗?你建议我如何处理这种情况

编辑:我想在空文件夹中添加一个文件,并在测试开始时将其删除,但如果有人知道一种更聪明的方法,这可能很容易做到。
删除占位符文件有点复杂,因为在我的开发机器上的每次测试运行中,它们在我的git状态下都显示为未老化的编辑

我沿着错综复杂的道路走。 如果将来它可能对某人有用,测试的代码

而且,万一GitHub将被关闭,尽管发生了灾难,我们仍然活着,下面是代码摘录:

...

describe("webdisk", function() {

    before(function() {
        fs.unlinkSync("test/files/fold2/remove.this");
        fs.unlinkSync("test/only-folders/fold1/remove.this");
    });

    after(function() {
        fs.writeFileSync("test/files/fold2/remove.this", "remove.this");
        fs.writeFileSync("test/only-folders/fold1/remove.this", "remove.this");
    });

...

起初,它有点难看,因为我是以异步方式编写的,正如Louis所说的那样,它被重写了,真的改进了。

是的,难看。为什么要在
之前
之后的
中使用
fs.unlink
fs.writeFile
的异步版本,而不是使用这两个调用的同步版本?谢谢,建议不错。这只是习惯使用异步,但在这种情况下,同步更好。。。