mongo 2.0.0.rc → 2.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +0 -0
- data.tar.gz.sig +2 -1
- data/README.md +1 -4
- data/lib/mongo/client.rb +1 -1
- data/lib/mongo/collection.rb +1 -1
- data/lib/mongo/collection/view.rb +1 -1
- data/lib/mongo/collection/view/writable.rb +26 -10
- data/lib/mongo/database.rb +1 -1
- data/lib/mongo/grid/file.rb +12 -0
- data/lib/mongo/grid/file/chunk.rb +1 -1
- data/lib/mongo/grid/file/metadata.rb +13 -0
- data/lib/mongo/operation/aggregate.rb +1 -1
- data/lib/mongo/operation/write.rb +1 -5
- data/lib/mongo/operation/write/bulk.rb +17 -0
- data/lib/mongo/operation/write/{bulk_delete.rb → bulk/bulk_delete.rb} +1 -1
- data/lib/mongo/operation/{bulk_delete → write/bulk/bulk_delete}/result.rb +3 -0
- data/lib/mongo/operation/write/{bulk_insert.rb → bulk/bulk_insert.rb} +1 -1
- data/lib/mongo/operation/{bulk_insert → write/bulk/bulk_insert}/result.rb +3 -0
- data/lib/mongo/operation/write/{bulk_mergable.rb → bulk/bulk_mergable.rb} +0 -0
- data/lib/mongo/operation/write/{bulk_update.rb → bulk/bulk_update.rb} +1 -1
- data/lib/mongo/operation/{bulk_update → write/bulk/bulk_update}/result.rb +8 -1
- data/lib/mongo/operation/write/{legacy_bulk_mergable.rb → bulk/legacy_bulk_mergable.rb} +0 -0
- data/lib/mongo/operation/write/delete.rb +2 -0
- data/lib/mongo/operation/write/delete/result.rb +40 -0
- data/lib/mongo/operation/write/insert.rb +2 -0
- data/lib/mongo/operation/write/insert/result.rb +32 -0
- data/lib/mongo/operation/write/update.rb +9 -4
- data/lib/mongo/operation/write/update/result.rb +160 -0
- data/lib/mongo/server/connectable.rb +11 -0
- data/lib/mongo/server/connection.rb +1 -0
- data/lib/mongo/server/connection_pool.rb +1 -1
- data/lib/mongo/server/connection_pool/queue.rb +1 -1
- data/lib/mongo/server/monitor.rb +16 -0
- data/lib/mongo/server/monitor/connection.rb +1 -0
- data/lib/mongo/socket/ssl.rb +30 -8
- data/lib/mongo/version.rb +1 -1
- data/lib/mongo/write_concern/acknowledged.rb +1 -1
- data/lib/mongo/write_concern/unacknowledged.rb +1 -1
- data/spec/certificates/ca.pem +17 -0
- data/spec/certificates/client.pem +101 -0
- data/spec/certificates/crl.pem +10 -0
- data/spec/certificates/crl_client_revoked.pem +12 -0
- data/spec/certificates/password_protected.pem +51 -0
- data/spec/certificates/server.pem +34 -0
- data/spec/mongo/collection/view/writable_spec.rb +175 -0
- data/spec/mongo/crud_spec.rb +42 -0
- data/spec/mongo/grid/file/metadata_spec.rb +23 -0
- data/spec/mongo/grid/file_spec.rb +34 -0
- data/spec/mongo/operation/write/delete_spec.rb +8 -0
- data/spec/mongo/operation/write/insert_spec.rb +21 -8
- data/spec/mongo/operation/write/update_spec.rb +52 -1
- data/spec/mongo/server/connection_spec.rb +33 -10
- data/spec/mongo/server/monitor_spec.rb +14 -0
- data/spec/spec_helper.rb +2 -17
- data/spec/support/crud.rb +203 -0
- data/spec/support/crud/read.rb +144 -0
- data/spec/support/crud/write.rb +214 -0
- data/spec/support/crud_tests/read/aggregate.yml +43 -0
- data/spec/support/crud_tests/read/count.yml +37 -0
- data/spec/support/crud_tests/read/distinct.yml +33 -0
- data/spec/support/crud_tests/read/find.yml +50 -0
- data/spec/support/crud_tests/write/deleteMany.yml +36 -0
- data/spec/support/crud_tests/write/deleteOne.yml +49 -0
- data/spec/support/crud_tests/write/findOneAndDelete.yml +54 -0
- data/spec/support/crud_tests/write/findOneAndReplace.yml +153 -0
- data/spec/support/crud_tests/write/findOneAndUpdate.yml +161 -0
- data/spec/support/crud_tests/write/insertMany.yml +24 -0
- data/spec/support/crud_tests/write/insertOne.yml +19 -0
- data/spec/support/crud_tests/write/replaceOne.yml +96 -0
- data/spec/support/crud_tests/write/updateMany.yml +83 -0
- data/spec/support/crud_tests/write/updateOne.yml +80 -0
- metadata +64 -20
- metadata.gz.sig +0 -0
- data/spec/mongo_orchestration_spec.rb +0 -70
- data/spec/support/mongo_orchestration.rb +0 -61
- data/spec/support/mongo_orchestration/requestable.rb +0 -109
- data/spec/support/mongo_orchestration/standalone.rb +0 -57
@@ -0,0 +1,83 @@
|
|
1
|
+
data:
|
2
|
+
- {_id: 1, x: 11}
|
3
|
+
- {_id: 2, x: 22}
|
4
|
+
- {_id: 3, x: 33}
|
5
|
+
|
6
|
+
tests:
|
7
|
+
-
|
8
|
+
description: "UpdateMany when many documents match"
|
9
|
+
operation:
|
10
|
+
name: "updateMany"
|
11
|
+
arguments:
|
12
|
+
filter:
|
13
|
+
_id: {$gt: 1}
|
14
|
+
update:
|
15
|
+
$inc: {x: 1}
|
16
|
+
|
17
|
+
outcome:
|
18
|
+
result:
|
19
|
+
matchedCount: 2
|
20
|
+
modifiedCount: 2
|
21
|
+
collection:
|
22
|
+
data:
|
23
|
+
- {_id: 1, x: 11}
|
24
|
+
- {_id: 2, x: 23}
|
25
|
+
- {_id: 3, x: 34}
|
26
|
+
-
|
27
|
+
description: "UpdateMany when one document matches"
|
28
|
+
operation:
|
29
|
+
name: "updateMany"
|
30
|
+
arguments:
|
31
|
+
filter: {_id: 1}
|
32
|
+
update:
|
33
|
+
$inc: {x: 1}
|
34
|
+
|
35
|
+
outcome:
|
36
|
+
result:
|
37
|
+
matchedCount: 1
|
38
|
+
modifiedCount: 1
|
39
|
+
collection:
|
40
|
+
data:
|
41
|
+
- {_id: 1, x: 12}
|
42
|
+
- {_id: 2, x: 22}
|
43
|
+
- {_id: 3, x: 33}
|
44
|
+
-
|
45
|
+
description: "UpdateMany when no documents match"
|
46
|
+
operation:
|
47
|
+
name: "updateMany"
|
48
|
+
arguments:
|
49
|
+
filter: {_id: 4}
|
50
|
+
update:
|
51
|
+
$inc: {x: 1}
|
52
|
+
|
53
|
+
outcome:
|
54
|
+
result:
|
55
|
+
matchedCount: 0
|
56
|
+
modifiedCount: 0
|
57
|
+
collection:
|
58
|
+
data:
|
59
|
+
- {_id: 1, x: 11}
|
60
|
+
- {_id: 2, x: 22}
|
61
|
+
- {_id: 3, x: 33}
|
62
|
+
-
|
63
|
+
description: "UpdateMany with upsert when no documents match"
|
64
|
+
operation:
|
65
|
+
name: "updateMany"
|
66
|
+
arguments:
|
67
|
+
filter: {_id: 4}
|
68
|
+
update:
|
69
|
+
$inc: {x: 1}
|
70
|
+
upsert: true
|
71
|
+
|
72
|
+
outcome:
|
73
|
+
result:
|
74
|
+
matchedCount: 0
|
75
|
+
modifiedCount: 0
|
76
|
+
upsertedId: 4
|
77
|
+
collection:
|
78
|
+
data:
|
79
|
+
- {_id: 1, x: 11}
|
80
|
+
- {_id: 2, x: 22}
|
81
|
+
- {_id: 3, x: 33}
|
82
|
+
- {_id: 4, x: 1}
|
83
|
+
|
@@ -0,0 +1,80 @@
|
|
1
|
+
data:
|
2
|
+
- {_id: 1, x: 11}
|
3
|
+
- {_id: 2, x: 22}
|
4
|
+
- {_id: 3, x: 33}
|
5
|
+
|
6
|
+
tests:
|
7
|
+
-
|
8
|
+
description: "UpdateOne when many documents match"
|
9
|
+
operation:
|
10
|
+
name: "updateOne"
|
11
|
+
arguments:
|
12
|
+
filter:
|
13
|
+
_id: {$gt: 1}
|
14
|
+
update:
|
15
|
+
$inc: {x: 1}
|
16
|
+
|
17
|
+
outcome:
|
18
|
+
result:
|
19
|
+
matchedCount: 1
|
20
|
+
modifiedCount: 1
|
21
|
+
# can't verify collection because we don't have a way
|
22
|
+
# of knowing which document gets updated.
|
23
|
+
-
|
24
|
+
description: "UpdateOne when one document matches"
|
25
|
+
operation:
|
26
|
+
name: "updateOne"
|
27
|
+
arguments:
|
28
|
+
filter: {_id: 1}
|
29
|
+
update:
|
30
|
+
$inc: {x: 1}
|
31
|
+
|
32
|
+
outcome:
|
33
|
+
result:
|
34
|
+
matchedCount: 1
|
35
|
+
modifiedCount: 1
|
36
|
+
collection:
|
37
|
+
data:
|
38
|
+
- {_id: 1, x: 12}
|
39
|
+
- {_id: 2, x: 22}
|
40
|
+
- {_id: 3, x: 33}
|
41
|
+
-
|
42
|
+
description: "UpdateOne when no documents match"
|
43
|
+
operation:
|
44
|
+
name: "updateOne"
|
45
|
+
arguments:
|
46
|
+
filter: {_id: 4}
|
47
|
+
update:
|
48
|
+
$inc: {x: 1}
|
49
|
+
|
50
|
+
outcome:
|
51
|
+
result:
|
52
|
+
matchedCount: 0
|
53
|
+
modifiedCount: 0
|
54
|
+
collection:
|
55
|
+
data:
|
56
|
+
- {_id: 1, x: 11}
|
57
|
+
- {_id: 2, x: 22}
|
58
|
+
- {_id: 3, x: 33}
|
59
|
+
-
|
60
|
+
description: "UpdateOne with upsert when no documents match"
|
61
|
+
operation:
|
62
|
+
name: "updateOne"
|
63
|
+
arguments:
|
64
|
+
filter: {_id: 4}
|
65
|
+
update:
|
66
|
+
$inc: {x: 1}
|
67
|
+
upsert: true
|
68
|
+
|
69
|
+
outcome:
|
70
|
+
result:
|
71
|
+
matchedCount: 0
|
72
|
+
modifiedCount: 0
|
73
|
+
upsertedId: 4
|
74
|
+
collection:
|
75
|
+
data:
|
76
|
+
- {_id: 1, x: 11}
|
77
|
+
- {_id: 2, x: 22}
|
78
|
+
- {_id: 3, x: 33}
|
79
|
+
- {_id: 4, x: 1}
|
80
|
+
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: mongo
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.0.0
|
4
|
+
version: 2.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Tyler Brock
|
@@ -32,7 +32,7 @@ cert_chain:
|
|
32
32
|
o2UXDbWtz5PqoFd8EgNJAn3+BG1pwC9S9pVFG3WPucfAx/bE8iq/vvchHei5Y/Vo
|
33
33
|
aAz5f/hY4zFeYWvGDBHYEXE1rTN2hhMSyJscPcFbmz0=
|
34
34
|
-----END CERTIFICATE-----
|
35
|
-
date: 2015-03-
|
35
|
+
date: 2015-03-25 00:00:00.000000000 Z
|
36
36
|
dependencies:
|
37
37
|
- !ruby/object:Gem::Dependency
|
38
38
|
name: bson
|
@@ -144,9 +144,6 @@ files:
|
|
144
144
|
- lib/mongo/operation.rb
|
145
145
|
- lib/mongo/operation/aggregate.rb
|
146
146
|
- lib/mongo/operation/aggregate/result.rb
|
147
|
-
- lib/mongo/operation/bulk_delete/result.rb
|
148
|
-
- lib/mongo/operation/bulk_insert/result.rb
|
149
|
-
- lib/mongo/operation/bulk_update/result.rb
|
150
147
|
- lib/mongo/operation/command.rb
|
151
148
|
- lib/mongo/operation/executable.rb
|
152
149
|
- lib/mongo/operation/kill_cursors.rb
|
@@ -166,10 +163,15 @@ files:
|
|
166
163
|
- lib/mongo/operation/result.rb
|
167
164
|
- lib/mongo/operation/specifiable.rb
|
168
165
|
- lib/mongo/operation/write.rb
|
169
|
-
- lib/mongo/operation/write/
|
170
|
-
- lib/mongo/operation/write/
|
171
|
-
- lib/mongo/operation/write/
|
172
|
-
- lib/mongo/operation/write/
|
166
|
+
- lib/mongo/operation/write/bulk.rb
|
167
|
+
- lib/mongo/operation/write/bulk/bulk_delete.rb
|
168
|
+
- lib/mongo/operation/write/bulk/bulk_delete/result.rb
|
169
|
+
- lib/mongo/operation/write/bulk/bulk_insert.rb
|
170
|
+
- lib/mongo/operation/write/bulk/bulk_insert/result.rb
|
171
|
+
- lib/mongo/operation/write/bulk/bulk_mergable.rb
|
172
|
+
- lib/mongo/operation/write/bulk/bulk_update.rb
|
173
|
+
- lib/mongo/operation/write/bulk/bulk_update/result.rb
|
174
|
+
- lib/mongo/operation/write/bulk/legacy_bulk_mergable.rb
|
173
175
|
- lib/mongo/operation/write/command.rb
|
174
176
|
- lib/mongo/operation/write/command/create_index.rb
|
175
177
|
- lib/mongo/operation/write/command/create_user.rb
|
@@ -182,11 +184,13 @@ files:
|
|
182
184
|
- lib/mongo/operation/write/create_index.rb
|
183
185
|
- lib/mongo/operation/write/create_user.rb
|
184
186
|
- lib/mongo/operation/write/delete.rb
|
187
|
+
- lib/mongo/operation/write/delete/result.rb
|
185
188
|
- lib/mongo/operation/write/drop_index.rb
|
186
189
|
- lib/mongo/operation/write/insert.rb
|
187
|
-
- lib/mongo/operation/write/
|
190
|
+
- lib/mongo/operation/write/insert/result.rb
|
188
191
|
- lib/mongo/operation/write/remove_user.rb
|
189
192
|
- lib/mongo/operation/write/update.rb
|
193
|
+
- lib/mongo/operation/write/update/result.rb
|
190
194
|
- lib/mongo/options.rb
|
191
195
|
- lib/mongo/options/mapper.rb
|
192
196
|
- lib/mongo/protocol.rb
|
@@ -232,6 +236,12 @@ files:
|
|
232
236
|
- lib/mongo/write_concern/normalizable.rb
|
233
237
|
- lib/mongo/write_concern/unacknowledged.rb
|
234
238
|
- mongo.gemspec
|
239
|
+
- spec/certificates/ca.pem
|
240
|
+
- spec/certificates/client.pem
|
241
|
+
- spec/certificates/crl.pem
|
242
|
+
- spec/certificates/crl_client_revoked.pem
|
243
|
+
- spec/certificates/password_protected.pem
|
244
|
+
- spec/certificates/server.pem
|
235
245
|
- spec/mongo/address/ipv4_spec.rb
|
236
246
|
- spec/mongo/address/ipv6_spec.rb
|
237
247
|
- spec/mongo/address/unix_spec.rb
|
@@ -258,6 +268,7 @@ files:
|
|
258
268
|
- spec/mongo/collection/view/writable_spec.rb
|
259
269
|
- spec/mongo/collection/view_spec.rb
|
260
270
|
- spec/mongo/collection_spec.rb
|
271
|
+
- spec/mongo/crud_spec.rb
|
261
272
|
- spec/mongo/cursor_spec.rb
|
262
273
|
- spec/mongo/database_spec.rb
|
263
274
|
- spec/mongo/error/parser_spec.rb
|
@@ -325,14 +336,27 @@ files:
|
|
325
336
|
- spec/mongo/uri_spec.rb
|
326
337
|
- spec/mongo/write_concern/acknowledged_spec.rb
|
327
338
|
- spec/mongo/write_concern/unacknowledged_spec.rb
|
328
|
-
- spec/mongo_orchestration_spec.rb
|
329
339
|
- spec/spec_helper.rb
|
330
340
|
- spec/support/authorization.rb
|
341
|
+
- spec/support/crud.rb
|
342
|
+
- spec/support/crud/read.rb
|
343
|
+
- spec/support/crud/write.rb
|
344
|
+
- spec/support/crud_tests/read/aggregate.yml
|
345
|
+
- spec/support/crud_tests/read/count.yml
|
346
|
+
- spec/support/crud_tests/read/distinct.yml
|
347
|
+
- spec/support/crud_tests/read/find.yml
|
348
|
+
- spec/support/crud_tests/write/deleteMany.yml
|
349
|
+
- spec/support/crud_tests/write/deleteOne.yml
|
350
|
+
- spec/support/crud_tests/write/findOneAndDelete.yml
|
351
|
+
- spec/support/crud_tests/write/findOneAndReplace.yml
|
352
|
+
- spec/support/crud_tests/write/findOneAndUpdate.yml
|
353
|
+
- spec/support/crud_tests/write/insertMany.yml
|
354
|
+
- spec/support/crud_tests/write/insertOne.yml
|
355
|
+
- spec/support/crud_tests/write/replaceOne.yml
|
356
|
+
- spec/support/crud_tests/write/updateMany.yml
|
357
|
+
- spec/support/crud_tests/write/updateOne.yml
|
331
358
|
- spec/support/helpers.rb
|
332
359
|
- spec/support/matchers.rb
|
333
|
-
- spec/support/mongo_orchestration.rb
|
334
|
-
- spec/support/mongo_orchestration/requestable.rb
|
335
|
-
- spec/support/mongo_orchestration/standalone.rb
|
336
360
|
- spec/support/sdam/rs/discover_arbiters.yml
|
337
361
|
- spec/support/sdam/rs/discover_passives.yml
|
338
362
|
- spec/support/sdam/rs/discover_primary.yml
|
@@ -423,9 +447,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
423
447
|
version: '0'
|
424
448
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
425
449
|
requirements:
|
426
|
-
- - "
|
450
|
+
- - ">="
|
427
451
|
- !ruby/object:Gem::Version
|
428
|
-
version:
|
452
|
+
version: '0'
|
429
453
|
requirements: []
|
430
454
|
rubyforge_project: mongo
|
431
455
|
rubygems_version: 2.2.2
|
@@ -433,6 +457,12 @@ signing_key:
|
|
433
457
|
specification_version: 4
|
434
458
|
summary: Ruby driver for MongoDB
|
435
459
|
test_files:
|
460
|
+
- spec/certificates/ca.pem
|
461
|
+
- spec/certificates/client.pem
|
462
|
+
- spec/certificates/crl.pem
|
463
|
+
- spec/certificates/crl_client_revoked.pem
|
464
|
+
- spec/certificates/password_protected.pem
|
465
|
+
- spec/certificates/server.pem
|
436
466
|
- spec/mongo/address/ipv4_spec.rb
|
437
467
|
- spec/mongo/address/ipv6_spec.rb
|
438
468
|
- spec/mongo/address/unix_spec.rb
|
@@ -459,6 +489,7 @@ test_files:
|
|
459
489
|
- spec/mongo/collection/view/writable_spec.rb
|
460
490
|
- spec/mongo/collection/view_spec.rb
|
461
491
|
- spec/mongo/collection_spec.rb
|
492
|
+
- spec/mongo/crud_spec.rb
|
462
493
|
- spec/mongo/cursor_spec.rb
|
463
494
|
- spec/mongo/database_spec.rb
|
464
495
|
- spec/mongo/error/parser_spec.rb
|
@@ -526,14 +557,27 @@ test_files:
|
|
526
557
|
- spec/mongo/uri_spec.rb
|
527
558
|
- spec/mongo/write_concern/acknowledged_spec.rb
|
528
559
|
- spec/mongo/write_concern/unacknowledged_spec.rb
|
529
|
-
- spec/mongo_orchestration_spec.rb
|
530
560
|
- spec/spec_helper.rb
|
531
561
|
- spec/support/authorization.rb
|
562
|
+
- spec/support/crud/read.rb
|
563
|
+
- spec/support/crud/write.rb
|
564
|
+
- spec/support/crud.rb
|
565
|
+
- spec/support/crud_tests/read/aggregate.yml
|
566
|
+
- spec/support/crud_tests/read/count.yml
|
567
|
+
- spec/support/crud_tests/read/distinct.yml
|
568
|
+
- spec/support/crud_tests/read/find.yml
|
569
|
+
- spec/support/crud_tests/write/deleteMany.yml
|
570
|
+
- spec/support/crud_tests/write/deleteOne.yml
|
571
|
+
- spec/support/crud_tests/write/findOneAndDelete.yml
|
572
|
+
- spec/support/crud_tests/write/findOneAndReplace.yml
|
573
|
+
- spec/support/crud_tests/write/findOneAndUpdate.yml
|
574
|
+
- spec/support/crud_tests/write/insertMany.yml
|
575
|
+
- spec/support/crud_tests/write/insertOne.yml
|
576
|
+
- spec/support/crud_tests/write/replaceOne.yml
|
577
|
+
- spec/support/crud_tests/write/updateMany.yml
|
578
|
+
- spec/support/crud_tests/write/updateOne.yml
|
532
579
|
- spec/support/helpers.rb
|
533
580
|
- spec/support/matchers.rb
|
534
|
-
- spec/support/mongo_orchestration/requestable.rb
|
535
|
-
- spec/support/mongo_orchestration/standalone.rb
|
536
|
-
- spec/support/mongo_orchestration.rb
|
537
581
|
- spec/support/sdam/rs/discover_arbiters.yml
|
538
582
|
- spec/support/sdam/rs/discover_passives.yml
|
539
583
|
- spec/support/sdam/rs/discover_primary.yml
|
metadata.gz.sig
CHANGED
Binary file
|
@@ -1,70 +0,0 @@
|
|
1
|
-
require 'spec_helper'
|
2
|
-
|
3
|
-
#describe MongoOrchestration, if: mongo_orchestration_available? do
|
4
|
-
#
|
5
|
-
# context 'when creating a standalone' do
|
6
|
-
#
|
7
|
-
# context 'when the mongo orchestration service is available' do
|
8
|
-
#
|
9
|
-
# before do
|
10
|
-
# initialize_mo_standalone!
|
11
|
-
# end
|
12
|
-
#
|
13
|
-
# after do
|
14
|
-
# stop_mo_standalone!
|
15
|
-
# end
|
16
|
-
#
|
17
|
-
# it 'sets up a standalone object with an id' do
|
18
|
-
# expect(@standalone.id).to_not be_nil
|
19
|
-
# end
|
20
|
-
#
|
21
|
-
# it 'sets up a standalone object with a client' do
|
22
|
-
# expect(@standalone.client).to_not be_nil
|
23
|
-
# end
|
24
|
-
#
|
25
|
-
# it 'sets the correct cluster topology' do
|
26
|
-
# expect(@standalone.client.cluster.topology).to eq(Mongo::Cluster::Topology::Standalone)
|
27
|
-
# end
|
28
|
-
#
|
29
|
-
# it 'sets the path' do
|
30
|
-
# expect(@standalone.path).to eq(MongoOrchestration::DEFAULT_BASE_URI)
|
31
|
-
# end
|
32
|
-
# end
|
33
|
-
#
|
34
|
-
# context 'when the mongo orchestration service is not available' do
|
35
|
-
#
|
36
|
-
# it 'raises an error' do
|
37
|
-
# expect do
|
38
|
-
# initialize_mo_standalone!('http://localhost:1')
|
39
|
-
# end.to raise_exception(MongoOrchestration::ServiceNotAvailable)
|
40
|
-
# end
|
41
|
-
# end
|
42
|
-
# end
|
43
|
-
#
|
44
|
-
# context 'when stopping a standalone' do
|
45
|
-
#
|
46
|
-
# before do
|
47
|
-
# initialize_mo_standalone!
|
48
|
-
# stop_mo_standalone!
|
49
|
-
# end
|
50
|
-
#
|
51
|
-
# it 'stops the standalone' do
|
52
|
-
# expect(@standalone.alive?).to eq(false)
|
53
|
-
# end
|
54
|
-
# end
|
55
|
-
#
|
56
|
-
# context 'when making a direct request' do
|
57
|
-
#
|
58
|
-
# before do
|
59
|
-
# initialize_mo_standalone!
|
60
|
-
# end
|
61
|
-
#
|
62
|
-
# after do
|
63
|
-
# stop_mo_standalone!
|
64
|
-
# end
|
65
|
-
#
|
66
|
-
# it 'returns the response' do
|
67
|
-
# expect(@standalone.request('GET', 'servers').class).to be(HTTParty::Response)
|
68
|
-
# end
|
69
|
-
# end
|
70
|
-
#end
|
@@ -1,61 +0,0 @@
|
|
1
|
-
# Copyright (C) 2009-2014 MongoDB, Inc.
|
2
|
-
#
|
3
|
-
# Licensed under the Apache License, Version 2.0 (the "License");
|
4
|
-
# you may not use this file except in compliance with the License.
|
5
|
-
# You may obtain a copy of the License at
|
6
|
-
#
|
7
|
-
# http://www.apache.org/licenses/LICENSE-2.0
|
8
|
-
#
|
9
|
-
# Unless required by applicable law or agreed to in writing, software
|
10
|
-
# distributed under the License is distributed on an "AS IS" BASIS,
|
11
|
-
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
12
|
-
# See the License for the specific language governing permissions and
|
13
|
-
# limitations under the License.
|
14
|
-
|
15
|
-
require 'support/mongo_orchestration/requestable'
|
16
|
-
require 'support/mongo_orchestration/standalone'
|
17
|
-
|
18
|
-
module MongoOrchestration
|
19
|
-
|
20
|
-
extend self
|
21
|
-
|
22
|
-
TYPES = {
|
23
|
-
standalone: Standalone,
|
24
|
-
#replica_set: ReplicaSet,
|
25
|
-
#sharded_cluster: ShardedCluster
|
26
|
-
}
|
27
|
-
|
28
|
-
# The default base uri for mongo orchestration.
|
29
|
-
#
|
30
|
-
# @since 2.0.0
|
31
|
-
DEFAULT_BASE_URI = 'http://localhost:8889'.freeze
|
32
|
-
|
33
|
-
|
34
|
-
# Get a Mongo Orchestration resource.
|
35
|
-
#
|
36
|
-
# @example Get the Mongo Orchestration resource.
|
37
|
-
# MongoOrchestration.get(:standalone)
|
38
|
-
#
|
39
|
-
# @param [ Symbol ] type The type of resource.
|
40
|
-
# @param [ Hash ] options Options for creating the resource.
|
41
|
-
#
|
42
|
-
# @option options [ String ] :path The path to use for the
|
43
|
-
# Mongo Orchestration service.
|
44
|
-
#
|
45
|
-
# @return [ Standlone, ReplicaSet, ShardedCluster ] The resource.
|
46
|
-
#
|
47
|
-
# @since 2.0.0
|
48
|
-
def get(type, options = {})
|
49
|
-
TYPES[type].new(options)
|
50
|
-
end
|
51
|
-
|
52
|
-
# Raised when the Mongo Orchestration service is not available.
|
53
|
-
#
|
54
|
-
# @since 2.0.0
|
55
|
-
class ServiceNotAvailable < RuntimeError
|
56
|
-
|
57
|
-
def initialize
|
58
|
-
super("The Mongo Orchestration service is not available.")
|
59
|
-
end
|
60
|
-
end
|
61
|
-
end
|