我无法理解如何设置用于我的测试的变量。例如,我有一个名为 spark.isTriple() 的函数,它接受一个数字并查看一个名为 dice 的数组,如果该值出现 3 次或更多次,则返回 true,否则返回 false。
#In game.coffee
window.spark =
isTriple: (n)->
triples = _.filter dice, (i)->
n is i
if triples.length >= 3
true
else
false
我有一个看起来像这样的测试。
# In game_spec.coffee
describe 'spark.isTriple', ->
it "Should return true if the given value is found 3 or more times in the dice roll", ->
dice = [1,2,2,2,4,5]
spark.isTriple(2).should.be.true
问题是“骰子”也在早期测试中设置,该测试实际上是在测试 rollDice() 函数。在那个测试骰子中,它被设置为一个随机的值数组,这是它应该做的和测试的。但是对于这个特定的测试,我希望能够将“骰子”设置为特定的数组,以测试我的 isTriple() 函数。我尝试将“dice = [1,2,2,2,3,4]”放在 before() 调用和 beforeEach() 调用中,但似乎没有任何区别。
如果有人可以在这方面给我一些帮助或指示,将不胜感激。