在Hashtable中插入值会导致错误:字符串不匹配(IndexError)

时间:2014-01-02 17:21:44

标签: ruby cucumber

在黄瓜脚本中,我定义了:

Before do
@hashtable = Hash.new

Given xxxx do |arg1, arg2|
    @hashtable = @deal.Insert(@hashtable, arg1, arg2)
@ deal.Insert定义为:

def Insert(hashtable, key, value)
    hashtable[key] = value

当我运行黄瓜脚本时,它会抛出错误:

string not matched (IndexError)
./lib/deal.rb:... in '[]='
./lib/deal.rb:... in 'Insert'
....

由于我是Ruby的新手,我不确定这里发生了什么?是否有可能插入哈希表不作为哈希,而是作为其他东西,以便索引无效?

1 个答案:

答案 0 :(得分:0)

我应该返回哈希表:

def Insert(hashtable, key, value)
    hashtable[key] = value
    return hashtable

没有这个我认为插入返回了导致问题的其他东西。