首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Minitest::模拟和案例陈述

Minitest::模拟和案例陈述
EN

Stack Overflow用户
提问于 2015-05-19 10:48:48
回答 1查看 88关注 0票数 0

知道为什么下面的代码不起作用吗?

代码语言:javascript
复制
require 'minitest/mock'

test = Minitest::Mock.new
test.expect :class, Class

p case test
when Class
  'class'
else
  'nope'
end # => 'nope' … but should return 'class'

p test.class === Class # => true
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-05-19 11:49:49

Rubycase在不显式调用class的情况下处理===比较,尽管对test.class的结果进行显式比较可以使上述代码工作。

但是,如果您不能这样做,正如您前面所说的,您可能无法让这样的case工作。我猜想Ruby的case实现是用C实现的,所以class可能永远不会被调用,而期望也永远满足不了。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30323499

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档