monga 0.0.7 → 0.0.8

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.
@@ -98,6 +98,16 @@ module Monga
98
98
  run_cmd(cmd, blk)
99
99
  end
100
100
 
101
+ # Drop current database
102
+ #
103
+ # db.drop
104
+ #
105
+ def drop(&blk)
106
+ cmd = {}
107
+ cmd[:dropDatabase] = 1
108
+ run_cmd(cmd, blk)
109
+ end
110
+
101
111
  # Create collection.
102
112
  #
103
113
  # db.create_collection("myCollection"){ |err, resp| ... }
data/lib/monga.rb CHANGED
@@ -1,4 +1,4 @@
1
- gem "bson", "2.0.0.beta"
1
+ gem "bson", "2.0.0.rc1"
2
2
  require "bson"
3
3
  require "bin_utils"
4
4
  require "logger"
data/monga.gemspec CHANGED
@@ -4,7 +4,7 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
4
 
5
5
  Gem::Specification.new do |spec|
6
6
  spec.name = "monga"
7
- spec.version = "0.0.7"
7
+ spec.version = "0.0.8"
8
8
  spec.authors = ["Petr Yanovich"]
9
9
  spec.email = ["fl00r@yandex.ru"]
10
10
  spec.description = %q{Yet another MongoDB Ruby Client}
@@ -22,7 +22,7 @@ Gem::Specification.new do |spec|
22
22
  spec.add_development_dependency "kgio"
23
23
  spec.add_development_dependency "em-synchrony"
24
24
 
25
- spec.add_dependency "bson", ["~> 2.0.0.beta"]
25
+ spec.add_dependency "bson", ["~> 2.0.0.rc1"]
26
26
  # spec.add_dependency "bson"
27
27
  # spec.add_dependency "bson_ext"
28
28
  spec.add_dependency "bin_utils"
@@ -28,6 +28,17 @@ describe Monga::Database do
28
28
  @db.eval("1+1")["retval"].must_equal 2.0
29
29
  end
30
30
 
31
+ # DROP DATABASE
32
+
33
+ describe "dropping database" do
34
+ it "should drop database and all its data" do
35
+ @collection.safe_insert(foo: "bar")
36
+ @collection.count.must_equal 1
37
+ @db.drop
38
+ @collection.count.must_equal 0
39
+ end
40
+ end
41
+
31
42
  # INDEXES
32
43
 
33
44
  describe "indexes" do
@@ -47,7 +58,6 @@ describe Monga::Database do
47
58
 
48
59
  describe "getLastError" do
49
60
  before do
50
- @collection.drop_indexes
51
61
  @collection.safe_ensure_index({ personal_id: 1 }, { unique: true, sparse: true })
52
62
  end
53
63
 
@@ -56,6 +56,26 @@ describe Monga::Database do
56
56
  end
57
57
  end
58
58
 
59
+ # DROP DATABASE
60
+
61
+ describe "dropping database" do
62
+ it "should drop database and all its data" do
63
+ EM.run do
64
+ @collection.safe_insert(foo: "bar") do
65
+ @collection.count do |err, count|
66
+ count.must_equal 1
67
+ @db.drop do
68
+ @collection.count do |err, count|
69
+ count.must_equal 0
70
+ EM.stop
71
+ end
72
+ end
73
+ end
74
+ end
75
+ end
76
+ end
77
+ end
78
+
59
79
  # INDEXES
60
80
 
61
81
  describe "indexes" do
@@ -89,10 +109,8 @@ describe Monga::Database do
89
109
  describe "getLastError" do
90
110
  before do
91
111
  EM.run do
92
- @collection.drop_indexes do
93
- @collection.safe_ensure_index({ personal_id: 1 }, { unique: true, sparse: true }) do
94
- EM.stop
95
- end
112
+ @collection.safe_ensure_index({ personal_id: 1 }, { unique: true, sparse: true }) do
113
+ EM.stop
96
114
  end
97
115
  end
98
116
  end
@@ -43,6 +43,20 @@ describe Monga::Database do
43
43
  end
44
44
  end
45
45
 
46
+ # DROP DATABASE
47
+
48
+ describe "dropping database" do
49
+ it "should drop database and all its data" do
50
+ EM.synchrony do
51
+ @collection.safe_insert(foo: "bar")
52
+ @collection.count.must_equal 1
53
+ @db.drop
54
+ @collection.count.must_equal 0
55
+ EM.stop
56
+ end
57
+ end
58
+ end
59
+
46
60
  # INDEXES
47
61
 
48
62
  describe "indexes" do
@@ -69,7 +83,6 @@ describe Monga::Database do
69
83
  describe "getLastError" do
70
84
  before do
71
85
  EM.synchrony do
72
- @collection.drop_indexes
73
86
  @collection.safe_ensure_index({ personal_id: 1 }, { unique: true, sparse: true })
74
87
  EM.stop
