Sha256: 34177fcbde0d3faf8550dbf50083b980feb7bc16bbfd440e340bd292140b8618

Contents?: true

Size: 1.54 KB

Versions: 7

Compression:

Stored size: 1.54 KB

Contents

#####################################################################
# test_tail.rb
#
# Test case for the File.tail method. This test should be run via
# the 'rake test_tail' task.
#####################################################################
require 'test-unit'
require 'ptools'

class TC_FileTail < Test::Unit::TestCase
  def self.startup
    Dir.chdir('test') if File.exist?('test')
    File.open('test_file1.txt', 'w'){ |fh| 25.times{ |n| fh.puts "line#{n+1}" } }
  end

  def setup
    @test_file = 'test_file1.txt'

    @expected_tail1 = ["line16\n","line17\n","line18\n","line19\n"]
    @expected_tail1.push("line20\n","line21\n","line22\n", "line23\n")
    @expected_tail1.push("line24\n","line25\n")

    @expected_tail2 = ["line21\n","line22\n","line23\n","line24\n","line25\n"]
  end

  def test_tail_basic
    assert_respond_to(File, :tail)
    assert_nothing_raised{ File.tail(@test_file) }
    assert_nothing_raised{ File.tail(@test_file, 5) }
    assert_nothing_raised{ File.tail(@test_file){} }
  end

  def test_tail_expected_return_values
    assert_kind_of(Array, File.tail(@test_file))
    assert_equal(@expected_tail1, File.tail(@test_file))
    assert_equal(@expected_tail2, File.tail(@test_file, 5))
  end

  def test_tail_expected_errors
    assert_raises(ArgumentError){ File.tail }
    assert_raises(ArgumentError){ File.tail(@test_file, 5, 5) }
  end

  def teardown
    @test_file = nil
    @expected_tail1 = nil
    @expected_tail2 = nil
  end

  def self.shutdown
    File.delete('test_file1.txt') if File.exist?('test_file1.txt')
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
ptools-1.2.7 test/test_tail.rb
ptools-1.2.6 test/test_tail.rb
ptools-1.2.6-universal-mingw32 test/test_tail.rb
ptools-1.2.5-universal-mingw32 test/test_tail.rb
ptools-1.2.4 test/test_tail.rb
ptools-1.2.4-universal-mingw32 test/test_tail.rb
ptools-1.2.3 test/test_tail.rb