【发布时间】:2017-07-27 17:26:38
【问题描述】:
我很困惑。我想我遇到了某种错误。可以使用一些帮助。我有通过规范(在本地和 CI 服务器上通过了几十次),这些规范与序列化程序完全无关。就像他们 _just 检查某些控制器方法的状态。但是后来我实际上只添加了 active_model_serializers,一个 UserSerializer 类,现在我的规范失败了。据说我的控制器的响应是:unauthorized,这甚至是不可能的,b/c 我打电话给render status: :created。
整个应用都是OSS。这实际上是所有的变化:https://github.com/codeblooded/atc-api/commit/a75978a9d9a65a5e8b592685a53045e9fe6d1d91 它声称这条线 https://github.com/codeblooded/atc-api/blob/master/app/controllers/colors_controller.rb#L12 是 401。有什么想法吗?我即将删除 active_model_serializers 并查看我的测试是否再次通过。
请参阅下面的答案。我确实删除了 gem,所有不相关的测试又开始通过了。所以,我打开了这个项目的一个错误。我认为 active_model_serializers 一定以某种意想不到的方式接触了某个对象。
【问题讨论】:
-
我认为,如果不知道测试实际做了什么,这很难提供帮助。
-
@DaveNewton 它只希望 http_status_code 是在发布请求上创建的。 github.com/codeblooded/atc-api/blob/weird-rspec-behavior/spec/… 和它测试的代码:github.com/codeblooded/atc-api/blob/weird-rspec-behavior/app/… - 注意
:unauthorized甚至不可能在这里呈现
标签: ruby-on-rails ruby rspec activemodel active-model-serializers