Sha256: 171a125dda0daac9c92620f229130adb0d40c1b45fde7e293947b21e1ec5e95c
Contents?: true
Size: 1.74 KB
Versions: 2
Compression:
Stored size: 1.74 KB
Contents
require 'spec_helper' describe PostDecorator do let(:decorator) { PostDecorator.new(source) } let(:source) { Post.create } it "can use built-in helpers" do expect(decorator.truncated).to eq "Once upon a..." end it "can use built-in private helpers" do expect(decorator.html_escaped).to eq "<script>danger</script>" end it "can use user-defined helpers from app/helpers" do expect(decorator.hello_world).to eq "Hello, world!" end it "can use path helpers with its model" do expect(decorator.path_with_model).to eq "/en/posts/#{source.id}" end it "can use path helpers with its id" do expect(decorator.path_with_id).to eq "/en/posts/#{source.id}" end it "can use url helpers with its model" do expect(decorator.url_with_model).to eq "http://www.example.com:12345/en/posts/#{source.id}" end it "can use url helpers with its id" do expect(decorator.url_with_id).to eq "http://www.example.com:12345/en/posts/#{source.id}" end it "can be passed implicitly to url_for" do expect(decorator.link).to eq "<a href=\"/en/posts/#{source.id}\">#{source.id}</a>" end it "serializes overriden attributes" do expect(decorator.serializable_hash["updated_at"]).to be :overridden end it "serializes to JSON" do json = decorator.to_json expect(json).to match /"updated_at":"overridden"/ end it "serializes to XML" do pending("Rails < 3.2 does not use `serializable_hash` in `to_xml`") if Rails.version.to_f < 3.2 xml = Capybara.string(decorator.to_xml) expect(xml).to have_css "post > updated-at", text: "overridden" end it "uses a test view context from ApplicationController" do expect(Draper::ViewContext.current.controller).to be_an ApplicationController end end
Version data entries
2 entries across 2 versions & 2 rubygems
Version | Path |
---|---|
draper-1.2.0 | spec/dummy/spec/decorators/post_decorator_spec.rb |
jamesgolick-draper-1.1.1a | spec/dummy/spec/decorators/post_decorator_spec.rb |