mongoid-included 0.0.4 → 0.0.5

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,5 @@
1
+ module Invoices
2
+ class ItemsController < ApplicationController
3
+
4
+ end
5
+ end
@@ -0,0 +1,5 @@
1
+ module Invoices
2
+ class UsersController < ApplicationController
3
+
4
+ end
5
+ end
@@ -0,0 +1,3 @@
1
+ class InvoicesController < ApplicationController
2
+
3
+ end
@@ -0,0 +1,8 @@
1
+ class Invoice::Item
2
+ include Mongoid::Document
3
+ include Mongoid::DocumentInclusion
4
+
5
+ field :description
6
+
7
+ included_in :invoice
8
+ end
@@ -0,0 +1,8 @@
1
+ class Invoice::User
2
+ include Mongoid::Document
3
+ include Mongoid::DocumentInclusion
4
+
5
+ field :name
6
+
7
+ included_in :invoice
8
+ end
@@ -0,0 +1,8 @@
1
+ class Invoice
2
+ include Mongoid::Document
3
+ include Mongoid::DocumentInclusion
4
+ field :title
5
+
6
+ includes_many :items
7
+ includes_one :user
8
+ end
@@ -0,0 +1,8 @@
1
+ this folder contains an exemple of
2
+ the directory structure you can create with
3
+ namespaced models organized inside
4
+ the parent's document folder
5
+
6
+ This conventions respects url generation,
7
+ correct parameter names in form building
8
+ and template locations, incluing partials
data/example/routes.rb ADDED
@@ -0,0 +1,5 @@
1
+ MongoidIncluded::Application.routes.draw do
2
+ resources :invoices do
3
+ resources :items, :module => "invoices"
4
+ end
5
+ end
File without changes
File without changes
File without changes
File without changes
@@ -12,9 +12,9 @@ module Mongoid
12
12
 
13
13
  module ClassMethods
14
14
  def included_in(_model, args = {})
15
- raise NotMongoidDocument, "Document must be a Mongoid Document" unless mongoid_document? self
16
- raise NotMongoidDocument, "Parent document must be a Mongoid Document" unless mongoid_document? self.parent
17
- raise DocumentAlreadyIncluded, "Document can be included only in one class" if inclusion_model
15
+ raise NotMongoidDocument, "Child document must include Mongoid::Document" unless mongoid_document? self
16
+ raise NotMongoidDocument, "Parent document must include Mongoid::Document" unless mongoid_document? self.parent
17
+ raise DocumentAlreadyIncluded, "Child document already included" if inclusion_model
18
18
  embedded_in _model, args
19
19
  self.inclusion_model = true
20
20
  end
@@ -60,8 +60,8 @@ module Mongoid
60
60
  end
61
61
 
62
62
  def verify_dependencies(_model)
63
- raise NotMongoidDocument, "Document must be a Mongoid Document" unless mongoid_document? self
64
- raise NotMongoidDocument, "Descendent document must be a Mongoid Document" unless mongoid_document? model_klass(included_klass(_model))
63
+ raise NotMongoidDocument, "Parent document must include Mongoid::Document" unless mongoid_document? self
64
+ raise NotMongoidDocument, "Child document must include Mongoid::Document" unless mongoid_document? model_klass(included_klass(_model))
65
65
  end
66
66
 
67
67
  end
@@ -1,5 +1,5 @@
1
1
  module Mongoid
2
2
  module Included
3
- VERSION = "0.0.4"
3
+ VERSION = "0.0.5"
4
4
  end
5
5
  end
@@ -21,7 +21,7 @@ Gem::Specification.new do |s|
21
21
 
22
22
  s.add_runtime_dependency("activemodel", ["~> 3.1.0.beta1"])
23
23
  s.add_runtime_dependency(%q<mongoid>, ["~> 2.0"])
24
- s.add_development_dependency("rspec", ["~> 2.6"])
24
+ s.add_development_dependency("rspec", ["~> 2.6.0"])
25
25
  s.add_development_dependency("bson_ext", ["~> 1.3"])
26
26
 
27
27
  end
@@ -21,7 +21,7 @@ describe "Mongoid::Included" do
21
21
  Invoice.relations["items"].class_name.should == "Invoice::Item"
22
22
  end
23
23
 
24
- it "issues an error if not mongoid document" do
24
+ it "issues an error if parent is not mongoid document" do
25
25
  Object.const_set "NonMongoidDocument", Class.new
26
26
  NonMongoidDocument.send(:include, Mongoid::DocumentInclusion)
27
27
  NonMongoidDocument.const_set "NonMongoidEmbed", Class.new
@@ -29,7 +29,7 @@ describe "Mongoid::Included" do
29
29
  NonMongoidDocument.includes_many :non_mongoid_embeds
30
30
  rescue => e
31
31
  e.class.should == Mongoid::DocumentInclusion::NotMongoidDocument
32
- e.message.should =~ /Document must be a Mongoid Document/
32
+ e.message.should =~ /Parent document must include Mongoid::Document/
33
33
  end
34
34
  end
35
35
 
@@ -42,7 +42,7 @@ describe "Mongoid::Included" do
42
42
  NonMongoidDocument.includes_many :non_mongoid_embeds
43
43
  rescue => e
44
44
  e.class.should == Mongoid::DocumentInclusion::NotMongoidDocument
45
- e.message.should =~ /Descendent document must be a Mongoid Document/
45
+ e.message.should =~ /Child document must include Mongoid::Document/
46
46
  end
47
47
  end
48
48
 
