Я пытаюсь получить unit test, написанный в Typescript, используя Jasmine для компиляции. В моем модульном тестовом файле Resharper предлагает мне ссылку для импорта типов из jasmine.d.ts.
/// <reference path="sut.ts" />
/// <reference path="../../../scripts/typings/jasmine/jasmine.d.ts" />
describe("Person FullName", function () {
var person;
BeforeEach(function () {
person = new Person();
person.setFirstName("Joe");
person.setLastName("Smith");
});
It("should concatenate first and last names", function () {
Expect(person.getFullName()).toBe("Joe, Smith");
});
});
Итак, я нажимаю на ссылку и заканчиваю следующим (на самом деле resharper только префикс функции описания с помощью "Жасмин", поэтому я вручную префикс других вызовов Жасмин):
/// <reference path="sut.ts" />
/// <reference path="../../../scripts/typings/jasmine/jasmine.d.ts" />
import Jasmine = require("../../../Scripts/typings/jasmine/jasmine");
Jasmine.describe("Person FullName", function () {
var person;
Jasmine.BeforeEach(function () {
person = new Person();
person.setFirstName("Joe");
person.setLastName("Smith");
});
Jasmine.It("should concatenate first and last names", function () {
Jasmine.Expect(person.getFullName()).toBe("Joe, Smith");
});
});
Однако оператор import имеет красную строку с ошибкой с сообщением об ошибке "Невозможно разрешить внешний модуль.. /../../scripts/typings/jasmine/jasmine. Модуль не может быть псевдонимом для немодульного типа"
Любая идея, что вызывает эту ошибку? Я проверил, что опция "Модульная система" установлена в AMD в моих настройках сборки проекта. Я также проверил, что модуль жасмина определен в jasmine.d.ts. Я загрузил этот файл с сайта DefinitelyTyped.
declare module jasmine {
...
}