Sha256: a3c1da7c2c6f73e1552f498c1412a7a7a784bbe971fde16ba8cf8537a73d3e59

Contents?: true

Size: 1.7 KB

Versions: 1

Compression:

Stored size: 1.7 KB

Contents

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

require 'test/unit'
require 'ptools'

class TC_FileTail < Test::Unit::TestCase
   def self.startup
      Dir.chdir('test') if File.exists?('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.exists?('test_file1.txt')
   end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
ptools-1.2.2-universal-mingw32 test/test_tail.rb