spec/integration/integration_spec.rb in draper-1.0.0 vs spec/integration/integration_spec.rb in draper-1.1.0
- old
+ new
@@ -1,33 +1,58 @@
require 'spec_helper'
require 'support/dummy_app'
require 'support/matchers/have_text'
app = DummyApp.new(ENV["RAILS_ENV"])
+spec_types = {
+ view: ["/posts/1", "PostsController"],
+ mailer: ["/posts/1/mail", "PostMailer"]
+}
app.start_server do
- {view: "/posts/1", mailer: "/posts/1/mail"}.each do |type, path|
+ spec_types.each do |type, (path, controller)|
page = app.get(path)
describe "in a #{type}" do
it "runs in the correct environment" do
- page.should have_text(app.environment).in("#environment")
+ expect(page).to have_text(app.environment).in("#environment")
end
+ it "uses the correct view context controller" do
+ expect(page).to have_text(controller).in("#controller")
+ end
+
+ it "can use built-in helpers" do
+ expect(page).to have_text("Once upon a...").in("#truncated")
+ end
+
+ it "can use built-in private helpers" do
+ # Nokogiri unescapes text!
+ expect(page).to have_text("<script>danger</script>").in("#html_escaped")
+ end
+
+ it "can use user-defined helpers from app/helpers" do
+ expect(page).to have_text("Hello, world!").in("#hello_world")
+ end
+
+ it "can use user-defined helpers from the controller" do
+ expect(page).to have_text("Goodnight, moon!").in("#goodnight_moon")
+ end
+
it "can use path helpers with a model" do
- page.should have_text("/en/posts/1").in("#path_with_model")
+ expect(page).to have_text("/en/posts/1").in("#path_with_model")
end
it "can use path helpers with an id" do
- page.should have_text("/en/posts/1").in("#path_with_id")
+ expect(page).to have_text("/en/posts/1").in("#path_with_id")
end
it "can use url helpers with a model" do
- page.should have_text("http://www.example.com:12345/en/posts/1").in("#url_with_model")
+ expect(page).to have_text("http://www.example.com:12345/en/posts/1").in("#url_with_model")
end
it "can use url helpers with an id" do
- page.should have_text("http://www.example.com:12345/en/posts/1").in("#url_with_id")
+ expect(page).to have_text("http://www.example.com:12345/en/posts/1").in("#url_with_id")
end
end
end
end