mongodb-mongo 0.12 → 0.13

Sign up to get free protection for your applications and to get access to all the features.
Files changed (81) hide show
  1. data/README.rdoc +12 -12
  2. data/Rakefile +1 -1
  3. data/bin/bson_benchmark.rb +1 -1
  4. data/bin/mongo_console +3 -3
  5. data/bin/run_test_script +2 -2
  6. data/bin/standard_benchmark +3 -3
  7. data/examples/admin.rb +3 -3
  8. data/examples/benchmarks.rb +2 -2
  9. data/examples/blog.rb +4 -4
  10. data/examples/capped.rb +3 -3
  11. data/examples/cursor.rb +3 -3
  12. data/examples/gridfs.rb +4 -4
  13. data/examples/index_test.rb +11 -11
  14. data/examples/info.rb +3 -3
  15. data/examples/queries.rb +3 -3
  16. data/examples/simple.rb +3 -3
  17. data/examples/strict.rb +3 -3
  18. data/examples/types.rb +4 -9
  19. data/lib/mongo.rb +35 -3
  20. data/lib/mongo/admin.rb +56 -60
  21. data/lib/mongo/collection.rb +368 -320
  22. data/lib/mongo/connection.rb +166 -0
  23. data/lib/mongo/cursor.rb +206 -209
  24. data/lib/mongo/db.rb +478 -489
  25. data/lib/mongo/errors.rb +8 -9
  26. data/lib/mongo/gridfs/chunk.rb +66 -70
  27. data/lib/mongo/gridfs/grid_store.rb +406 -410
  28. data/lib/mongo/message/get_more_message.rb +8 -13
  29. data/lib/mongo/message/insert_message.rb +7 -11
  30. data/lib/mongo/message/kill_cursors_message.rb +7 -12
  31. data/lib/mongo/message/message.rb +58 -62
  32. data/lib/mongo/message/message_header.rb +19 -24
  33. data/lib/mongo/message/msg_message.rb +5 -9
  34. data/lib/mongo/message/opcodes.rb +10 -15
  35. data/lib/mongo/message/query_message.rb +42 -46
  36. data/lib/mongo/message/remove_message.rb +8 -12
  37. data/lib/mongo/message/update_message.rb +9 -13
  38. data/lib/mongo/query.rb +84 -88
  39. data/lib/mongo/types/binary.rb +13 -17
  40. data/lib/mongo/types/code.rb +9 -13
  41. data/lib/mongo/types/dbref.rb +10 -14
  42. data/lib/mongo/types/objectid.rb +103 -107
  43. data/lib/mongo/types/regexp_of_holding.rb +18 -22
  44. data/lib/mongo/types/undefined.rb +7 -10
  45. data/lib/mongo/util/bson.rb +4 -9
  46. data/lib/mongo/util/xml_to_ruby.rb +1 -3
  47. data/mongo-ruby-driver.gemspec +33 -32
  48. data/{tests → test}/mongo-qa/_common.rb +1 -1
  49. data/{tests → test}/mongo-qa/admin +1 -1
  50. data/{tests → test}/mongo-qa/capped +1 -1
  51. data/{tests → test}/mongo-qa/count1 +4 -4
  52. data/{tests → test}/mongo-qa/dbs +1 -1
  53. data/{tests → test}/mongo-qa/find +1 -1
  54. data/{tests → test}/mongo-qa/find1 +1 -1
  55. data/{tests → test}/mongo-qa/gridfs_in +2 -2
  56. data/{tests → test}/mongo-qa/gridfs_out +2 -2
  57. data/{tests → test}/mongo-qa/indices +2 -2
  58. data/{tests → test}/mongo-qa/remove +1 -1
  59. data/{tests → test}/mongo-qa/stress1 +1 -1
  60. data/{tests → test}/mongo-qa/test1 +1 -1
  61. data/{tests → test}/mongo-qa/update +1 -1
  62. data/{tests → test}/test_admin.rb +3 -3
  63. data/{tests → test}/test_bson.rb +4 -4
  64. data/{tests → test}/test_byte_buffer.rb +0 -0
  65. data/{tests → test}/test_chunk.rb +4 -4
  66. data/{tests → test}/test_collection.rb +42 -4
  67. data/{tests/test_mongo.rb → test/test_connection.rb} +35 -11
  68. data/test/test_cursor.rb +223 -0
  69. data/{tests → test}/test_db.rb +12 -12
  70. data/{tests → test}/test_db_api.rb +28 -33
  71. data/{tests → test}/test_db_connection.rb +3 -3
  72. data/{tests → test}/test_grid_store.rb +4 -4
  73. data/{tests → test}/test_message.rb +1 -1
  74. data/{tests → test}/test_objectid.rb +3 -3
  75. data/{tests → test}/test_ordered_hash.rb +0 -0
  76. data/{tests → test}/test_round_trip.rb +6 -2
  77. data/{tests → test}/test_threading.rb +3 -3
  78. data/test/test_xgen.rb +73 -0
  79. metadata +33 -32
  80. data/lib/mongo/mongo.rb +0 -164
  81. data/tests/test_cursor.rb +0 -121
