test/func.rb in ox-1.5.1 vs test/func.rb in ox-1.5.2
- old
+ new
@@ -4,10 +4,11 @@
$: << File.join(File.dirname(__FILE__), "../lib")
$: << File.join(File.dirname(__FILE__), "../ext")
require 'test/unit'
require 'optparse'
+require 'date'
require 'ox'
$indent = 2
opts = OptionParser.new
@@ -105,10 +106,14 @@
def test_time
dump_and_load(Time.now, false)
end
+ def test_date
+ dump_and_load(Date.new(2011, 1, 5), false)
+ end
+
def test_array
dump_and_load([], false)
dump_and_load([1, 'a'], false)
end
@@ -260,12 +265,32 @@
assert(true)
else
e = StandardError.new("Some Error")
e.set_backtrace(["./func.rb:119: in test_exception",
"./fake.rb:57: in fake_func"])
+ dump_and_load(e, false)
end
- dump_and_load(e, false)
end
+
+ def test_exception_bag
+ if RUBY_VERSION.start_with?('1.8')
+ assert(true)
+ else
+ xml = %{
+<e c="FakeError">
+ <s a="mesg">Some Error</s>
+ <a a="bt">
+ <s>./func.rb:119: in test_exception</s>
+ <s>./fake.rb:57: in fake_func</s>
+ </a>
+</e>
+}
+ x = Ox.load(xml, :mode => :object, :effort => :auto_define)
+ assert_equal('Some Error', x.message())
+ assert(x.is_a?(Exception))
+ end
+ end
+
def test_struct
s = Struct.new('Box', :x, :y, :w, :h)
dump_and_load(s.new(2, 4, 10, 20), false)
end