mongoid-list 0.1.8 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,66 @@
1
+ require 'rubygems'
2
+ require 'spork'
3
+
4
+ #uncomment the following line to use spork with the debugger
5
+ #require 'spork/ext/ruby-debug'
6
+
7
+ Spork.prefork do
8
+ # Loading more in this block will cause your tests to run faster. However,
9
+ # if you change any configuration or code from libraries loaded here, you'll
10
+ # need to restart spork for it take effect.
11
+ #
12
+ require 'rspec'
13
+ require 'mongoid'
14
+ require 'mongoid-list'
15
+ require 'database_cleaner'
16
+
17
+ Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each { |f| require f }
18
+
19
+ RSpec.configure do |config|
20
+
21
+ config.before(:suite) do
22
+ Mongoid.load!("mongoid.yml", :test)
23
+ DatabaseCleaner[:mongoid].strategy = :truncation
24
+ end
25
+
26
+ config.after(:each) do
27
+ DatabaseCleaner.clean
28
+ end
29
+
30
+ end
31
+
32
+ end
33
+
34
+ Spork.each_run do
35
+ # This code will be run each time you run your specs.
36
+ end
37
+
38
+ # --- Instructions ---
39
+ # Sort the contents of this file into a Spork.prefork and a Spork.each_run
40
+ # block.
41
+ #
42
+ # The Spork.prefork block is run only once when the spork server is started.
43
+ # You typically want to place most of your (slow) initializer code in here, in
44
+ # particular, require'ing any 3rd-party gems that you don't normally modify
45
+ # during development.
46
+ #
47
+ # The Spork.each_run block is run each time you run your specs. In case you
48
+ # need to load files that tend to change during development, require them here.
49
+ # With Rails, your application modules are loaded automatically, so sometimes
50
+ # this block can remain empty.
51
+ #
52
+ # Note: You can modify files loaded *from* the Spork.each_run block without
53
+ # restarting the spork server. However, this file itself will not be reloaded,
54
+ # so if you change any of the code inside the each_run block, you still need to
55
+ # restart the server. In general, if you have non-trivial code in this file,
56
+ # it's advisable to move it into a separate file so you can easily edit it
57
+ # without restarting spork. (For example, with RSpec, you could move
58
+ # non-trivial code into a file spec/support/my_helper.rb, making sure that the
59
+ # spec/support/* files are require'd from inside the each_run block.)
60
+ #
61
+ # Any code that is left outside the two blocks will be run during preforking
62
+ # *and* during each_run -- that's probably not what you want.
63
+ #
64
+ # These instructions should self-destruct in 10 seconds. If they don't, feel
65
+ # free to delete them.
66
+
@@ -0,0 +1,8 @@
1
+ class Container
2
+
3
+ include Mongoid::Document
4
+
5
+ embeds_many :items, class_name: 'Embedded'#, order: :position
6
+ embeds_many :scoped_items, class_name: 'ScopedEmbedded'#, order: :position
7
+
8
+ end
File without changes
File without changes
File without changes
File without changes
File without changes
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mongoid-list
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.8
4
+ version: 0.2.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -18,7 +18,7 @@ dependencies:
18
18
  requirements:
19
19
  - - ! '>='
20
20
  - !ruby/object:Gem::Version
21
- version: 2.4.0
21
+ version: 3.0.0
22
22
  type: :runtime
23
23
  prerelease: false
24
24
  version_requirements: !ruby/object:Gem::Requirement
@@ -26,15 +26,15 @@ dependencies:
26
26
  requirements:
27
27
  - - ! '>='
28
28
  - !ruby/object:Gem::Version
29
- version: 2.4.0
29
+ version: 3.0.0
30
30
  - !ruby/object:Gem::Dependency
31
- name: bson_ext
31
+ name: rspec
32
32
  requirement: !ruby/object:Gem::Requirement
33
33
  none: false
34
34
  requirements:
35
35
  - - ! '>='
