cool
:thumbsup:
真的很快啊
是因为修改 storyboard 的配置冲突吗
这个好,赞
恭喜
第一版啊
xi 大大那个肯定是假的
改写完了吗
其实我也要为楼主的机智点赞
底薪(基本是你说多少就多少)
要是能听懂 就太完美了 orz
点个收藏吧
app server time 是指服务器消耗的时间?从请求到返回数据这一过程吗?还有 503ms 是指整个请求仅消耗了不到 1 秒吗?
崂山,市南的最贵。李沧 市北 次之,不同的地段价位不一样啦,重庆南路附近的楼盘在 1w4,5 吧,李村的楼盘 1w 出头,仅供参考吧
SecureRandom.hex(10)
呵呵
#12 楼 @JIAZHEN 我按照你上面的写法试了试,我感觉 Club.any_instance.stub(:is_admin?).and_return(true) 这种写法应该可以,但返回的还不是 mock 的 true。
我的程序代码是这么写的
@club = fetch_club
if @club.is_admin?(current_member.id)
xxxxx
end
我感觉是因为 fetch_club(写在 grape 的 helper 里) 这块的问题?我上面是用下面这种方式来 mock fetch_club,这样就正常
Grape::Endpoint.before_each do |endpoint|
endpoint.stub(:fetch_club).and_return(@club)
end
额 mock 出来了,问题就是在测试中 mock 的 club 和 api 代码中不是同一个实例 fetch_club 方法是定义在 grape helper 里面 所以就 mock fetch_club https://github.com/intridea/grape#stubbing-helpers 这样 就 ok 了,谢谢帮忙回答问题的几位~~~
before do
Grape::Endpoint.before_each do |endpoint|
endpoint.stub(:fetch_club).and_return(@club)
end
end
it "creates a conference" do
@club.stub(:is_admin?).and_return(true)
post "/api/v1/conferences", @conference_params, {"HTTP_API_KEYAPI_KEY" => @member.api_token}
expect(response.status).to eq(201)
end
#6 楼 @JIAZHEN 我把测试改了一下,在测试中分别 mock fetch_club, @club.is_admin? 但是 if @club.is_admin?还是返回 false, controller.stub(:fetch_club).and_return(@club) 这种 mock 对吗?
it "creates a conference" do
@club.stub(:is_admin?).and_return(true)
controller.stub(:fetch_club).and_return(@club)
post "/api/v1/conferences", @conference_params, {"HTTP_API_KEYAPI_KEY" => @member.api_token}
expect(response.status).to eq(201)
end
api 代码也同时改了
post do
authenticate!
@club = fetch_club
if @club.is_admin?(current_member.id)
xxxxxx
end
end
感觉 测试 mock 的 club 实例 和 程序中的不是同一个
#5 楼 @kayakjiang 换了这种也不行,我感觉@JIAZHEN 这种说法 应该是对的,但是实际还是返回 false
#6 楼 @JIAZHEN 额 , fetch_club 方法 Club.where.first,我在测试中设置了个断点
before(:each) do
@club = create(:public_community)
@member = @club.member
end
it "creates a conference" do
Club.any_instance.stub(:is_admin?).and_return(true)
binding.pry
post "/api/v1/conferences", @conference_params, {"HTTP_API_KEYAPI_KEY" => @member.api_token}
expect(response.status).to eq(201)
end
在断点处调试 @club.is_admin?(@member.id) => false
这里直接输入 false 了,哪里不对?
为了看第一张照片里的妹子,我把电脑都倒过来了~~~~~~
#3 楼 @kayakjiang 恩 这个是 在 before(:each) 里面 create 出来的
before(:each) do
@club = create(:public_community)
end