/ / Името на модула "lib / chai" все още не е заредено за контекста: употреба изисква ([]) - моха, карма-жасмин, чай, карма-моча

Името на модула "lib / chai" все още не е заредено за контекст: употреба изисква ([]) - моха, карма-жасмин, чай, карма-мока

тя работи добре с карма-жасмин ..... но не работи с карма-моча ... y ??

module.exports = function(config){
config.set({

basePath : "../app",

preprocessors: {
"**/*.html":"ng-html2js"
},

ngHtml2JsPreprocessor: {
prependPrefix: "/"
},

files : [
"node_modules/jquery/**/*.js",
"lib/angular/angular.js",
"lib/angular/angular-*.js",
"../test/lib/angular-mocks.js",
"../test/lib/sinon-1.15.0.js",
"../test/lib/chai.js",
"js/**/*.js",
"../test/unit/**/*.js",
"**/*.html"
],

autoWatch : true,

frameworks: ["mocha","requirejs","chai"],

browsers : ["Chrome"],

plugins : [
"karma-chrome-launcher",
"karma-mocha",
"karma-ng-html2js-preprocessor",
"karma-requirejs",
"karma-chai"
],

junitReporter : {
outputFile: "test_out/unit.xml",
suite: "unit"
}

});

};

КОДЕКС НА МОЯТА ПРОБА :::

"use strict";

describe("calendarHelper", function() {
beforeEach(module("eventsApp"));

it("should return January when given a zero",       inject(function(calendarHelper) {
expect(calendarHelper.getMonthName(0)).toBe("January");
}))
});

Отговори:

0 за отговор № 1

Срещнах подобна ситуация само с Жасмин. Бих искал да представя моето решение.

Опитайте това, което е написано в съобщението за грешка. Има връзка към уебсайт: http://requirejs.org/docs/errors.html#notloaded

Използвайте това във вашия спец. Файл:

//If this code is not in a define call,
//DO NOT use require("foo"), but use the async
//callback version:
require(["foo"], function (foo) {
//foo is now loaded.
});

Моят случай, написан за Жасмин и Синон в Кафеикрис, изглежда така:

sinon = require(["sinon", "jasmine-sinon"]) (foo)->

Сега мога да използвам синона като обект в теста за моята единица и също така да следя документацията за синона, както и за жасмин-сион.