2015-05-04 5 views
4

Я использую sinon в своих спецификациях и включаю его в Brocfile, как описано в ember-cli docs. Это работает, и я могу использовать синус в своих характеристиках. Но, jshint жалуется, что Sinon не определена:Как объявить глобальные переменные для jshint игнорировать в ember-cli?

1 error: expected false to be truthy 
    AssertionError: unit/views/edit-todo-test.js should pass jshint. 
    unit/views/edit-todo-test.js: line 11, col 18, 'sinon' is not defined. 

я могу это исправить, объявив Sinon ГЛОВАЛЬНОГО в спецификации:

/* global sinon */ 

Но, я должен добавить, что к каждой спецификации (вместе с beforeEach, afterEach, и т.п ....). Скорее всего, я просто настроил бы это один раз глобально, но когда я добавлю эти глобальные переменные в массив predef в .jshintrc, они не будут проигнорированы, и я все равно получаю ошибки. Например:

.jshintrc:

{ 
    "predef": [ 
    "document", 
    "window", 
    "-Promise", 
    "sinon" 
    ], 
<-- snip --> 

все еще терпит неудачу с ошибкой 'sinon' is not defined.

Любая помощь будет высоко оценен. Благодаря!

ответ

11

Вы редактируете неправильный файл .jshintrc. Тот, который находится в корневом каталоге, предназначен для приложения.

Для тестирования есть файл .jshintrc. Отредактируйте тот, который находится по адресу /tests/.jshintrc.

+2

замечательный. Благодаря! – spinlock

0

Вы также можете настроить его для каждого файла. Например, у меня есть библиотека, которую я использую только в службе.

/* global ole*/ 
import Ember from 'ember'; 
import ajax from 'ic-ajax'; 

export default Ember.Service.extend({ 
    //code goes here 
)} 
Смежные вопросы