mongoid 2.0.0.alpha → 2.0.0.beta.5
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/lib/mongoid.rb +11 -5
- data/lib/mongoid/associations.rb +112 -107
- data/lib/mongoid/associations/belongs_to_related.rb +2 -3
- data/lib/mongoid/associations/embedded_in.rb +12 -4
- data/lib/mongoid/associations/{embed_many.rb → embeds_many.rb} +101 -32
- data/lib/mongoid/associations/{embed_one.rb → embeds_one.rb} +10 -10
- data/lib/mongoid/associations/has_many_related.rb +51 -5
- data/lib/mongoid/associations/has_one_related.rb +9 -5
- data/lib/mongoid/associations/meta_data.rb +2 -1
- data/lib/mongoid/associations/options.rb +15 -6
- data/lib/mongoid/associations/proxy.rb +14 -21
- data/lib/mongoid/attributes.rb +34 -13
- data/lib/mongoid/callbacks.rb +1 -2
- data/lib/mongoid/collection.rb +4 -3
- data/lib/mongoid/collections.rb +41 -0
- data/lib/mongoid/collections/master.rb +3 -2
- data/lib/mongoid/collections/slaves.rb +3 -2
- data/lib/mongoid/components.rb +4 -1
- data/lib/mongoid/config.rb +163 -13
- data/lib/mongoid/contexts.rb +1 -2
- data/lib/mongoid/contexts/enumerable.rb +1 -1
- data/lib/mongoid/contexts/mongo.rb +1 -1
- data/lib/mongoid/contexts/paging.rb +10 -2
- data/lib/mongoid/criteria.rb +13 -22
- data/lib/mongoid/criterion/exclusion.rb +3 -3
- data/lib/mongoid/criterion/inclusion.rb +17 -0
- data/lib/mongoid/criterion/optional.rb +1 -1
- data/lib/mongoid/dirty.rb +253 -0
- data/lib/mongoid/document.rb +40 -85
- data/lib/mongoid/errors.rb +48 -1
- data/lib/mongoid/extensions.rb +11 -9
- data/lib/mongoid/extensions/big_decimal/conversions.rb +2 -2
- data/lib/mongoid/extensions/boolean/conversions.rb +8 -2
- data/lib/mongoid/extensions/date/conversions.rb +13 -4
- data/lib/mongoid/extensions/datetime/conversions.rb +1 -6
- data/lib/mongoid/extensions/float/conversions.rb +5 -1
- data/lib/mongoid/extensions/hash/assimilation.rb +12 -3
- data/lib/mongoid/extensions/hash/conversions.rb +34 -4
- data/lib/mongoid/extensions/integer/conversions.rb +5 -1
- data/lib/mongoid/extensions/nil/assimilation.rb +4 -0
- data/lib/mongoid/extensions/object/conversions.rb +3 -3
- data/lib/mongoid/extensions/string/conversions.rb +1 -1
- data/lib/mongoid/extensions/symbol/inflections.rb +5 -2
- data/lib/mongoid/extensions/time_conversions.rb +35 -0
- data/lib/mongoid/factory.rb +2 -1
- data/lib/mongoid/field.rb +15 -2
- data/lib/mongoid/fields.rb +1 -1
- data/lib/mongoid/identity.rb +3 -3
- data/lib/mongoid/indexes.rb +3 -3
- data/lib/mongoid/matchers.rb +1 -2
- data/lib/mongoid/memoization.rb +8 -2
- data/lib/mongoid/named_scope.rb +0 -5
- data/lib/mongoid/observable.rb +1 -1
- data/lib/mongoid/paths.rb +30 -22
- data/lib/mongoid/persistence.rb +218 -0
- data/lib/mongoid/persistence/command.rb +39 -0
- data/lib/mongoid/persistence/insert.rb +47 -0
- data/lib/mongoid/persistence/insert_embedded.rb +38 -0
- data/lib/mongoid/persistence/remove.rb +39 -0
- data/lib/mongoid/persistence/remove_all.rb +37 -0
- data/lib/mongoid/persistence/remove_embedded.rb +50 -0
- data/lib/mongoid/persistence/update.rb +63 -0
- data/lib/mongoid/railtie.rb +53 -0
- data/lib/mongoid/railties/database.rake +37 -0
- data/lib/mongoid/timestamps.rb +2 -2
- data/lib/mongoid/validations.rb +2 -2
- data/lib/mongoid/validations/associated.rb +2 -2
- data/lib/mongoid/validations/uniqueness.rb +13 -2
- data/lib/mongoid/version.rb +4 -0
- data/lib/mongoid/versioning.rb +3 -2
- data/lib/rails/generators/mongoid/config/config_generator.rb +41 -0
- data/lib/rails/generators/mongoid/config/templates/mongoid.yml +24 -0
- data/lib/rails/generators/mongoid/model/model_generator.rb +24 -0
- data/lib/rails/generators/mongoid/model/templates/model.rb +15 -0
- data/lib/rails/generators/mongoid_generator.rb +61 -0
- metadata +76 -301
- data/.gitignore +0 -6
- data/.watchr +0 -29
- data/Rakefile +0 -52
- data/VERSION +0 -1
- data/caliper.yml +0 -4
- data/lib/mongoid/collections/mimic.rb +0 -46
- data/lib/mongoid/commands.rb +0 -161
- data/lib/mongoid/commands/create.rb +0 -19
- data/lib/mongoid/commands/delete.rb +0 -16
- data/lib/mongoid/commands/delete_all.rb +0 -23
- data/lib/mongoid/commands/deletion.rb +0 -18
- data/lib/mongoid/commands/destroy.rb +0 -17
- data/lib/mongoid/commands/destroy_all.rb +0 -23
- data/lib/mongoid/commands/save.rb +0 -29
- data/lib/mongoid/extensions/time/conversions.rb +0 -18
- data/mongoid.gemspec +0 -408
- data/perf/benchmark.rb +0 -77
- data/spec/integration/mongoid/associations_spec.rb +0 -340
- data/spec/integration/mongoid/attributes_spec.rb +0 -22
- data/spec/integration/mongoid/commands_spec.rb +0 -227
- data/spec/integration/mongoid/contexts/enumerable_spec.rb +0 -33
- data/spec/integration/mongoid/criteria_spec.rb +0 -272
- data/spec/integration/mongoid/document_spec.rb +0 -650
- data/spec/integration/mongoid/extensions_spec.rb +0 -22
- data/spec/integration/mongoid/finders_spec.rb +0 -119
- data/spec/integration/mongoid/inheritance_spec.rb +0 -137
- data/spec/integration/mongoid/named_scope_spec.rb +0 -46
- data/spec/models/address.rb +0 -39
- data/spec/models/animal.rb +0 -6
- data/spec/models/callbacks.rb +0 -18
- data/spec/models/comment.rb +0 -8
- data/spec/models/country_code.rb +0 -6
- data/spec/models/employer.rb +0 -5
- data/spec/models/game.rb +0 -7
- data/spec/models/inheritance.rb +0 -56
- data/spec/models/location.rb +0 -5
- data/spec/models/mixed_drink.rb +0 -4
- data/spec/models/name.rb +0 -13
- data/spec/models/namespacing.rb +0 -11
- data/spec/models/patient.rb +0 -4
- data/spec/models/person.rb +0 -99
- data/spec/models/pet.rb +0 -7
- data/spec/models/pet_owner.rb +0 -6
- data/spec/models/phone.rb +0 -7
- data/spec/models/post.rb +0 -15
- data/spec/models/translation.rb +0 -5
- data/spec/models/vet_visit.rb +0 -5
- data/spec/spec.opts +0 -3
- data/spec/spec_helper.rb +0 -31
- data/spec/unit/mongoid/associations/belongs_to_related_spec.rb +0 -145
- data/spec/unit/mongoid/associations/embed_many_spec.rb +0 -516
- data/spec/unit/mongoid/associations/embed_one_spec.rb +0 -282
- data/spec/unit/mongoid/associations/embedded_in_spec.rb +0 -193
- data/spec/unit/mongoid/associations/has_many_related_spec.rb +0 -418
- data/spec/unit/mongoid/associations/has_one_related_spec.rb +0 -179
- data/spec/unit/mongoid/associations/meta_data_spec.rb +0 -88
- data/spec/unit/mongoid/associations/options_spec.rb +0 -192
- data/spec/unit/mongoid/associations_spec.rb +0 -595
- data/spec/unit/mongoid/attributes_spec.rb +0 -507
- data/spec/unit/mongoid/callbacks_spec.rb +0 -55
- data/spec/unit/mongoid/collection_spec.rb +0 -187
- data/spec/unit/mongoid/collections/cyclic_iterator_spec.rb +0 -75
- data/spec/unit/mongoid/collections/master_spec.rb +0 -41
- data/spec/unit/mongoid/collections/mimic_spec.rb +0 -43
- data/spec/unit/mongoid/collections/slaves_spec.rb +0 -81
- data/spec/unit/mongoid/commands/create_spec.rb +0 -31
- data/spec/unit/mongoid/commands/delete_all_spec.rb +0 -58
- data/spec/unit/mongoid/commands/delete_spec.rb +0 -38
- data/spec/unit/mongoid/commands/destroy_all_spec.rb +0 -21
- data/spec/unit/mongoid/commands/destroy_spec.rb +0 -51
- data/spec/unit/mongoid/commands/save_spec.rb +0 -107
- data/spec/unit/mongoid/commands_spec.rb +0 -270
- data/spec/unit/mongoid/config_spec.rb +0 -172
- data/spec/unit/mongoid/contexts/enumerable_spec.rb +0 -421
- data/spec/unit/mongoid/contexts/mongo_spec.rb +0 -682
- data/spec/unit/mongoid/contexts_spec.rb +0 -25
- data/spec/unit/mongoid/criteria_spec.rb +0 -824
- data/spec/unit/mongoid/criterion/complex_spec.rb +0 -19
- data/spec/unit/mongoid/criterion/exclusion_spec.rb +0 -91
- data/spec/unit/mongoid/criterion/inclusion_spec.rb +0 -219
- data/spec/unit/mongoid/criterion/optional_spec.rb +0 -319
- data/spec/unit/mongoid/cursor_spec.rb +0 -74
- data/spec/unit/mongoid/deprecation_spec.rb +0 -24
- data/spec/unit/mongoid/document_spec.rb +0 -818
- data/spec/unit/mongoid/errors_spec.rb +0 -103
- data/spec/unit/mongoid/extensions/array/accessors_spec.rb +0 -50
- data/spec/unit/mongoid/extensions/array/assimilation_spec.rb +0 -24
- data/spec/unit/mongoid/extensions/array/conversions_spec.rb +0 -35
- data/spec/unit/mongoid/extensions/array/parentization_spec.rb +0 -20
- data/spec/unit/mongoid/extensions/big_decimal/conversions_spec.rb +0 -22
- data/spec/unit/mongoid/extensions/binary/conversions_spec.rb +0 -22
- data/spec/unit/mongoid/extensions/boolean/conversions_spec.rb +0 -49
- data/spec/unit/mongoid/extensions/date/conversions_spec.rb +0 -102
- data/spec/unit/mongoid/extensions/datetime/conversions_spec.rb +0 -67
- data/spec/unit/mongoid/extensions/float/conversions_spec.rb +0 -61
- data/spec/unit/mongoid/extensions/hash/accessors_spec.rb +0 -184
- data/spec/unit/mongoid/extensions/hash/assimilation_spec.rb +0 -46
- data/spec/unit/mongoid/extensions/hash/conversions_spec.rb +0 -21
- data/spec/unit/mongoid/extensions/hash/criteria_helpers_spec.rb +0 -17
- data/spec/unit/mongoid/extensions/hash/scoping_spec.rb +0 -14
- data/spec/unit/mongoid/extensions/integer/conversions_spec.rb +0 -61
- data/spec/unit/mongoid/extensions/nil/assimilation_spec.rb +0 -24
- data/spec/unit/mongoid/extensions/object/conversions_spec.rb +0 -57
- data/spec/unit/mongoid/extensions/proc/scoping_spec.rb +0 -34
- data/spec/unit/mongoid/extensions/string/conversions_spec.rb +0 -17
- data/spec/unit/mongoid/extensions/string/inflections_spec.rb +0 -208
- data/spec/unit/mongoid/extensions/symbol/inflections_spec.rb +0 -91
- data/spec/unit/mongoid/extensions/time/conversions_spec.rb +0 -70
- data/spec/unit/mongoid/extras_spec.rb +0 -102
- data/spec/unit/mongoid/factory_spec.rb +0 -31
- data/spec/unit/mongoid/field_spec.rb +0 -143
- data/spec/unit/mongoid/fields_spec.rb +0 -181
- data/spec/unit/mongoid/finders_spec.rb +0 -404
- data/spec/unit/mongoid/identity_spec.rb +0 -109
- data/spec/unit/mongoid/indexes_spec.rb +0 -93
- data/spec/unit/mongoid/javascript_spec.rb +0 -48
- data/spec/unit/mongoid/matchers/all_spec.rb +0 -27
- data/spec/unit/mongoid/matchers/default_spec.rb +0 -27
- data/spec/unit/mongoid/matchers/exists_spec.rb +0 -56
- data/spec/unit/mongoid/matchers/gt_spec.rb +0 -39
- data/spec/unit/mongoid/matchers/gte_spec.rb +0 -49
- data/spec/unit/mongoid/matchers/in_spec.rb +0 -27
- data/spec/unit/mongoid/matchers/lt_spec.rb +0 -39
- data/spec/unit/mongoid/matchers/lte_spec.rb +0 -49
- data/spec/unit/mongoid/matchers/ne_spec.rb +0 -27
- data/spec/unit/mongoid/matchers/nin_spec.rb +0 -27
- data/spec/unit/mongoid/matchers/size_spec.rb +0 -27
- data/spec/unit/mongoid/matchers_spec.rb +0 -329
- data/spec/unit/mongoid/memoization_spec.rb +0 -75
- data/spec/unit/mongoid/named_scope_spec.rb +0 -123
- data/spec/unit/mongoid/observable_spec.rb +0 -46
- data/spec/unit/mongoid/paths_spec.rb +0 -124
- data/spec/unit/mongoid/scope_spec.rb +0 -240
- data/spec/unit/mongoid/state_spec.rb +0 -83
- data/spec/unit/mongoid/timestamps_spec.rb +0 -25
- data/spec/unit/mongoid/validations/associated_spec.rb +0 -103
- data/spec/unit/mongoid/validations/uniqueness_spec.rb +0 -47
- data/spec/unit/mongoid/validations_spec.rb +0 -190
- data/spec/unit/mongoid/versioning_spec.rb +0 -41
- data/spec/unit/mongoid_spec.rb +0 -46
@@ -1,34 +0,0 @@
|
|
1
|
-
require "spec_helper"
|
2
|
-
|
3
|
-
describe Mongoid::Extensions::Proc::Scoping do
|
4
|
-
|
5
|
-
describe "#scoped" do
|
6
|
-
|
7
|
-
context "when the proc accessed a hash" do
|
8
|
-
|
9
|
-
before do
|
10
|
-
@proc = lambda { |number| { :where => { :count => number } } }
|
11
|
-
end
|
12
|
-
|
13
|
-
it "calls the hash with the args" do
|
14
|
-
@proc.scoped(10).should == { :where => { :count => 10 } }
|
15
|
-
end
|
16
|
-
|
17
|
-
end
|
18
|
-
|
19
|
-
context "when the proc calls a criteria" do
|
20
|
-
|
21
|
-
before do
|
22
|
-
@proc = lambda { |title| Person.where(:title => title) }
|
23
|
-
end
|
24
|
-
|
25
|
-
it "returns the criteria scoped" do
|
26
|
-
@proc.scoped("Sir").should ==
|
27
|
-
{ :where => { :title => "Sir" } }
|
28
|
-
end
|
29
|
-
|
30
|
-
end
|
31
|
-
|
32
|
-
end
|
33
|
-
|
34
|
-
end
|
@@ -1,17 +0,0 @@
|
|
1
|
-
require "spec_helper"
|
2
|
-
|
3
|
-
describe Mongoid::Extensions::String::Conversions do
|
4
|
-
|
5
|
-
describe "#set" do
|
6
|
-
it "returns the object to_s" do
|
7
|
-
String.set(1).should == "1"
|
8
|
-
end
|
9
|
-
end
|
10
|
-
|
11
|
-
describe "#get" do
|
12
|
-
it "returns the string" do
|
13
|
-
String.get("test").should == "test"
|
14
|
-
end
|
15
|
-
end
|
16
|
-
|
17
|
-
end
|
@@ -1,208 +0,0 @@
|
|
1
|
-
require "spec_helper"
|
2
|
-
|
3
|
-
describe Mongoid::Extensions::String::Inflections do
|
4
|
-
|
5
|
-
describe "#collectionize" do
|
6
|
-
|
7
|
-
context "when class is namepaced" do
|
8
|
-
|
9
|
-
it "returns an underscored tableized name" do
|
10
|
-
Medical::Patient.name.collectionize.should == "medical_patients"
|
11
|
-
end
|
12
|
-
|
13
|
-
end
|
14
|
-
|
15
|
-
context "when class is not namespaced" do
|
16
|
-
|
17
|
-
it "returns an underscored tableized name" do
|
18
|
-
MixedDrink.name.collectionize.should == "mixed_drinks"
|
19
|
-
end
|
20
|
-
|
21
|
-
end
|
22
|
-
|
23
|
-
end
|
24
|
-
|
25
|
-
describe "#identify" do
|
26
|
-
|
27
|
-
context "when parameterizing composite keys" do
|
28
|
-
|
29
|
-
it "converts the string to all lowercase and dashed" do
|
30
|
-
"A Midsummer Night's Dream".identify.should == "a-midsummer-night-quo-s-dream"
|
31
|
-
end
|
32
|
-
|
33
|
-
end
|
34
|
-
|
35
|
-
context "when not parameterizing keys" do
|
36
|
-
|
37
|
-
before do
|
38
|
-
Mongoid.parameterize_keys = false
|
39
|
-
end
|
40
|
-
|
41
|
-
after do
|
42
|
-
Mongoid.parameterize_keys = true
|
43
|
-
end
|
44
|
-
|
45
|
-
it "does nothing to the keys" do
|
46
|
-
"A Midsummer Night's Dream".identify.should == "A Midsummer Night's Dream"
|
47
|
-
end
|
48
|
-
end
|
49
|
-
|
50
|
-
end
|
51
|
-
|
52
|
-
describe "#labelize" do
|
53
|
-
|
54
|
-
it "returns the underscored name humanized" do
|
55
|
-
MixedDrink.name.labelize.should == "Mixed drink"
|
56
|
-
end
|
57
|
-
|
58
|
-
end
|
59
|
-
|
60
|
-
describe "#singular?" do
|
61
|
-
|
62
|
-
context "when singular" do
|
63
|
-
|
64
|
-
it "returns true" do
|
65
|
-
"bat".singular?.should be_true
|
66
|
-
end
|
67
|
-
|
68
|
-
context "when string is added to inflections" do
|
69
|
-
|
70
|
-
it "returns true" do
|
71
|
-
"address".singular?.should be_true
|
72
|
-
end
|
73
|
-
|
74
|
-
end
|
75
|
-
|
76
|
-
end
|
77
|
-
|
78
|
-
context "when plural" do
|
79
|
-
|
80
|
-
it "returns false" do
|
81
|
-
"bats".singular?.should be_false
|
82
|
-
end
|
83
|
-
|
84
|
-
context "when string is added to inflections" do
|
85
|
-
|
86
|
-
it "returns false" do
|
87
|
-
"addresses".singular?.should be_false
|
88
|
-
end
|
89
|
-
|
90
|
-
end
|
91
|
-
|
92
|
-
end
|
93
|
-
|
94
|
-
end
|
95
|
-
|
96
|
-
describe "plural?" do
|
97
|
-
|
98
|
-
context "when singular" do
|
99
|
-
|
100
|
-
it "returns false" do
|
101
|
-
"bat".plural?.should be_false
|
102
|
-
end
|
103
|
-
|
104
|
-
context "when string is added to inflections" do
|
105
|
-
|
106
|
-
it "returns false" do
|
107
|
-
"address".plural?.should be_false
|
108
|
-
end
|
109
|
-
|
110
|
-
end
|
111
|
-
|
112
|
-
end
|
113
|
-
|
114
|
-
context "when plural" do
|
115
|
-
|
116
|
-
it "returns true" do
|
117
|
-
"bats".plural?.should be_true
|
118
|
-
end
|
119
|
-
|
120
|
-
context "when string is added to inflections" do
|
121
|
-
|
122
|
-
it "returns true" do
|
123
|
-
"addresses".plural?.should be_true
|
124
|
-
end
|
125
|
-
|
126
|
-
end
|
127
|
-
|
128
|
-
end
|
129
|
-
|
130
|
-
end
|
131
|
-
|
132
|
-
describe "invert" do
|
133
|
-
|
134
|
-
context "when asc" do
|
135
|
-
|
136
|
-
it "returns desc" do
|
137
|
-
"asc".invert.should == "desc"
|
138
|
-
end
|
139
|
-
|
140
|
-
end
|
141
|
-
|
142
|
-
context "when ascending" do
|
143
|
-
|
144
|
-
it "returns descending" do
|
145
|
-
"ascending".invert.should == "descending"
|
146
|
-
end
|
147
|
-
|
148
|
-
end
|
149
|
-
|
150
|
-
context "when desc" do
|
151
|
-
|
152
|
-
it "returns asc" do
|
153
|
-
"desc".invert.should == "asc"
|
154
|
-
end
|
155
|
-
|
156
|
-
end
|
157
|
-
|
158
|
-
context "when descending" do
|
159
|
-
|
160
|
-
it "returns ascending" do
|
161
|
-
"descending".invert.should == "ascending"
|
162
|
-
end
|
163
|
-
|
164
|
-
end
|
165
|
-
|
166
|
-
end
|
167
|
-
|
168
|
-
describe "#reader" do
|
169
|
-
|
170
|
-
context "when string is a reader" do
|
171
|
-
|
172
|
-
it "returns self" do
|
173
|
-
"attribute".reader.should == "attribute"
|
174
|
-
end
|
175
|
-
|
176
|
-
end
|
177
|
-
|
178
|
-
context "when string is a writer" do
|
179
|
-
|
180
|
-
it "returns the reader" do
|
181
|
-
"attribute=".reader.should == "attribute"
|
182
|
-
end
|
183
|
-
|
184
|
-
end
|
185
|
-
|
186
|
-
end
|
187
|
-
|
188
|
-
describe "#writer?" do
|
189
|
-
|
190
|
-
context "when string is a reader" do
|
191
|
-
|
192
|
-
it "returns false" do
|
193
|
-
"attribute".writer?.should be_false
|
194
|
-
end
|
195
|
-
|
196
|
-
end
|
197
|
-
|
198
|
-
context "when string is a writer" do
|
199
|
-
|
200
|
-
it "returns true" do
|
201
|
-
"attribute=".writer?.should be_true
|
202
|
-
end
|
203
|
-
|
204
|
-
end
|
205
|
-
|
206
|
-
end
|
207
|
-
|
208
|
-
end
|
@@ -1,91 +0,0 @@
|
|
1
|
-
require "spec_helper"
|
2
|
-
|
3
|
-
describe Mongoid::Extensions::Symbol::Inflections do
|
4
|
-
|
5
|
-
describe "#singular?" do
|
6
|
-
|
7
|
-
context "when singular" do
|
8
|
-
|
9
|
-
it "returns true" do
|
10
|
-
:bat.singular?.should be_true
|
11
|
-
end
|
12
|
-
|
13
|
-
end
|
14
|
-
|
15
|
-
context "when plural" do
|
16
|
-
|
17
|
-
it "returns false" do
|
18
|
-
:bats.singular?.should be_false
|
19
|
-
end
|
20
|
-
|
21
|
-
end
|
22
|
-
|
23
|
-
end
|
24
|
-
|
25
|
-
describe "plural?" do
|
26
|
-
|
27
|
-
context "when singular" do
|
28
|
-
|
29
|
-
it "returns false" do
|
30
|
-
:bat.plural?.should be_false
|
31
|
-
end
|
32
|
-
|
33
|
-
end
|
34
|
-
|
35
|
-
context "when plural" do
|
36
|
-
|
37
|
-
it "returns true" do
|
38
|
-
:bats.plural?.should be_true
|
39
|
-
end
|
40
|
-
|
41
|
-
end
|
42
|
-
|
43
|
-
end
|
44
|
-
|
45
|
-
describe "invert" do
|
46
|
-
|
47
|
-
context "when :asc" do
|
48
|
-
|
49
|
-
it "returns :desc" do
|
50
|
-
:asc.invert.should == :desc
|
51
|
-
end
|
52
|
-
|
53
|
-
end
|
54
|
-
|
55
|
-
context "when :ascending" do
|
56
|
-
|
57
|
-
it "returns :descending" do
|
58
|
-
:ascending.invert.should == :descending
|
59
|
-
end
|
60
|
-
|
61
|
-
end
|
62
|
-
|
63
|
-
context "when :desc" do
|
64
|
-
|
65
|
-
it "returns :asc" do
|
66
|
-
:desc.invert.should == :asc
|
67
|
-
end
|
68
|
-
|
69
|
-
end
|
70
|
-
|
71
|
-
context "when :descending" do
|
72
|
-
|
73
|
-
it "returns :ascending" do
|
74
|
-
:descending.invert.should == :ascending
|
75
|
-
end
|
76
|
-
|
77
|
-
end
|
78
|
-
|
79
|
-
end
|
80
|
-
|
81
|
-
describe "#gt" do
|
82
|
-
|
83
|
-
it 'returns :"foo $gt"' do
|
84
|
-
ret = :foo.gt
|
85
|
-
ret.key.should == :foo
|
86
|
-
ret.operator.should == "gt"
|
87
|
-
end
|
88
|
-
|
89
|
-
end
|
90
|
-
|
91
|
-
end
|
@@ -1,70 +0,0 @@
|
|
1
|
-
require "spec_helper"
|
2
|
-
|
3
|
-
describe Mongoid::Extensions::Time::Conversions do
|
4
|
-
|
5
|
-
before do
|
6
|
-
Time.zone = "Canberra"
|
7
|
-
@time = Time.local(1976, 11, 19)
|
8
|
-
end
|
9
|
-
|
10
|
-
after do
|
11
|
-
Time.zone = nil
|
12
|
-
end
|
13
|
-
|
14
|
-
describe "#set" do
|
15
|
-
|
16
|
-
context "when value is a string" do
|
17
|
-
|
18
|
-
it "converts to a utc time" do
|
19
|
-
Time.set(@time.to_s).utc_offset.should == 0
|
20
|
-
end
|
21
|
-
|
22
|
-
end
|
23
|
-
|
24
|
-
context "when value is a time" do
|
25
|
-
|
26
|
-
it "converts to a utc time" do
|
27
|
-
Time.set(@time).utc_offset.should == 0
|
28
|
-
end
|
29
|
-
|
30
|
-
end
|
31
|
-
|
32
|
-
context "when value is already a utc time" do
|
33
|
-
|
34
|
-
it "returns the time" do
|
35
|
-
Time.set(@time.utc).should == @time.utc
|
36
|
-
end
|
37
|
-
|
38
|
-
end
|
39
|
-
|
40
|
-
context "when value is nil" do
|
41
|
-
|
42
|
-
it "returns nil" do
|
43
|
-
Time.set(nil).should be_nil
|
44
|
-
end
|
45
|
-
|
46
|
-
end
|
47
|
-
|
48
|
-
end
|
49
|
-
|
50
|
-
describe "#get" do
|
51
|
-
|
52
|
-
context "when time is provided" do
|
53
|
-
|
54
|
-
it "returns the local time" do
|
55
|
-
Time.get(@time.dup.utc).utc_offset.should == @time.utc_offset
|
56
|
-
end
|
57
|
-
|
58
|
-
end
|
59
|
-
|
60
|
-
context "when time is nil" do
|
61
|
-
|
62
|
-
it "returns nil" do
|
63
|
-
Time.get(nil).should be_nil
|
64
|
-
end
|
65
|
-
|
66
|
-
end
|
67
|
-
|
68
|
-
end
|
69
|
-
|
70
|
-
end
|
@@ -1,102 +0,0 @@
|
|
1
|
-
require "spec_helper"
|
2
|
-
|
3
|
-
describe Mongoid::Extras do
|
4
|
-
|
5
|
-
before do
|
6
|
-
@klass = Class.new do
|
7
|
-
include Mongoid::Extras
|
8
|
-
end
|
9
|
-
end
|
10
|
-
|
11
|
-
describe ".cache" do
|
12
|
-
|
13
|
-
before do
|
14
|
-
@klass.cache
|
15
|
-
end
|
16
|
-
|
17
|
-
it "sets the cached boolean on the class" do
|
18
|
-
@klass.cached.should be_true
|
19
|
-
end
|
20
|
-
|
21
|
-
end
|
22
|
-
|
23
|
-
describe ".cached?" do
|
24
|
-
|
25
|
-
context "when the class is cached" do
|
26
|
-
|
27
|
-
before do
|
28
|
-
@klass.cache
|
29
|
-
end
|
30
|
-
|
31
|
-
it "returns true" do
|
32
|
-
@klass.should be_cached
|
33
|
-
end
|
34
|
-
end
|
35
|
-
|
36
|
-
context "when the class is not cached" do
|
37
|
-
|
38
|
-
it "returns false" do
|
39
|
-
@klass.should_not be_cached
|
40
|
-
end
|
41
|
-
end
|
42
|
-
|
43
|
-
end
|
44
|
-
|
45
|
-
describe "#cached?" do
|
46
|
-
|
47
|
-
before do
|
48
|
-
@klass.cache
|
49
|
-
@doc = @klass.new
|
50
|
-
end
|
51
|
-
|
52
|
-
it "returns the class cached? value" do
|
53
|
-
@doc.should be_cached
|
54
|
-
end
|
55
|
-
end
|
56
|
-
|
57
|
-
describe ".enslave" do
|
58
|
-
|
59
|
-
before do
|
60
|
-
@klass.enslave
|
61
|
-
end
|
62
|
-
|
63
|
-
it "sets the enslaved boolean on the class" do
|
64
|
-
@klass.enslaved.should be_true
|
65
|
-
end
|
66
|
-
|
67
|
-
end
|
68
|
-
|
69
|
-
describe ".enslaved?" do
|
70
|
-
|
71
|
-
context "when the class is enslaved" do
|
72
|
-
|
73
|
-
before do
|
74
|
-
@klass.enslave
|
75
|
-
end
|
76
|
-
|
77
|
-
it "returns true" do
|
78
|
-
@klass.should be_enslaved
|
79
|
-
end
|
80
|
-
end
|
81
|
-
|
82
|
-
context "when the class is not enslaved" do
|
83
|
-
|
84
|
-
it "returns false" do
|
85
|
-
@klass.should_not be_enslaved
|
86
|
-
end
|
87
|
-
end
|
88
|
-
|
89
|
-
end
|
90
|
-
|
91
|
-
describe "#enslaved?" do
|
92
|
-
|
93
|
-
before do
|
94
|
-
@klass.enslave
|
95
|
-
@doc = @klass.new
|
96
|
-
end
|
97
|
-
|
98
|
-
it "returns the class enslaved? value" do
|
99
|
-
@doc.should be_enslaved
|
100
|
-
end
|
101
|
-
end
|
102
|
-
end
|