mongoid-list 0.1.8 → 0.2.0

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.
@@ -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