36
36
  - !ruby/object:Gem::Version
37
- version: '0'
37
+ version: 2.13.0
38
38
  type: :development
39
39
  prerelease: false
40
40
  version_requirements: !ruby/object:Gem::Requirement
@@ -42,15 +42,15 @@ dependencies:
42
42
  requirements:
43
43
  - - ! '>='
44
44
  - !ruby/object:Gem::Version
45
- version: '0'
45
+ version: 2.13.0
46
46
  - !ruby/object:Gem::Dependency
47
- name: minitest
47
+ name: guard
48
48
  requirement: !ruby/object:Gem::Requirement
49
49
  none: false
50
50
  requirements:
51
51
  - - ! '>='
52
52
  - !ruby/object:Gem::Version
53
- version: 2.11.0
53
+ version: 1.8.0
54
54
  type: :development
55
55
  prerelease: false
56
56
  version_requirements: !ruby/object:Gem::Requirement
@@ -58,15 +58,15 @@ dependencies:
58
58
  requirements:
59
59
  - - ! '>='
60
60
  - !ruby/object:Gem::Version
61
- version: 2.11.0
61
+ version: 1.8.0
62
62
  - !ruby/object:Gem::Dependency
63
- name: mini_shoulda
63
+ name: guard-rspec
64
64
  requirement: !ruby/object:Gem::Requirement
65
65
  none: false
66
66
  requirements:
67
67
  - - ! '>='
68
68
  - !ruby/object:Gem::Version
69
- version: 0.4.0
69
+ version: 2.5.0
70
70
  type: :development
71
71
  prerelease: false
72
72
  version_requirements: !ruby/object:Gem::Requirement
@@ -74,31 +74,15 @@ dependencies:
74
74
  requirements:
75
75
  - - ! '>='
76
76
  - !ruby/object:Gem::Version
77
- version: 0.4.0
77
+ version: 2.5.0
78
78
  - !ruby/object:Gem::Dependency
79
- name: spork
80
- requirement: !ruby/object:Gem::Requirement
81
- none: false
82
- requirements:
83
- - - ! '>='
84
- - !ruby/object:Gem::Version
85
- version: 1.0.0.rc
86
- type: :development
87
- prerelease: false
88
- version_requirements: !ruby/object:Gem::Requirement
89
- none: false
90
- requirements:
91
- - - ! '>='
92
- - !ruby/object:Gem::Version
93
- version: 1.0.0.rc
94
- - !ruby/object:Gem::Dependency
95
- name: spork-testunit
79
+ name: guard-spork
96
80
  requirement: !ruby/object:Gem::Requirement
97
81
  none: false
98
82
  requirements:
99
83
  - - ! '>='
100
84
  - !ruby/object:Gem::Version
101
- version: 0.0.8
85
+ version: 1.5.0
102
86
  type: :development
103
87
  prerelease: false
104
88
  version_requirements: !ruby/object:Gem::Requirement
@@ -106,15 +90,15 @@ dependencies:
106
90
  requirements:
107
91
  - - ! '>='
108
92
  - !ruby/object:Gem::Version
109
- version: 0.0.8
93
+ version: 1.5.0
110
94
  - !ruby/object:Gem::Dependency
111
- name: guard-minitest
95
+ name: listen
112
96
  requirement: !ruby/object:Gem::Requirement
113
97
  none: false
114
98
  requirements:
115
99
  - - ! '>='
116
100
  - !ruby/object:Gem::Version
117
- version: 0.5.0
101
+ version: 1.0.0
118
102
  type: :development
119
103
  prerelease: false
120
104
  version_requirements: !ruby/object:Gem::Requirement
@@ -122,31 +106,31 @@ dependencies:
122
106
  requirements:
123
107
  - - ! '>='
124
108
  - !ruby/object:Gem::Version
125
- version: 0.5.0
109
+ version: 1.0.0
126
110
  - !ruby/object:Gem::Dependency
