better object id representation for inspect
This commit is contained in:
parent
60ffbb2706
commit
653d156a8a
|
@ -22,6 +22,10 @@ require 'digest/md5'
|
|||
|
||||
module BSON
|
||||
|
||||
def BSON::ObjectID(s)
|
||||
ObjectID.from_string(s)
|
||||
end
|
||||
|
||||
# Generates MongoDB object ids.
|
||||
#
|
||||
# @core objectids
|
||||
|
@ -129,11 +133,11 @@ module BSON
|
|||
end
|
||||
|
||||
def inspect
|
||||
{"$oid" => to_s}
|
||||
"BSON::ObjectID('#{to_s}')"
|
||||
end
|
||||
|
||||
# Convert to MongoDB extended JSON format. Since JSON includes type information,
|
||||
# but lacks an ObjectID type, this JSON format encodes the type using an $id key.
|
||||
# but lacks an ObjectID type, this JSON format encodes the type using an $oid key.
|
||||
#
|
||||
# @return [String] the object id represented as MongoDB extended JSON.
|
||||
def to_json(escaped=false)
|
||||
|
|
|
@ -1,4 +1,6 @@
|
|||
require 'test/test_helper'
|
||||
require 'rubygems'
|
||||
require 'json'
|
||||
|
||||
class ObjectIDTest < Test::Unit::TestCase
|
||||
|
||||
|
@ -49,9 +51,12 @@ class ObjectIDTest < Test::Unit::TestCase
|
|||
assert_equal 24, $1.length
|
||||
end
|
||||
|
||||
def test_method
|
||||
assert_equal ObjectID.from_string(@o.to_s), BSON::ObjectID(@o.to_s)
|
||||
end
|
||||
|
||||
def test_inspect
|
||||
obj = {'$oid' => @o.to_s}
|
||||
assert_equal obj, @o.inspect
|
||||
assert_equal "BSON::ObjectID('#{@o.to_s}')", @o.inspect
|
||||
end
|
||||
|
||||
def test_save_and_restore
|
||||
|
|
Loading…
Reference in New Issue