Javascript 为什么jasmine节点没有';找不到我的规范文件?

Javascript 为什么jasmine节点没有';找不到我的规范文件?,javascript,node.js,coffeescript,jasmine,Javascript,Node.js,Coffeescript,Jasmine,我已经使用npm安装了jasmine节点。我的项目的目录结构如下: |-lib\ |-taxCalc.js |-spec\ |-taxCalc.spec.coffee |-taxCalc.spec.js |-src\ |-taxCalc.coffee 当我使用以下命令(对于CoffeeScript)从根文件夹运行jasmine节点时: 如果我运行JavaScript版本,也是一样的 如果我明确指出规范文件测试运行良好: jasmine-node --coffee --v

我已经使用npm安装了jasmine节点。我的项目的目录结构如下:

|-lib\
   |-taxCalc.js
|-spec\
   |-taxCalc.spec.coffee
   |-taxCalc.spec.js
|-src\
   |-taxCalc.coffee
当我使用以下命令(对于CoffeeScript)从根文件夹运行jasmine节点时:

如果我运行JavaScript版本,也是一样的

如果我明确指出规范文件测试运行良好:

jasmine-node --coffee --verbose spec/taxCalc.spec.coffee

Tax calculation
  calculates tax

Finished in 0.009 seconds
1 test, 1 assertion, 0 failures
文档中说,文件名应该以“spec.js”或“spec.coffee”结尾,所以看起来一切正常


另外,我在Windows 7上运行。

偶然发现了同样的问题,阅读MarisKs链接太晚了:/-但得出的结论与本期中描述的相同: 至少在Windows 7上,file.stat.ino总是返回0,因此findit/index.js中的函数createInodeChecker()总是返回true,文件将被跳过

最简单的即时修复:将createInodeChecker编辑为

function createInodeChecker() {
    var inodes = {};
    return function inodeSeen(inode) {
        if (inode == 0) {
            return false;
        }

        if (inodes[inode]) {
            return true;
        } else {
            inodes[inode] = true;
            return false;
        }
    }
}

不太好,但您可以使用它。

Jasmine节点在上周已更新为使用walkdir而不是findit,现在它可以在windows中运行。重新运行
npm install jasmine node
进行更新。

我只知道windows需要对node.js中的路径进行不同的处理。Exmpl;“C:/bla”必须是“C:\/bla”。可能是jasmine的开发人员没有在windows上测试..谢谢你的想法-如果jasmine节点找到windows特定的路径,我将尝试测试它中使用的正则表达式。我在windows中有一个与你的结构类似的项目,但我没有遇到你的问题。如果更明确地说,spec是一个目录,会有什么区别吗:
jasmine节点——coffee——verbose。\spec\
?不,甚至更明确的版本也没有帮助。我测试了jasmine节点中使用的正则表达式,它很好。伙计,抛弃jasmine。我以前用茉莉花,那是在摩卡咖啡出现之前。试过了。很好用!我还提出了“findit”的解决方案:
function createInodeChecker() {
    var inodes = {};
    return function inodeSeen(inode) {
        if (inode == 0) {
            return false;
        }

        if (inodes[inode]) {
            return true;
        } else {
            inodes[inode] = true;
            return false;
        }
    }
}