无法让 sbt-mocha 正确查看 Angular webjar 模拟库



我无法让Angular mock或Angular本身在sbt-web/sbt-mocha项目中被识别。

我正在编写一个基于sbt-web play http://typesafe.com/activator/template/play-2.3-highlights highlights示例的示例。我删除了其他插件,但留下了sbt-mocha插件。

我在libraryDependencies中声明了依赖项:

libraryDependencies ++= Seq(
  "org.webjars" % "jquery" % "2.1.0-2",
  "org.webjars" % "angularjs" % "1.3.0-beta.18",
  "org.webjars" % "angular-ui-router" % "0.2.10-1",
  "org.webjars" % "squirejs" % "0.1.0" % "test",
  "org.webjars" % "chai" % "1.9.1" % "test"
)

然后我用一个常量写了一个angular应用,并把它放到了assets/javascripts中,命名为app.js:

angular.module('myApp', [])
  .constant('PI', Math.PI);
接下来,我写了一个测试:
(function() {
'use strict';
    describe('angular spec', function() {
        beforeEach(module('myApp'));
        it('should have an app with PI', inject(function(PI) {
            expect(PI).to.be.defined();
        }));
    });
}());

然后启动sbt mochaOnly,得到:

[error] TypeError: module is not a function, it is object. 

现在,我试着使用Angular .mocks.module,它给了我一个错误,Angular不存在。

我还将相同的库添加到测试路径中,认为测试路径可能与主路径隔离(愚蠢的想法),但这没有帮助。然后,我尝试按照http://www.scala-js.org/doc/sbt/depending.html只包含mock js文件,如下所示:

  "org.webjars" % "angularjs" % "1.3.0-beta.18" / "angular-mocks.js" % "test",

但是它给了我一个"/"周围的错误,没有识别它,所以三击…

我已经用gulp, grunt,甚至maven-jasmine-plugin做了几十次了,但是现在我在sbt-web的世界里,它使用的是mocha,没有任何文档可以继续。我也是Scala的新手,想试着做一些事情,所以如果我还没有掌握的话,我很抱歉……很有可能!

我只是想用模块函数引导angular mock库,然后用inject注入像PI这样的angular资源。

我有一个GitHub repo与此代码在它…它是:https://github.com/krimple/sbt-web-project-with-angular/

有人想和我一起破解这个吗?我想弄清楚这个问题,并为angular的play seed项目做一个pull请求,这样我们就可以进行一些摩卡测试。如果有一个jasmine sbt插件就更好了,不过我想我们还是先来关注一下mocha吧。

您缺少依赖项:

"org.webjars" %% "webjars-play" % "2.3.0"

看看是不是这个问题

最新更新