@@ -59,28 +59,30 @@ describe "Mongoid::Included" do
59
59
  Invoice::Item.relations["invoice"].macro.should == :embedded_in
60
60
  end
61
61
 
62
- it "issues an error if parent is not mongoid document" do
62
+ it "issues an error if child is not mongoid document" do
63
63
  Object.const_set "NonMongoidDocument", Class.new
64
- NonMongoidDocument.const_set "NonMongoidParent", Class.new
64
+ NonMongoidDocument.const_set "NonMongoidChild", Class.new
65
65
  NonMongoidDocument.send(:include, Mongoid::Document)
66
66
  NonMongoidDocument.send(:include, Mongoid::DocumentInclusion)
67
+ NonMongoidDocument::NonMongoidChild.send(:include, Mongoid::DocumentInclusion)
67
68
  begin
68
- NonMongoidDocument.included_in :invoice
69
+ NonMongoidDocument::NonMongoidChild.included_in :invoice
69
70
  rescue => e
70
71
  e.class.should == Mongoid::DocumentInclusion::NotMongoidDocument
71
- e.message.should =~ /Parent document must be a Mongoid Document/
72
+ e.message.should =~ /Child document must include Mongoid::Document/
72
73
  end
73
74
  end
74
75
 
75
76
  it "issues an error if parent is not mongoid document" do
76
77
  Object.const_set "NonMongoidDocument", Class.new
77
- NonMongoidDocument.const_set "NonMongoidParent", Class.new
78
- NonMongoidDocument.send(:include, Mongoid::DocumentInclusion)
78
+ NonMongoidDocument.const_set "NonMongoidChild", Class.new
79
+ NonMongoidDocument::NonMongoidChild.send(:include, Mongoid::Document)
80
+ NonMongoidDocument::NonMongoidChild.send(:include, Mongoid::DocumentInclusion)
79
81
  begin
80
- NonMongoidDocument.included_in :invoice
82
+ NonMongoidDocument::NonMongoidChild.included_in :invoice
81
83
  rescue => e
82
84
  e.class.should == Mongoid::DocumentInclusion::NotMongoidDocument
83
- e.message.should =~ /Document must be a Mongoid Document/
85
+ e.message.should =~ /Parent document must include Mongoid::Document/
84
86
  end
85
87
  end
86
88
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mongoid-included
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.4
4
+ version: 0.0.5
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -14,7 +14,7 @@ default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: activemodel
17
- requirement: &2160464360 !ruby/object:Gem::Requirement
17
+ requirement: &2156553760 !ruby/object:Gem::Requirement
18
18
  none: false
19
19
  requirements:
20
20
  - - ~>
@@ -22,10 +22,10 @@ dependencies:
22
22
  version: 3.1.0.beta1
23
23
  type: :runtime
24
24
  prerelease: false
25
- version_requirements: *2160464360
25
+ version_requirements: *2156553760
26
26
  - !ruby/object:Gem::Dependency
27
27
  name: mongoid
28
- requirement: &2160463820 !ruby/object:Gem::Requirement
28
+ requirement: &2156553220 !ruby/object:Gem::Requirement
29
29
  none: false
30
30
  requirements:
31
31
  - - ~>
@@ -33,21 +33,21 @@ dependencies:
33
33
  version: '2.0'
34
34
  type: :runtime
35
35
  prerelease: false
36
- version_requirements: *2160463820
36
+ version_requirements: *2156553220
37
37
  - !ruby/object:Gem::Dependency
38
38
  name: rspec
39
- requirement: &2160463300 !ruby/object:Gem::Requirement
39
+ requirement: &2156552720 !ruby/object:Gem::Requirement
40
40
  none: false
41
41
  requirements:
42
42
  - - ~>
43
43
  - !ruby/object:Gem::Version
44
- version: '2.6'
44
+ version: 2.6.0
45
45
  type: :development
46
46
  prerelease: false
47
- version_requirements: *2160463300
47
+ version_requirements: *2156552720
48
48
  - !ruby/object:Gem::Dependency
49
49
  name: bson_ext
50
- requirement: &2160462780 !ruby/object:Gem::Requirement
50
+ requirement: &2156552240 !ruby/object:Gem::Requirement
51
51
  none: false
52
52
  requirements:
53
53
  - - ~>
@@ -55,7 +55,7 @@ dependencies:
55
55
  version: '1.3'
56
56
  type: :development
57
57
  prerelease: false
58
- version_requirements: *2160462780
58
+ version_requirements: *2156552240
59
59
  description: Helper to facilitate inclusion of namespaced documents in another Mongoid
60
60
  Document
61
61
  email: angelim@angelim.com.br
@@ -71,6 +71,18 @@ files:
71
71
  - LICENSE
72
72
  - README.md
73
73
  - Rakefile
74
+ - example/controllers/invoices/items_controller.rb
75
+ - example/controllers/invoices/user_controller.rb
76
+ - example/controllers/invoices_controller.rb
77
+ - example/models/invoice.rb
78
+ - example/models/invoice/item.rb
79
+ - example/models/invoice/user.rb
80
+ - example/readme.txt
81
+ - example/routes.rb
82
+ - example/views/application/index.html.erb
83
+ - example/views/invoices/index.html.erb
84
+ - example/views/invoices/items/_item.html.erb
85
+ - example/views/layouts/application.html.erb
74
86
  - lib/mongoid-included.rb
75
87
  - lib/mongoid-included/document_inclusion.rb
76
88
  - lib/mongoid-included/embedded_name.rb