我在一个演示应用程序中发现了这一点:
it "should be able to use bip_text to update a text field" do
@user.save!
visit user_path(@user)
within("#email") do
page.should have_content("lucianapoli@gmail.com")
end
bip_text @user, :email, "new@email.com"
visit user_path(@user)
within("#email") do
page.should have_content("new@email.com")
end
end
https://github.com/dougc84/best_in_place/blob/master/spec/integration/js_spec.rb
似乎很容易。
所以我把它复制到我的 Capybara 规范中:
before (:each) do
@report = FactoryGirl.create(:report)
visit report_path(@report)
end
it "name", :focus do
within("#name") do
page.should have_content @report.name
end
bip_text @report, :name, "new name"
visit report_path(@report)
within("#name") do
page.should have_content "new name"
end
end
它太快了,我几乎看不到任何东西,但看起来它确实对#name 字段做了一些事情。然后页面重新加载,它仍然是旧值。
有什么帮助吗?
哦顺便说一句,它确实在浏览器中工作。就是无法通过测试。