summaryrefslogtreecommitdiff
path: root/test/csv
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2014-03-01 07:08:19 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2014-03-01 07:08:19 +0000
commit2d89896461cdea858bb3f6037e0357bf95c5330f (patch)
tree4f6577426e2a184b180f79c0a6cf0644fde7a911 /test/csv
parent0b8233ab07a9bfc2c100f395031adfef23c8b491 (diff)
* test/csv/test_data_converters.rb: use descriptive assertions.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45223 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test/csv')
-rwxr-xr-xtest/csv/test_data_converters.rb4
-rwxr-xr-xtest/csv/test_encodings.rb30
-rwxr-xr-xtest/csv/test_features.rb30
-rwxr-xr-xtest/csv/test_headers.rb20
-rwxr-xr-xtest/csv/test_interface.rb6
-rwxr-xr-xtest/csv/test_row.rb39
-rwxr-xr-xtest/csv/test_table.rb11
7 files changed, 65 insertions, 75 deletions
diff --git a/test/csv/test_data_converters.rb b/test/csv/test_data_converters.rb
index 3351620..89b6dd1 100755
--- a/test/csv/test_data_converters.rb
+++ b/test/csv/test_data_converters.rb
@@ -68,7 +68,7 @@ class TestCSV::DataConverters < TestCSV
def test_convert_with_builtin_integer
# setup parser...
- assert(@parser.respond_to?(:convert))
+ assert_respond_to(@parser, :convert)
assert_nothing_raised(Exception) { @parser.convert(:integer) }
# and use
@@ -77,7 +77,7 @@ class TestCSV::DataConverters < TestCSV
def test_convert_with_builtin_float
# setup parser...
- assert(@parser.respond_to?(:convert))
+ assert_respond_to(@parser, :convert)
assert_nothing_raised(Exception) { @parser.convert(:float) }
# and use
diff --git a/test/csv/test_encodings.rb b/test/csv/test_encodings.rb
index 85ed21a..21b997c 100755
--- a/test/csv/test_encodings.rb
+++ b/test/csv/test_encodings.rb
@@ -121,11 +121,9 @@ class TestCSV::Encodings < TestCSV
def test_parser_works_with_encoded_headers
encode_for_tests([%w[one two three], %w[1 2 3]]) do |data|
parsed = CSV.parse(data, headers: true)
- assert( parsed.headers.all? { |h| h.encoding == data.encoding },
- "Wrong data encoding." )
+ assert_all?(parsed.headers, "Wrong data encoding.") {|h| h.encoding == data.encoding}
parsed.each do |row|
- assert( row.fields.all? { |f| f.encoding == data.encoding },
- "Wrong data encoding." )
+ assert_all?(row.fields, "Wrong data encoding.") {|f| f.encoding == data.encoding}
end
end
end
@@ -133,8 +131,7 @@ class TestCSV::Encodings < TestCSV
def test_built_in_converters_transcode_to_utf_8_then_convert
encode_for_tests([%w[one two three], %w[1 2 3]]) do |data|
parsed = CSV.parse(data, converters: :integer)
- assert( parsed[0].all? { |f| f.encoding == data.encoding },
- "Wrong data encoding." )
+ assert_all?(parsed[0], "Wrong data encoding.") {|f| f.encoding == data.encoding}
assert_equal([1, 2, 3], parsed[1])
end
end
@@ -143,10 +140,8 @@ class TestCSV::Encodings < TestCSV
encode_for_tests([%w[one two three], %w[1 2 3]]) do |data|
parsed = CSV.parse( data, headers: true,
header_converters: :downcase )
- assert( parsed.headers.all? { |h| h.encoding.name == "UTF-8" },
- "Wrong data encoding." )
- assert( parsed[0].fields.all? { |f| f.encoding == data.encoding },
- "Wrong data encoding." )
+ assert_all?(parsed.headers, "Wrong data encoding.") {|h| h.encoding.name == "UTF-8"}
+ assert_all?(parsed[0].fields, "Wrong data encoding.") {|f| f.encoding == data.encoding}
end
end
@@ -156,8 +151,7 @@ class TestCSV::Encodings < TestCSV
File.open(@temp_csv_path, "wb:#{data.encoding.name}") { |f| f << data }
CSV.open(@temp_csv_path, "rb:#{data.encoding.name}") do |csv|
csv.each do |row|
- assert( row.all? { |f| f.encoding == data.encoding },
- "Wrong data encoding." )
+ assert_all?(row, "Wrong data encoding.") {|f| f.encoding == data.encoding}
end
end
@@ -167,8 +161,7 @@ class TestCSV::Encodings < TestCSV
end
CSV.open(@temp_csv_path, "rb:UTF-32BE:#{data.encoding.name}") do |csv|
csv.each do |row|
- assert( row.all? { |f| f.encoding == data.encoding },
- "Wrong data encoding." )
+ assert_all?(row, "Wrong data encoding.") {|f| f.encoding == data.encoding}
end
end
end
@@ -188,8 +181,7 @@ class TestCSV::Encodings < TestCSV
end
CSV.foreach( @temp_csv_path,
encoding: "UTF-32BE:#{data.encoding.name}" ) do |row|
- assert( row.all? { |f| f.encoding == data.encoding },
- "Wrong data encoding." )
+ assert_all?(row, "Wrong data encoding.") {|f| f.encoding == data.encoding}
end
end
end
@@ -199,8 +191,7 @@ class TestCSV::Encodings < TestCSV
# read and write in encoding
File.open(@temp_csv_path, "wb:#{data.encoding.name}") { |f| f << data }
rows = CSV.read(@temp_csv_path, encoding: data.encoding.name)
- assert( rows.flatten.all? { |f| f.encoding == data.encoding },
- "Wrong data encoding." )
+ assert_all?(rows.flatten, "Wrong data encoding.") {|f| f.encoding == data.encoding}
# read and write with transcoding
File.open(@temp_csv_path, "wb:UTF-32BE:#{data.encoding.name}") do |f|
@@ -208,8 +199,7 @@ class TestCSV::Encodings < TestCSV
end
rows = CSV.read( @temp_csv_path,
encoding: "UTF-32BE:#{data.encoding.name}" )
- assert( rows.flatten.all? { |f| f.encoding == data.encoding },
- "Wrong data encoding." )
+ assert_all?(rows.flatten, "Wrong data encoding.") {|f| f.encoding == data.encoding}
end
end
diff --git a/test/csv/test_features.rb b/test/csv/test_features.rb
index 9324af7..a83fff8 100755
--- a/test/csv/test_features.rb
+++ b/test/csv/test_features.rb
@@ -134,10 +134,9 @@ class TestCSV::Features < TestCSV
def test_csv_behavior_readers
%w[ unconverted_fields return_headers write_headers
skip_blanks force_quotes ].each do |behavior|
- assert( !CSV.new("abc,def").send("#{behavior}?"),
- "Behavior defaulted to on." )
+ assert_not_predicate(CSV.new("abc,def"), "#{behavior}?", "Behavior defaulted to on.")
csv = CSV.new("abc,def", behavior.to_sym => true)
- assert(csv.send("#{behavior}?"), "Behavior change now registered.")
+ assert_predicate(csv, "#{behavior}?", "Behavior change now registered.")
end
end
@@ -184,9 +183,9 @@ class TestCSV::Features < TestCSV
# reported by Chris Roos
def test_failing_to_reset_headers_in_rewind_bug_fix
csv = CSV.new("forename,surname", headers: true, return_headers: true)
- csv.each { |row| assert row.header_row? }
+ csv.each {|row| assert_predicate row, :header_row?}
csv.rewind
- csv.each { |row| assert row.header_row? }
+ csv.each {|row| assert_predicate row, :header_row?}
end
# reported by Dave Burt
@@ -223,25 +222,24 @@ class TestCSV::Features < TestCSV
zipped << [1, 2, 3]
zipped.close
- assert( Zlib::GzipReader.open(file) { |f| f.read }.
- include?($INPUT_RECORD_SEPARATOR),
- "@row_sep did not default" )
+ assert_include(Zlib::GzipReader.open(file) {|f| f.read},
+ $INPUT_RECORD_SEPARATOR, "@row_sep did not default")
}
end if defined?(Zlib::GzipWriter)
def test_inspect_is_smart_about_io_types
str = CSV.new("string,data").inspect
- assert(str.include?("io_type:StringIO"), "IO type not detected.")
+ assert_include(str, "io_type:StringIO", "IO type not detected.")
str = CSV.new($stderr).inspect
- assert(str.include?("io_type:$stderr"), "IO type not detected.")
+ assert_include(str, "io_type:$stderr", "IO type not detected.")
Tempfile.create(%w"temp .csv") {|tempfile|
tempfile.close
path = tempfile.path
File.open(path, "w") { |csv| csv << "one,two,three\n1,2,3\n" }
str = CSV.open(path) { |csv| csv.inspect }
- assert(str.include?("io_type:File"), "IO type not detected.")
+ assert_include(str, "io_type:File", "IO type not detected.")
}
end
@@ -254,7 +252,7 @@ class TestCSV::Features < TestCSV
def test_inspect_shows_headers_when_available
CSV.new("one,two,three\n1,2,3\n", headers: true) do |csv|
- assert(csv.inspect.include?("headers:true"), "Header hint not shown.")
+ assert_include(csv.inspect, "headers:true", "Header hint not shown.")
csv.shift # load headers
assert_match(/headers:\[[^\]]+\]/, csv.inspect)
end
@@ -262,16 +260,16 @@ class TestCSV::Features < TestCSV
def test_inspect_encoding_is_ascii_compatible
CSV.new("one,two,three\n1,2,3\n".encode("UTF-16BE")) do |csv|
- assert( Encoding.compatible?( Encoding.find("US-ASCII"),
- csv.inspect.encoding ),
- "inspect() was not ASCII compatible." )
+ assert_send([Encoding, :compatible?,
+ Encoding.find("US-ASCII"), csv.inspect.encoding],
+ "inspect() was not ASCII compatible.")
end
end
def test_version
assert_not_nil(CSV::VERSION)
assert_instance_of(String, CSV::VERSION)
- assert(CSV::VERSION.frozen?)
+ assert_predicate(CSV::VERSION, :frozen?)
assert_match(/\A\d\.\d\.\d\Z/, CSV::VERSION)
end
diff --git a/test/csv/test_headers.rb b/test/csv/test_headers.rb
index 00ae82a..069526f 100755
--- a/test/csv/test_headers.rb
+++ b/test/csv/test_headers.rb
@@ -85,8 +85,8 @@ class TestCSV::Headers < TestCSV
assert_not_nil(row)
assert_instance_of(CSV::Row, row)
assert_equal([["my", :my], ["new", :new], ["headers", :headers]], row.to_a)
- assert(row.header_row?)
- assert(!row.field_row?)
+ assert_predicate(row, :header_row?)
+ assert_not_predicate(row, :field_row?)
end
def test_csv_header_string
@@ -127,8 +127,8 @@ class TestCSV::Headers < TestCSV
assert_not_nil(row)
assert_instance_of(CSV::Row, row)
assert_equal([[:my, "my"], [:new, "new"], [:headers, "headers"]], row.to_a)
- assert(row.header_row?)
- assert(!row.field_row?)
+ assert_predicate(row, :header_row?)
+ assert_not_predicate(row, :field_row?)
end
def test_csv_header_string_inherits_separators
@@ -159,24 +159,24 @@ class TestCSV::Headers < TestCSV
assert_instance_of(CSV::Row, row)
assert_equal( [%w{first first}, %w{second second}, %w{third third}],
row.to_a )
- assert(row.header_row?)
- assert(!row.field_row?)
+ assert_predicate(row, :header_row?)
+ assert_not_predicate(row, :field_row?)
# first data row - skipping headers
row = csv[1]
assert_not_nil(row)
assert_instance_of(CSV::Row, row)
assert_equal([%w{first A}, %w{second B}, %w{third C}], row.to_a)
- assert(!row.header_row?)
- assert(row.field_row?)
+ assert_not_predicate(row, :header_row?)
+ assert_predicate(row, :field_row?)
# second data row
row = csv[2]
assert_not_nil(row)
assert_instance_of(CSV::Row, row)
assert_equal([%w{first 1}, %w{second 2}, %w{third 3}], row.to_a)
- assert(!row.header_row?)
- assert(row.field_row?)
+ assert_not_predicate(row, :header_row?)
+ assert_predicate(row, :field_row?)
# empty
assert_nil(csv[3])
diff --git a/test/csv/test_interface.rb b/test/csv/test_interface.rb
index 22907d2..89b4a46 100755
--- a/test/csv/test_interface.rb
+++ b/test/csv/test_interface.rb
@@ -50,16 +50,16 @@ class TestCSV::Interface < TestCSV
csv = CSV.open(@path, "r+", col_sep: "\t", row_sep: "\r\n")
assert_not_nil(csv)
assert_instance_of(CSV, csv)
- assert_equal(false, csv.closed?)
+ assert_not_predicate(csv, :closed?)
csv.close
- assert(csv.closed?)
+ assert_predicate(csv, :closed?)
ret = CSV.open(@path) do |new_csv|
csv = new_csv
assert_instance_of(CSV, new_csv)
"Return value."
end
- assert(csv.closed?)
+ assert_predicate(csv, :closed?)
assert_equal("Return value.", ret)
end
diff --git a/test/csv/test_row.rb b/test/csv/test_row.rb
index a097fc7..d786f38 100755
--- a/test/csv/test_row.rb
+++ b/test/csv/test_row.rb
@@ -40,16 +40,16 @@ class TestCSV::Row < TestCSV
def test_row_type
# field rows
row = CSV::Row.new(%w{A B C}, [1, 2, 3]) # implicit
- assert(!row.header_row?)
- assert(row.field_row?)
+ assert_not_predicate(row, :header_row?)
+ assert_predicate(row, :field_row?)
row = CSV::Row.new(%w{A B C}, [1, 2, 3], false) # explicit
- assert(!row.header_row?)
- assert(row.field_row?)
+ assert_not_predicate(row, :header_row?)
+ assert_predicate(row, :field_row?)
# header row
row = CSV::Row.new(%w{A B C}, [1, 2, 3], true)
- assert(row.header_row?)
- assert(!row.field_row?)
+ assert_predicate(row, :header_row?)
+ assert_not_predicate(row, :field_row?)
end
def test_headers
@@ -249,10 +249,10 @@ class TestCSV::Row < TestCSV
def test_queries
# headers
- assert(@row.header?("A"))
- assert(@row.header?("C"))
- assert(!@row.header?("Z"))
- assert(@row.include?("A")) # alias
+ assert_send([@row, :header?, "A"])
+ assert_send([@row, :header?, "C"])
+ assert_not_send([@row, :header?, "Z"])
+ assert_send([@row, :include?, "A"]) # alias
# fields
assert(@row.field?(4))
@@ -316,7 +316,7 @@ class TestCSV::Row < TestCSV
end
def test_array_delegation
- assert(!@row.empty?, "Row was empty.")
+ assert_not_empty(@row, "Row was empty.")
assert_equal([@row.headers.size, @row.fields.size].max, @row.size)
end
@@ -324,26 +324,27 @@ class TestCSV::Row < TestCSV
def test_inspect_shows_header_field_pairs
str = @row.inspect
@row.each do |header, field|
- assert( str.include?("#{header.inspect}:#{field.inspect}"),
- "Header field pair not found." )
+ assert_include(str, "#{header.inspect}:#{field.inspect}",
+ "Header field pair not found.")
end
end
def test_inspect_encoding_is_ascii_compatible
- assert( Encoding.compatible?( Encoding.find("US-ASCII"),
- @row.inspect.encoding ),
- "inspect() was not ASCII compatible." )
+ assert_send([Encoding, :compatible?,
+ Encoding.find("US-ASCII"),
+ @row.inspect.encoding],
+ "inspect() was not ASCII compatible.")
end
def test_inspect_shows_symbol_headers_as_bare_attributes
str = CSV::Row.new(@row.headers.map { |h| h.to_sym }, @row.fields).inspect
@row.each do |header, field|
- assert( str.include?("#{header}:#{field.inspect}"),
- "Header field pair not found." )
+ assert_include(str, "#{header}:#{field.inspect}",
+ "Header field pair not found.")
end
end
def test_can_be_compared_with_other_classes
- assert(CSV::Row.new([ ], [ ]) != nil, "The row was nil")
+ assert_not_nil(CSV::Row.new([ ], [ ]), "The row was nil")
end
end
diff --git a/test/csv/test_table.rb b/test/csv/test_table.rb
index 318825f..ec710d3 100755
--- a/test/csv/test_table.rb
+++ b/test/csv/test_table.rb
@@ -398,23 +398,24 @@ class TestCSV::Table < TestCSV
end
def test_array_delegation
- assert(!@table.empty?, "Table was empty.")
+ assert_not_empty(@table, "Table was empty.")
assert_equal(@rows.size, @table.size)
end
def test_inspect_shows_current_mode
str = @table.inspect
- assert(str.include?("mode:#{@table.mode}"), "Mode not shown.")
+ assert_include(str, "mode:#{@table.mode}", "Mode not shown.")
@table.by_col!
str = @table.inspect
- assert(str.include?("mode:#{@table.mode}"), "Mode not shown.")
+ assert_include(str, "mode:#{@table.mode}", "Mode not shown.")
end
def test_inspect_encoding_is_ascii_compatible
- assert( Encoding.compatible?( Encoding.find("US-ASCII"),
- @table.inspect.encoding ),
+ assert_send([Encoding, :compatible?,
+ Encoding.find("US-ASCII"),
+ @table.inspect.encoding],
"inspect() was not ASCII compatible." )
end
end