127
- name: guard-spork
111
+ name: database_cleaner
128
112
  requirement: !ruby/object:Gem::Requirement
129
113
  none: false
130
114
  requirements:
131
- - - ! '>='
115
+ - - ~>
132
116
  - !ruby/object:Gem::Version
133
- version: 0.5.2
117
+ version: 0.9.0
134
118
  type: :development
135
119
  prerelease: false
136
120
  version_requirements: !ruby/object:Gem::Requirement
137
121
  none: false
138
122
  requirements:
139
- - - ! '>='
123
+ - - ~>
140
124
  - !ruby/object:Gem::Version
141
- version: 0.5.2
125
+ version: 0.9.0
142
126
  - !ruby/object:Gem::Dependency
143
- name: turn
127
+ name: rspecify
144
128
  requirement: !ruby/object:Gem::Requirement
145
129
  none: false
146
130
  requirements:
147
131
  - - ! '>='
148
132
  - !ruby/object:Gem::Version
149
- version: 0.9.4
133
+ version: '0'
150
134
  type: :development
151
135
  prerelease: false
152
136
  version_requirements: !ruby/object:Gem::Requirement
@@ -154,7 +138,7 @@ dependencies:
154
138
  requirements:
155
139
  - - ! '>='
156
140
  - !ruby/object:Gem::Version
157
- version: 0.9.4
141
+ version: '0'
158
142
  description:
159
143
  email: dave@davekrupinski.com
160
144
  executables: []
@@ -176,16 +160,17 @@ files:
176
160
  - lib/mongoid/list/version.rb
177
161
  - lib/mongoid/relations/embedded/many_list_extension.rb
178
162
  - mongoid-list.gemspec
179
- - test/mongoid/list/collection_test.rb
180
- - test/mongoid/list/embedded_test.rb
181
- - test/mongoid/list_test.rb
182
- - test/support/models/container.rb
183
- - test/support/models/embedded.rb
184
- - test/support/models/embedded_deeply.rb
185
- - test/support/models/scoped.rb
186
- - test/support/models/scoped_embedded.rb
187
- - test/support/models/simple.rb
188
- - test/test_helper.rb
163
+ - mongoid.yml
164
+ - spec/mongoid/list/collection_spec.rb
165
+ - spec/mongoid/list/embedded_spec.rb
166
+ - spec/mongoid/list_spec.rb
167
+ - spec/spec_helper.rb
168
+ - spec/support/models/container.rb
169
+ - spec/support/models/embedded.rb
170
+ - spec/support/models/embedded_deeply.rb
171
+ - spec/support/models/scoped.rb
172
+ - spec/support/models/scoped_embedded.rb
173
+ - spec/support/models/simple.rb
189
174
  homepage: https://github.com/davekrupinski/mongoid-list
190
175
  licenses: []
191
176
  post_install_message:
@@ -211,13 +196,13 @@ signing_key:
211
196
  specification_version: 3
212
197
  summary: Simple list behavior for Mongoid
213
198
  test_files:
