Class: TestFileLines

Inherits:
Test::Unit::TestCase
  • Object
show all
Defined in:
lib/innate/test/testfilelines.rb

Instance Method Summary collapse

Instance Method Details

#setupObject



8
9
10
11
12
13
# File 'lib/innate/test/testfilelines.rb', line 8

def setup
  @file = File.open __FILE__
  @fl = FileLines.new __FILE__
  @first = "# this first line is here for testing.\n"
  @last = "# this last line is here for testing."
end

#teardownObject



15
16
17
# File 'lib/innate/test/testfilelines.rb', line 15

def teardown
  @file.close
end

#test_collectObject



99
100
101
# File 'lib/innate/test/testfilelines.rb', line 99

def test_collect
  assert_equal @file.readlines, @fl.collect
end

#test_eachObject



19
20
21
22
23
# File 'lib/innate/test/testfilelines.rb', line 19

def test_each
  @fl.each do |l|
    assert_equal @file.readline, l
  end
end

#test_enumerableObject



41
42
43
44
45
46
# File 'lib/innate/test/testfilelines.rb', line 41

def test_enumerable
  a = @file.readlines.reverse.to_cursor
  @fl.reverse_each do |l|
    assert_equal a.read1next, l
  end
end

#test_firstObject



91
92
93
# File 'lib/innate/test/testfilelines.rb', line 91

def test_first
  assert_equal @first, @fl.first
end

#test_indexObject



29
30
31
# File 'lib/innate/test/testfilelines.rb', line 29

def test_index
  assert_equal @file.readlines[17], @fl[17]
end

#test_known_linesObject



56
57
58
59
# File 'lib/innate/test/testfilelines.rb', line 56

def test_known_lines
  assert_equal @first, @fl[0]
  assert_equal @last, @fl[@fl.length - 1]
end

#test_lastObject



95
96
97
# File 'lib/innate/test/testfilelines.rb', line 95

def test_last
  assert_equal @last, @fl.last
end

#test_lengthObject



48
49
50
# File 'lib/innate/test/testfilelines.rb', line 48

def test_length
  assert_equal @file.readlines.length, @fl.length
end

#test_neg_first_indexObject



87
88
89
# File 'lib/innate/test/testfilelines.rb', line 87

def test_neg_first_index
  assert_equal @file.readlines[-10..-1], @fl[-10..-1]
end

#test_neg_indexObject



71
72
73
74
75
76
77
# File 'lib/innate/test/testfilelines.rb', line 71

def test_neg_index
  assert_equal @file.readlines, @fl[0..-1]
  @file.rewind
  assert_equal @file.readlines[40..-10], @fl[40..-10]
  @file.rewind
  assert_equal @file.readlines[50...-17], @fl[50...-17]
end

#test_neg_index2Object



79
80
81
# File 'lib/innate/test/testfilelines.rb', line 79

def test_neg_index2
  assert_equal @file.readlines[50...-17], @fl[50...-17]
end

#test_neg_int_indexObject



83
84
85
# File 'lib/innate/test/testfilelines.rb', line 83

def test_neg_int_index
  assert_equal @file.readlines.last, @fl[-1]
end

#test_old_atObject



61
62
63
64
65
66
67
68
69
# File 'lib/innate/test/testfilelines.rb', line 61

def test_old_at
  assert_nil @fl.at_before_file_lines(0)
  # init on first use:
  @fl.length
  assert_equal 0, @fl.at_before_file_lines(0)
  test_known_lines
  assert_kind_of String, @fl.at_before_file_lines(0)
  assert_kind_of Fixnum, @fl.at_before_file_lines(1)
end

#test_rangeObject



25
26
27
# File 'lib/innate/test/testfilelines.rb', line 25

def test_range
  assert_equal @file.readlines[5...15], @fl[5...15]
end

#test_sizeObject



52
53
54
# File 'lib/innate/test/testfilelines.rb', line 52

def test_size
  assert_equal @file.readlines.length, @fl.size
end

#test_values_atObject



33
34
35
# File 'lib/innate/test/testfilelines.rb', line 33

def test_values_at
  assert_equal @file.readlines.values_at(0..7, 9, 20...60), @fl.values_at(0..7, 9, 20...60)
end

#test_values_at2Object



37
38
39
# File 'lib/innate/test/testfilelines.rb', line 37

def test_values_at2
  assert_equal @file.readlines.values_at(0..7, 9, 20...-60), @fl.values_at(0..7, 9, 20...-60)
end