Actions
Bug #675
closedFailure: test_delete_with_block(TestSDBM)
Description
=begin
- Failure:
test_delete_with_block(TestSDBM) [.../trunk/test/sdbm/test_sdbm.rb:375]:
<"called block"> expected but was
<"no called block">.
も調べてみました。
ext/sdbm/init.cのfsdbm_deleteで
ExportStringValue(keystr);
で別のオブジェクトになる可能性があるkeystrを
if (rb_block_given_p()) return rb_yield(keystr);
でrb_yieldに渡しているのにテストの方で
key = 'no called block'
assert_equal(:blockval,
@sdbm.delete(key) {|k| k.replace 'called block'; :blockval})
assert_equal('called block', key)
のように同じオブジェクトが来ると仮定してString#replaceを呼んでいるからのようです。
=end
Actions
Like0
Like0