Sha256: 6fe67ce89eb0f6fdaf7584ec04d3e6fc5e40bd6644c799fce2355cd291a74fb2

Contents?: true

Size: 1.31 KB

Versions: 6

Compression:

Stored size: 1.31 KB

Contents

# -*- encoding: utf-8 -*-
require "helper"

class TestAttributePresenter < Picasa::Presenter::Base
  def attribute
    parsed_body[:attribute]
  end
end

class TestNilAttributePresenter < Picasa::Presenter::Base
  def nil_attribute
    nil
  end
end

class TestEntriesAliasPresenter < Picasa::Presenter::Base
  def entries
    ["entries"]
  end
  alias :elements :entries
end

describe Picasa::Presenter::Base do
  it "has attribute" do
    presenter = TestAttributePresenter.new({:attribute => "presented body"})

    assert_equal presenter.parsed_body, {:attribute => "presented body"}
  end

  it "has inspect with class name and defined attribute" do
    presenter = TestAttributePresenter.new({:attribute => "presented body"})
    expected = %q{#<TestAttributePresenter attribute: "presented body">}

    assert_equal expected, presenter.inspect
  end

  it "has inspect with nil attribute" do
    presenter = TestNilAttributePresenter.new({:attribute => "presented body"})
    expected = %q{#<TestNilAttributePresenter nil_attribute: nil>}

    assert_equal expected, presenter.inspect
  end

  it "has aliased method to entries" do
    presenter = TestEntriesAliasPresenter.new({:attribute => "presented body"})
    expected = %q{#<TestEntriesAliasPresenter elements: ["entries"]>}

    assert_equal expected, presenter.inspect
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
picasa-0.5.4 test/presenter/base_test.rb
picasa-0.5.3 test/presenter/base_test.rb
picasa-0.5.2 test/presenter/base_test.rb
picasa-0.5.1 test/presenter/base_test.rb
picasa-0.5.0 test/presenter/base_test.rb
picasa-0.4.2 test/presenter/base_test.rb