214
- - test/mongoid/list/collection_test.rb
215
- - test/mongoid/list/embedded_test.rb
216
- - test/mongoid/list_test.rb
217
- - test/support/models/container.rb
218
- - test/support/models/embedded.rb
219
- - test/support/models/embedded_deeply.rb
220
- - test/support/models/scoped.rb
221
- - test/support/models/scoped_embedded.rb
222
- - test/support/models/simple.rb
223
- - test/test_helper.rb
199
+ - spec/mongoid/list/collection_spec.rb
200
+ - spec/mongoid/list/embedded_spec.rb
201
+ - spec/mongoid/list_spec.rb
202
+ - spec/spec_helper.rb
203
+ - spec/support/models/container.rb
204
+ - spec/support/models/embedded.rb
205
+ - spec/support/models/embedded_deeply.rb
206
+ - spec/support/models/scoped.rb
207
+ - spec/support/models/scoped_embedded.rb
208
+ - spec/support/models/simple.rb
@@ -1,141 +0,0 @@
1
- require 'test_helper'
2
-
3
- describe Mongoid::List::Collection do
4
-
5
- describe "#initialization" do
6
-
7
- let :simple do
8
- Simple.create
9
- end
10
-
11
- let :collection do
12
- Mongoid::List::Collection.new(simple)
13
- end
14
-
15
- should "assign @simple to :obj" do
16
- assert_equal simple, collection.obj
17
- end
18
-
19
- end
20
-
21
-
22
-
23
- describe "#count" do
24
-
25
- context "when unscoped" do
26
-
27
- let :collection do
28
- Mongoid::List::Collection.new(Simple.new)
29
- end
30
-
31
- setup do
32
- 5.times { Simple.create }
33
- end
34
-
35
- should "be 5" do
36
- assert_equal 5, collection.count
37
- end
38
-
39
- end
40
-
41
-
42
- context "when scoped" do
43
-
44
- setup do
45
- 4.times { Scoped.create(group: "airplane 1") }
46
- 3.times { Scoped.create(group: "airplane 2") }
47
- end
48
-
49
- context "group 1" do
50
-
51
- let :collection do
52
- Mongoid::List::Collection.new(Scoped.new(group: "airplane 1"))
53
- end
54
-
55
- should "be 4" do
56
- assert_equal 4, collection.count
57
- end
58
-
59
- end
60
-
61
- context "group 2" do
62
-
63
- let :collection do
64
- Mongoid::List::Collection.new(Scoped.new(group: "airplane 2"))
65
- end
66
-
67
- should "be 3" do
68
- assert_equal 3, collection.count
69
- end
70
-
71
- end
72
-
73
- end
74
-
75
- end
76
-
77
-
78
- describe "#update_positions_in_list!" do
79
-
80
- context "unscoped" do
81
-
82
- setup do
83
- @obj1 = Simple.create
84
- @obj2 = Simple.create
85
- @obj3 = Simple.create
86
- Simple.update_positions_in_list!([ @obj2.id, @obj1.id, @obj3.id ])
87
- end
88
-
89
- should "change @obj1 from :position of 1 to 2" do
90
- assert_equal 1, @obj1.position
91
- assert_equal 2, @obj1.reload.position
92
- end
93
-
94
- should "change @obj2 from :position of 2 to 1" do
95
- assert_equal 2, @obj2.position
96
- assert_equal 1, @obj2.reload.position
97
- end
98
-
99
- should "not change @obj3 from :position of 3" do
100
- assert_equal 3, @obj3.position
101
- assert_equal 3, @obj3.reload.position
102
- end
103
-
104
- end
105
-
106
- context "scoped" do
107
-
108
- setup do
109
- @obj1 = Scoped.create(group: "hell's angels")
110
- @obj2 = Scoped.create(group: "hell's angels")
111
- @obj3 = Scoped.create(group: "hell's angels")
112
- @other = Scoped.create(group: "charlie's angels")
113
-
114
- Scoped.update_positions_in_list!([ @obj3.id, @obj2.id, @obj1.id ])
115
- end
116
-
117
- should "change @obj1 from :position of 1 to 3" do
118
- assert_equal 1, @obj1.position
119
- assert_equal 3, @obj1.reload.position
120
- end
121
-
122
- should "not change @obj2 from :position of 2" do
123
- assert_equal 2, @obj2.position
124
- assert_equal 2, @obj2.reload.position
125
- end
126
-
127
- should "change @obj3 from :position of 3 to 1" do
128
- assert_equal 3, @obj3.position
129
- assert_equal 1, @obj3.reload.position
130
- end
131
-
132
- should "not have touched @other scoped" do
133
- assert_equal 1, @other.position
134
- assert_equal 1, @other.reload.position
135
- end
136
-
137
- end
138
-
139
- end
140
-
141
- end