75
88
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: monga
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.7
4
+ version: 0.0.8
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,104 +9,104 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-05-29 00:00:00.000000000 Z
12
+ date: 2013-07-03 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
+ name: bundler
15
16
  requirement: !ruby/object:Gem::Requirement
17
+ none: false
16
18
  requirements:
17
19
  - - ~>
18
20
  - !ruby/object:Gem::Version
19
21
  version: '1.3'
20
- none: false
21
22
  type: :development
23
+ prerelease: false
22
24
  version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
23
26
  requirements:
24
27
  - - ~>
25
28
  - !ruby/object:Gem::Version
26
29
  version: '1.3'
27
- none: false
28
- prerelease: false
29
- name: bundler
30
30
  - !ruby/object:Gem::Dependency
31
+ name: rake
31
32
  requirement: !ruby/object:Gem::Requirement
33
+ none: false
32
34
  requirements:
33
35
  - - ! '>='
34
36
  - !ruby/object:Gem::Version
35
37
  version: '0'
36
- none: false
37
38
  type: :development
39
+ prerelease: false
38
40
  version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
39
42
  requirements:
40
43
  - - ! '>='
41
44
  - !ruby/object:Gem::Version
42
45
  version: '0'
43
- none: false
44
- prerelease: false
45
- name: rake
46
46
  - !ruby/object:Gem::Dependency
47
+ name: kgio
47
48
  requirement: !ruby/object:Gem::Requirement
49
+ none: false
48
50
  requirements:
49
51
  - - ! '>='
50
52
  - !ruby/object:Gem::Version
51
53
  version: '0'
52
- none: false
53
54
  type: :development
55
+ prerelease: false
54
56
  version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
55
58
  requirements:
56
59
  - - ! '>='
57
60
  - !ruby/object:Gem::Version
58
61
  version: '0'
59
- none: false
60
- prerelease: false
61
- name: kgio
62
62
  - !ruby/object:Gem::Dependency
63
+ name: em-synchrony
63
64
  requirement: !ruby/object:Gem::Requirement
65
+ none: false
64
66
  requirements:
65
67
  - - ! '>='
66
68
  - !ruby/object:Gem::Version
67
69
  version: '0'
68
- none: false
69
70
  type: :development
71
+ prerelease: false
70
72
  version_requirements: !ruby/object:Gem::Requirement
73
+ none: false
71
74
  requirements:
72
75
  - - ! '>='
73
76
  - !ruby/object:Gem::Version
74
77
  version: '0'
75
- none: false
76
- prerelease: false
77
- name: em-synchrony
78
78
  - !ruby/object:Gem::Dependency
79
+ name: bson
79
80
  requirement: !ruby/object:Gem::Requirement
81
+ none: false
80
82
  requirements:
81
83
  - - ~>
82
84
  - !ruby/object:Gem::Version
83
- version: 2.0.0.beta
84
- none: false
85
+ version: 2.0.0.rc1
85
86
  type: :runtime
87
+ prerelease: false
86
88
  version_requirements: !ruby/object:Gem::Requirement
89
+ none: false
87
90
  requirements:
88
91
  - - ~>
89
92
  - !ruby/object:Gem::Version
90
- version: 2.0.0.beta
91
- none: false
92
- prerelease: false
93
- name: bson
93
+ version: 2.0.0.rc1
94
94
  - !ruby/object:Gem::Dependency
95
+ name: bin_utils
95
96
  requirement: !ruby/object:Gem::Requirement
97
+ none: false
96
98
  requirements:
97
99
  - - ! '>='
98
100
  - !ruby/object:Gem::Version
99
101
  version: '0'
100
- none: false
101
102
  type: :runtime
103
+ prerelease: false
102
104
  version_requirements: !ruby/object:Gem::Requirement
105
+ none: false
103
106
  requirements:
104
107
  - - ! '>='
105
108
  - !ruby/object:Gem::Version
106
109
  version: '0'
107
- none: false
108
- prerelease: false
109
- name: bin_utils
110
110
  description: Yet another MongoDB Ruby Client
111
111
  email:
112
112
  - fl00r@yandex.ru
@@ -174,23 +174,23 @@ rdoc_options: []
174
174
  require_paths:
175
175
  - lib
176
176
  required_ruby_version: !ruby/object:Gem::Requirement
177
+ none: false
177
178
  requirements:
178
179
  - - ! '>='
179
180
  - !ruby/object:Gem::Version
180
- hash: -862637376897312253
181
181
  version: '0'
182
182
  segments:
183
183
  - 0
184
- none: false
184
+ hash: 4381125607140574602
185
185
  required_rubygems_version: !ruby/object:Gem::Requirement
186
+ none: false
186
187
  requirements:
187
188
  - - ! '>='
188
189
  - !ruby/object:Gem::Version
189
- hash: -862637376897312253
190
190
  version: '0'
191
191
  segments:
192
192
  - 0
193
- none: false
193
+ hash: 4381125607140574602
194
194
  requirements: []
195
195
  rubyforge_project:
196
196
  rubygems_version: 1.8.25