Sha256: de05155c7aacb645c48893c119e3a2620ec87e7e296c5d3b110ae8bb324e44d7

Contents?: true

Size: 1.42 KB

Versions: 4

Compression:

Stored size: 1.42 KB

Contents

# encoding: utf-8

class Nanoc::Tasks::CleanTest < Nanoc::TestCase
  def test_simple
    if_have 'w3c_validators' do
      # Stub items
      items = [mock, mock]
      reps  = [[mock, mock], [mock, mock]]
      items[0].expects(:reps).returns(reps[0])
      items[1].expects(:reps).returns(reps[1])

      # Create sample files
      [0, 1].each do |item_id|
        [0, 1].each do |rep_id|
          filename = "item-#{item_id}-rep-#{rep_id}.txt"
          reps[item_id][rep_id].expects(:raw_path).returns(filename)
          File.open(filename, 'w') { |io| io.write('hello') }
          assert File.file?(filename)
        end
      end

      # Stub site
      site = mock
      site.expects(:items).returns(items)

      # Create clean task
      clean = ::Nanoc::Tasks::Clean.new(site)

      # Run
      clean.run

      # Check
      [0, 1].each do |item_id|
        [0, 1].each do |rep_id|
          filename = "item-#{item_id}-rep-#{rep_id}.txt"
          assert !File.file?(filename)
        end
      end
    end
  end

  def test_with_nil_raw_path
    if_have 'w3c_validators' do
      # Stub items
      item = mock
      rep = mock
      item.expects(:reps).returns([rep])

      # Create sample file
      rep.expects(:raw_path).returns(nil)

      # Stub site
      site = mock
      site.expects(:items).returns([item])

      # Create clean task
      clean = ::Nanoc::Tasks::Clean.new(site)

      # Run
      clean.run
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
nanoc-4.0.0a2 test/tasks/test_clean.rb
nanoc-4.0.0a1 test/tasks/test_clean.rb
nanoc-3.8.0 test/tasks/test_clean.rb
nanoc-3.7.5 test/tasks/test_clean.rb