From 30e14294a74915ab359de5bc45881c391e259c4c Mon Sep 17 00:00:00 2001 From: nahi Date: Fri, 12 Dec 2003 13:44:58 +0000 Subject: * lib/csv.rb: add Cell#to_str and Cell#to_s for /.../ =~ aCell, "#{aCell}" and so on. * test/csv/test_csv.rb: add tests. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5177 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 7 +++++++ lib/csv.rb | 14 ++++++++++++++ test/csv/test_csv.rb | 26 +++++++++++++++++++++++++- 3 files changed, 46 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index 8c688e962f..5f88df10ea 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +Fri Dec 12 22:36:44 2003 NAKAMURA, Hiroshi + + * lib/csv.rb: add Cell#to_str and Cell#to_s for /.../ =~ aCell, + "#{aCell}" and so on. + + * test/csv/test_csv.rb: add tests. + Fri Dec 12 19:33:06 2003 Minero Aoki * lib/fileutils.rb (mkdir): remove trailing `/' from pathes. diff --git a/lib/csv.rb b/lib/csv.rb index 10c86f6417..cfc5489ea0 100644 --- a/lib/csv.rb +++ b/lib/csv.rb @@ -85,6 +85,20 @@ public @data == rhs.data end end + + def to_str + content.to_str + end + + def to_s + content.to_s + end + + private + + def content + @is_null ? nil : data + end end diff --git a/test/csv/test_csv.rb b/test/csv/test_csv.rb index 782f5af8d4..6cc4c5cac7 100644 --- a/test/csv/test_csv.rb +++ b/test/csv/test_csv.rb @@ -1,4 +1,5 @@ -require 'test/unit' +require 'test/unit/testsuite' +require 'test/unit/testcase' require 'tempfile' require 'fileutils' @@ -92,6 +93,29 @@ class TestCSVCell < Test::Unit::TestCase d3 = CSV::Cell.new(nil, false) assert_equal(d3.is_null, false, "Data: false.") end + + def test_to_str + d = CSV::Cell.new("foo", false) + assert_equal("foo", d.to_str) + assert(/foo/ =~ d) + d = CSV::Cell.new("foo", true) + begin + d.to_str + assert(false) + rescue + # NoMethodError or NameError + assert(true) + end + end + + def test_to_s + d = CSV::Cell.new("foo", false) + assert_equal("foo", d.to_s) + assert_equal("foo", "#{d}") + d = CSV::Cell.new("foo", true) + assert_equal("", d.to_s) + assert_equal("", "#{d}") + end end -- cgit v1.2.3