data/tests/test_cursor.rb DELETED
@@ -1,121 +0,0 @@
1
- $LOAD_PATH[0,0] = File.join(File.dirname(__FILE__), '..', 'lib')
2
- require 'mongo'
3
- require 'test/unit'
4
-
5
- # NOTE: assumes Mongo is running
6
- class CursorTest < Test::Unit::TestCase
7
-
8
- include XGen::Mongo::Driver
9
-
10
- @@db = Mongo.new(ENV['MONGO_RUBY_DRIVER_HOST'] || 'localhost',
11
- ENV['MONGO_RUBY_DRIVER_PORT'] || Mongo::DEFAULT_PORT).db('ruby-mongo-test')
12
- @@coll = @@db.collection('test')
13
-
14
- def setup
15
- @@coll.clear
16
- @@coll.insert('a' => 1) # collection not created until it's used
17
- @@coll_full_name = 'ruby-mongo-test.test'
18
- end
19
-
20
- def teardown
21
- @@coll.clear
22
- @@db.error
23
- end
24
-
25
- def test_explain
26
- cursor = @@coll.find('a' => 1)
27
- explaination = cursor.explain
28
- assert_not_nil explaination['cursor']
29
- assert_kind_of Numeric, explaination['n']
30
- assert_kind_of Numeric, explaination['millis']
31
- assert_kind_of Numeric, explaination['nscanned']
32
- end
33
-
34
- def test_close_no_query_sent
35
- begin
36
- cursor = @@coll.find('a' => 1)
37
- cursor.close
38
- assert cursor.closed?
39
- rescue => ex
40
- fail ex.to_s
41
- end
42
- end
43
-
44
- def test_refill_via_get_more
45
- begin
46
- assert_equal 1, @@coll.count
47
- 1000.times { |i|
48
- assert_equal 1 + i, @@coll.count
49
- @@coll.insert('a' => i)
50
- }
51
-
52
- assert_equal 1001, @@coll.count
53
- count = 0
54
- @@coll.find.each { |obj|
55
- count += obj['a']
56
- }
57
- assert_equal 1001, @@coll.count
58
-
59
- # do the same thing again for debugging
60
- assert_equal 1001, @@coll.count
61
- count2 = 0
62
- @@coll.find.each { |obj|
63
- count2 += obj['a']
64
- }
65
- assert_equal 1001, @@coll.count
66
-
67
- assert_equal count, count2
68
- assert_equal 499501, count
69
- rescue Test::Unit::AssertionFailedError => ex
70
- p @@db.collection_names
71
- Process.exit 1
72
- end
73
- end
74
-
75
- def test_refill_via_get_more_alt_coll
76
- begin
77
- coll = @@db.collection('test-alt-coll')
78
- coll.clear
79
- coll.insert('a' => 1) # collection not created until it's used
80
- assert_equal 1, coll.count
81
-
82
- 1000.times { |i|
83
- assert_equal 1 + i, coll.count
84
- coll.insert('a' => i)
85
- }
86
-
87
- assert_equal 1001, coll.count
88
- count = 0
89
- coll.find.each { |obj|
90
- count += obj['a']
91
- }
92
- assert_equal 1001, coll.count
93
-
94
- # do the same thing again for debugging
95
- assert_equal 1001, coll.count
96
- count2 = 0
97
- coll.find.each { |obj|
98
- count2 += obj['a']
99
- }
100
- assert_equal 1001, coll.count
101
-
102
- assert_equal count, count2
103
- assert_equal 499501, count
104
- rescue Test::Unit::AssertionFailedError => ex
105
- p @@db.collection_names
106
- Process.exit 1
107
- end
108
- end
109
-
110
- def test_close_after_query_sent
111
- begin
112
- cursor = @@coll.find('a' => 1)
113
- cursor.next_object
114
- cursor.close
115
- assert cursor.closed?
116
- rescue => ex
117
- fail ex.to_s
118
- end
119
- end
120
-
121
- end