Sha256: 516bd5a47fb3f989623f430d56d2c5845c12e66ac4a16569df1c08277a31fcc5

Contents?: true

Size: 1.77 KB

Versions: 17

Compression:

Stored size: 1.77 KB

Contents

# encoding: utf-8

class Nanoc::FilterTest < MiniTest::Unit::TestCase

  include Nanoc::TestHelpers

  def test_initialize
    # Create filter
    filter = Nanoc::Filter.new

    # Test assigns
    assert_equal({}, filter.instance_eval { @assigns })
  end

  def test_assigns
    # Create filter
    filter = Nanoc::Filter.new({ :foo => 'bar' })

    # Check assigns
    assert_equal('bar', filter.assigns[:foo])
  end

  def test_assigns_with_instance_variables
    # Create filter
    filter = Nanoc::Filter.new({ :foo => 'bar' })

    # Check assigns
    assert_equal('bar', filter.instance_eval { @foo })
  end

  def test_assigns_with_instance_methods
    # Create filter
    filter = Nanoc::Filter.new({ :foo => 'bar' })

    # Check assigns
    assert_equal('bar', filter.instance_eval { foo })
  end

  def test_run
    # Create filter
    filter = Nanoc::Filter.new

    # Make sure an error is raised
    assert_raises(NotImplementedError) do
      filter.run(nil)
    end
  end

  def test_filename_item
    # Mock items
    item = mock
    item.expects(:identifier).returns('/foo/bar/baz/')
    item_rep = mock
    item_rep.expects(:name).returns(:quux)

    # Create filter
    filter = Nanoc::Filter.new({ :item => item, :item_rep => item_rep })

    # Check filename
    assert_equal('item /foo/bar/baz/ (rep quux)', filter.filename)
  end

  def test_filename_layout
    # Mock items
    layout = mock
    layout.expects(:identifier).returns('/wohba/')

    # Create filter
    filter = Nanoc::Filter.new({ :item => mock, :item_rep => mock, :layout => layout })

    # Check filename
    assert_equal('layout /wohba/', filter.filename)
  end

  def test_filename_unknown
    # Create filter
    filter = Nanoc::Filter.new({})

    # Check filename
    assert_equal('?', filter.filename)
  end

end

Version data entries

17 entries across 17 versions & 1 rubygems

Version Path
nanoc-3.6.1 test/base/test_filter.rb
nanoc-3.6.0 test/base/test_filter.rb
nanoc-3.5.0 test/base/test_filter.rb
nanoc-3.5.0b2 test/base/test_filter.rb
nanoc-3.5.0b1 test/base/test_filter.rb
nanoc-3.4.3 test/base/test_filter.rb
nanoc-3.4.2 test/base/test_filter.rb
nanoc-3.4.1 test/base/test_filter.rb
nanoc-3.4.0 test/base/test_filter.rb
nanoc-3.3.7 test/base/test_filter.rb
nanoc-3.3.6 test/base/test_filter.rb
nanoc-3.3.5 test/base/test_filter.rb
nanoc-3.3.4 test/base/test_filter.rb
nanoc-3.3.3 test/base/test_filter.rb
nanoc-3.3.2 test/base/test_filter.rb
nanoc-3.3.1 test/base/test_filter.rb
nanoc-3.3.0 test/base/test_filter.rb