Sha256: 46133334bedf5c7d172a5ee7d838e358a6c0b267cba01a05f8c3bf87a6e83295

Contents?: true

Size: 1.29 KB

Versions: 15

Compression:

Stored size: 1.29 KB

Contents

# encoding: utf-8

class Nanoc::DataSourceTest < Nanoc::TestCase

  def test_loading
    # Create data source
    data_source = Nanoc::DataSource.new(nil, nil, nil, nil)
    data_source.expects(:up).times(1)
    data_source.expects(:down).times(1)

    # Test nested loading
    assert_equal(0, data_source.instance_eval { @references })
    data_source.loading do
      assert_equal(1, data_source.instance_eval { @references })
      data_source.loading do
        assert_equal(2, data_source.instance_eval { @references })
      end
      assert_equal(1, data_source.instance_eval { @references })
    end
    assert_equal(0, data_source.instance_eval { @references })
  end

  def test_not_implemented
    # Create data source
    data_source = Nanoc::DataSource.new(nil, nil, nil, nil)

    # Test optional methods
    data_source.up
    data_source.down
    data_source.update

    # Test required methods - general
    assert_raises(NotImplementedError) { data_source.setup }

    # Test methods - loading data
    assert_equal [],  data_source.items
    assert_equal [],  data_source.layouts

    # Test required method - creating data
    assert_raises(NotImplementedError) { data_source.create_item(nil, nil, nil) }
    assert_raises(NotImplementedError) { data_source.create_layout(nil, nil, nil) }
  end

end

Version data entries

15 entries across 15 versions & 1 rubygems

Version Path
nanoc-3.7.4 test/base/test_data_source.rb
nanoc-3.7.3 test/base/test_data_source.rb
nanoc-3.7.2 test/base/test_data_source.rb
nanoc-3.7.1 test/base/test_data_source.rb
nanoc-3.7.0 test/base/test_data_source.rb
nanoc-3.6.11 test/base/test_data_source.rb
nanoc-3.6.10 test/base/test_data_source.rb
nanoc-3.6.9 test/base/test_data_source.rb
nanoc-3.6.8 test/base/test_data_source.rb
nanoc-3.6.7 test/base/test_data_source.rb
nanoc-3.6.6 test/base/test_data_source.rb
nanoc-3.6.5 test/base/test_data_source.rb
nanoc-3.6.4 test/base/test_data_source.rb
nanoc-3.6.3 test/base/test_data_source.rb
nanoc-3.6.2 test/base/test_data_source.rb