2016-01-13 66 views
0

我正在爲Karma,Jasmine和Sinon的角度應用編寫單元測試,並且在我的代碼庫上運行eslint。Sinon和eslint

我定義了將在beforeEach inject中用來創建sinon.stub的全局變量。 ESLint不斷抱怨說我的全局變量是已定義的,但從未使用過。例如:

'getListStub' is defined but never used no-unused-vars 

,但在我的代碼,它看起來像這樣

var listService, getListStub; 

beforeEach(inject(function(_listService_) { 
    listService = _listService_; 
    getListStub = sinon.stub(listService, 'getList').returns(q.when(listResponse)); 
} 

什麼是從產生錯誤停止ESLint的最佳方式?

是否在這些測試文件的頂部設置/*eslint no-unused-vars: 0*/最好?

回答

2

如果你沒有在任何地方使用getListStub,你爲什麼將它分配給一個變量?

JS關閉和內存管理(特別是持有引用對象)的屬性將允許您直接使用_listService_,而且您不需要緩存getListStub

如果不正確地興農工作,你應該能夠重寫你的函數爲:

beforeEach(inject(function(_listService_) { 
    sinon.stub(_listService_, 'getList').returns(q.when(listResponse)); 
} 
+0

非常感謝!這解決了它! – tester123