2013-07-24 29 views
0

我試圖讓Jasmine的設置和拆卸方法爲我工作。 我必須錯誤地使用它,因爲安裝後我無法讓變量保持在範圍內。使用茉莉花的`beforeEach`方法

不起作用:

describe 'classes/model', -> 
    beforeEach -> 
    model = new Model() 
    describe 'the basics', -> 
    it 'extends Backbone.Model', -> 
     expect(model).toBeInstanceOf Model # Fails. 'model is not defined' 

我想也許設置必須處於的描述範圍。但是這也行不通:

describe 'classes/model', -> 
    describe 'the basics', -> 
    beforeEach -> 
     model = new Model() 
    it 'extends Backbone.Model', -> 
     expect(model).toBeInstanceOf Model # Fails. 'model is not defined' 

工程。 (但不使用安裝方便)

describe 'classes/model', -> 
    describe 'the basics', -> 
    it 'extends Backbone.Model', -> 
     model = new Model() 
     expect(model).toBeInstanceOf Model 

難道我做錯了什麼,防止beforeEach從工作?

回答

4

找到它。大概應該早點注意到:) 要注意CoffeeScript管理變量的方式使這項工作成爲可能。

describe 'classes/model', -> 
    model = null # get it in scope 
    beforeEach -> 
    model = new Model() 
    describe 'the basics', -> 
    it 'extends Backbone.Model', -> 
     expect(model).toBeInstanceOf Model