jmongo 1.1.1 → 1.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/Rakefile +14 -1
- data/jmongo.gemspec +2 -2
- data/lib/jmongo/collection.rb +32 -50
- data/lib/jmongo/connection.rb +24 -9
- data/lib/jmongo/db.rb +42 -32
- data/lib/jmongo/mongo/bson.rb +26 -2
- data/lib/jmongo/mongo/collection.rb +24 -16
- data/lib/jmongo/mongo/connection.rb +3 -2
- data/lib/jmongo/mongo/db.rb +13 -13
- data/lib/jmongo/mongo/jmongo.rb +21 -1
- data/lib/jmongo/mongo/ruby_ext.rb +6 -0
- data/lib/jmongo/mongo/utils.rb +48 -0
- data/lib/jmongo/version.rb +1 -1
- data/test/collection_test.rb +273 -288
- data/test/cursor_test.rb +130 -144
- data/test/db_api_test.rb +267 -284
- data/test/test_helper.rb +43 -14
- metadata +26 -29
data/test/test_helper.rb
CHANGED
@@ -51,20 +51,26 @@ unless defined? TEST_HOST
|
|
51
51
|
TEST_HOST = ENV['MONGO_RUBY_DRIVER_HOST'] || 'localhost'
|
52
52
|
end
|
53
53
|
|
54
|
-
|
55
|
-
|
56
|
-
|
54
|
+
unless defined? TEST_URI
|
55
|
+
TEST_URI = "mongodb://localhost"
|
56
|
+
end
|
57
|
+
|
58
|
+
module Cfg
|
59
|
+
def self.connection(options={})
|
60
|
+
#@con ||= Mongo::Connection.from_uri(TEST_URI)
|
61
|
+
@con ||= Mongo::Connection.new(TEST_HOST, TEST_PORT)
|
62
|
+
end
|
57
63
|
|
58
|
-
def self.
|
59
|
-
|
64
|
+
def self.conn
|
65
|
+
connection
|
60
66
|
end
|
61
67
|
|
62
|
-
def
|
63
|
-
|
68
|
+
def self.new_connection(options={})
|
69
|
+
Mongo::Connection.from_uri(TEST_URI, options)
|
64
70
|
end
|
65
71
|
|
66
72
|
def self.host_port
|
67
|
-
"#{
|
73
|
+
"#{TEST_HOST}:#{TEST_PORT}"
|
68
74
|
end
|
69
75
|
|
70
76
|
def self.mongo_host
|
@@ -75,18 +81,37 @@ class MiniTest::Unit::TestCase
|
|
75
81
|
TEST_PORT
|
76
82
|
end
|
77
83
|
|
78
|
-
def
|
79
|
-
|
84
|
+
def self.db
|
85
|
+
@db ||= @con.db(MONGO_TEST_DB)
|
86
|
+
end
|
87
|
+
|
88
|
+
def self.version
|
89
|
+
@con.server_version
|
90
|
+
end
|
91
|
+
|
92
|
+
def self.clear_all
|
93
|
+
@db.collection_names.each do |n|
|
94
|
+
@db.drop_collection(n) unless n =~ /system/
|
95
|
+
end
|
80
96
|
end
|
81
97
|
|
82
|
-
def
|
83
|
-
|
98
|
+
def self.test
|
99
|
+
@db.collection("test")
|
84
100
|
end
|
85
101
|
|
86
|
-
def
|
87
|
-
|
102
|
+
def self.coll
|
103
|
+
test
|
88
104
|
end
|
89
105
|
|
106
|
+
def self.coll_full_name
|
107
|
+
"#{MONGO_TEST_DB}.test"
|
108
|
+
end
|
109
|
+
end
|
110
|
+
|
111
|
+
class MiniTest::Unit::TestCase
|
112
|
+
include Mongo
|
113
|
+
include BSON
|
114
|
+
|
90
115
|
def new_mock_socket(host='localhost', port=27017)
|
91
116
|
socket = Object.new
|
92
117
|
socket.stubs(:setsockopt).with(Socket::IPPROTO_TCP, Socket::TCP_NODELAY, 1)
|
@@ -98,6 +123,10 @@ class MiniTest::Unit::TestCase
|
|
98
123
|
db = Object.new
|
99
124
|
end
|
100
125
|
|
126
|
+
def assert_not_nil arg, msg = ""
|
127
|
+
refute_nil arg, msg
|
128
|
+
end
|
129
|
+
|
101
130
|
def assert_raise_error(klass, message)
|
102
131
|
begin
|
103
132
|
yield
|
metadata
CHANGED
@@ -1,63 +1,62 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: jmongo
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
|
5
|
-
|
4
|
+
version: 1.1.2
|
5
|
+
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
8
|
- Chuck Remes
|
9
9
|
- Guy Boertje
|
10
10
|
- Lee Henson
|
11
|
-
autorequire:
|
11
|
+
autorequire:
|
12
12
|
bindir: bin
|
13
13
|
cert_chain: []
|
14
|
-
date: 2011-10-
|
15
|
-
default_executable:
|
14
|
+
date: 2011-10-10 00:00:00.000000000 Z
|
16
15
|
dependencies:
|
17
16
|
- !ruby/object:Gem::Dependency
|
18
17
|
name: require_all
|
19
|
-
|
18
|
+
requirement: &10546520 !ruby/object:Gem::Requirement
|
19
|
+
none: false
|
20
20
|
requirements:
|
21
21
|
- - ~>
|
22
22
|
- !ruby/object:Gem::Version
|
23
23
|
version: '1.2'
|
24
|
-
none: false
|
25
|
-
requirement: *2202
|
26
|
-
prerelease: false
|
27
24
|
type: :runtime
|
25
|
+
prerelease: false
|
26
|
+
version_requirements: *10546520
|
28
27
|
- !ruby/object:Gem::Dependency
|
29
28
|
name: awesome_print
|
30
|
-
|
29
|
+
requirement: &10546040 !ruby/object:Gem::Requirement
|
30
|
+
none: false
|
31
31
|
requirements:
|
32
32
|
- - ~>
|
33
33
|
- !ruby/object:Gem::Version
|
34
34
|
version: '0.4'
|
35
|
-
none: false
|
36
|
-
requirement: *2220
|
37
|
-
prerelease: false
|
38
35
|
type: :development
|
36
|
+
prerelease: false
|
37
|
+
version_requirements: *10546040
|
39
38
|
- !ruby/object:Gem::Dependency
|
40
39
|
name: fuubar
|
41
|
-
|
40
|
+
requirement: &10545480 !ruby/object:Gem::Requirement
|
41
|
+
none: false
|
42
42
|
requirements:
|
43
43
|
- - ~>
|
44
44
|
- !ruby/object:Gem::Version
|
45
45
|
version: '0.0'
|
46
|
-
none: false
|
47
|
-
requirement: *2238
|
48
|
-
prerelease: false
|
49
46
|
type: :development
|
47
|
+
prerelease: false
|
48
|
+
version_requirements: *10545480
|
50
49
|
- !ruby/object:Gem::Dependency
|
51
50
|
name: rspec
|
52
|
-
|
51
|
+
requirement: &10544920 !ruby/object:Gem::Requirement
|
52
|
+
none: false
|
53
53
|
requirements:
|
54
54
|
- - ~>
|
55
55
|
- !ruby/object:Gem::Version
|
56
56
|
version: '2.6'
|
57
|
-
none: false
|
58
|
-
requirement: *2254
|
59
|
-
prerelease: false
|
60
57
|
type: :development
|
58
|
+
prerelease: false
|
59
|
+
version_requirements: *10544920
|
61
60
|
description: Thin jruby wrapper around Mongo Java Driver
|
62
61
|
email:
|
63
62
|
- cremes@mac.com
|
@@ -164,30 +163,28 @@ files:
|
|
164
163
|
- test/unit/read_test.rb
|
165
164
|
- test/unit/safe_test.rb
|
166
165
|
- test/uri_test.rb
|
167
|
-
has_rdoc: true
|
168
166
|
homepage: http://github.com/guyboertje/jmongo
|
169
167
|
licenses: []
|
170
|
-
post_install_message:
|
168
|
+
post_install_message:
|
171
169
|
rdoc_options: []
|
172
170
|
require_paths:
|
173
171
|
- lib
|
174
172
|
required_ruby_version: !ruby/object:Gem::Requirement
|
173
|
+
none: false
|
175
174
|
requirements:
|
176
175
|
- - ! '>='
|
177
176
|
- !ruby/object:Gem::Version
|
178
177
|
version: '0'
|
179
|
-
none: false
|
180
178
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
179
|
+
none: false
|
181
180
|
requirements:
|
182
181
|
- - ! '>='
|
183
182
|
- !ruby/object:Gem::Version
|
184
183
|
version: '0'
|
185
|
-
none: false
|
186
184
|
requirements: []
|
187
|
-
rubyforge_project:
|
188
|
-
rubygems_version: 1.
|
189
|
-
signing_key:
|
185
|
+
rubyforge_project:
|
186
|
+
rubygems_version: 1.8.6
|
187
|
+
signing_key:
|
190
188
|
specification_version: 3
|
191
189
|
summary: Thin ruby wrapper around Mongo Java Driver; for JRuby only
|
192
190
|
test_files: []
|
193
|
-
...
|