groupify 0.6.0 → 0.6.1

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 2c496eba538ed9d9f3998e6086132cd9df318a58
4
- data.tar.gz: 2d2813af6aa7f156d1fc67587ca280751d3ec3a0
3
+ metadata.gz: 6659ce3db85de12762c3f79c7d6084d83d70572c
4
+ data.tar.gz: d739aefd23d01a7da5d56e6ef556af33934f5d2a
5
5
  SHA512:
6
- metadata.gz: 2c442e43c311e8da812874b504508d4d4a522ed586ed85aace281e78f5fb8930988b899ee8aca4f1e54fbb6747a10bd4c31255306647f36b2213c4248e92006c
7
- data.tar.gz: 58acbb5637dc636a1ac5c051b65870c863bfea519af172f5c4b7220b841722aecccac46ab42ab0aa8700981393f6f831707ea71a98d46d3a9dda585a71c88176
6
+ metadata.gz: fb6ca7c81085a7e848da6a29f04fbe3dd7ae4c00a675814973991bbbb3463eb7986545db4801ec115cf06f26b47928cff819f03e02e3cccaa5c54a28816128b9
7
+ data.tar.gz: 2e31869a71ef75b4648798078c1b7f101cb4bce2388a00b61b2fcf926641d677835281427b1fb13cbcea045253c3aed137757758259f5487fecbd4879da8eb41
data/.travis.yml CHANGED
@@ -3,15 +3,18 @@ services: mongodb
3
3
  rvm:
4
4
  - 1.9.3
5
5
  - 2.0.0
6
- - 2.1.0
7
- - 2.1.1
8
- - 2.1.2
6
+ - 2.1
7
+ - 2.2
9
8
  - jruby-19mode
10
9
  - rbx-2
11
10
  gemfile:
12
11
  - gemfiles/rails_3.2.gemfile
13
12
  - gemfiles/rails_4.0.gemfile
14
13
  - gemfiles/rails_4.1.gemfile
14
+ - gemfiles/rails_4.2.gemfile
15
15
  matrix:
16
+ exclude:
17
+ - rvm: 2.2
18
+ gemfile: gemfiles/rails_3.2.gemfile
16
19
  allow_failures:
17
20
  - rvm: rbx-2
data/Appraisals CHANGED
@@ -15,7 +15,7 @@ appraise "rails-4.1" do
15
15
  end
16
16
 
17
17
  appraise "rails-4.2" do
18
- gem 'activerecord', "~> 4.2.0.beta1"
18
+ gem 'activerecord', "~> 4.2.0"
19
19
 
20
20
  gem "mongoid", "~> 4.0"
21
21
  end
data/README.md CHANGED
@@ -1,5 +1,5 @@
1
1
  # Groupify
2
- [![Build Status](https://secure.travis-ci.org/dwbutler/groupify.png)](http://travis-ci.org/dwbutler/groupify) [![Coverage Status](https://coveralls.io/repos/dwbutler/groupify/badge.png?branch=master)](https://coveralls.io/r/dwbutler/groupify?branch=master) [![Code Climate](https://codeclimate.com/github/dwbutler/groupify.png)](https://codeclimate.com/github/dwbutler/groupify)
2
+ [![Build Status](https://secure.travis-ci.org/dwbutler/groupify.png)](http://travis-ci.org/dwbutler/groupify) [![Coverage Status](https://coveralls.io/repos/dwbutler/groupify/badge.png?branch=master)](https://coveralls.io/r/dwbutler/groupify?branch=master) [![Code Climate](https://codeclimate.com/github/dwbutler/groupify.png)](https://codeclimate.com/github/dwbutler/groupify) [![Inline docs](http://inch-ci.org/github/dwbutler/groupify.svg?branch=master)](http://inch-ci.org/github/dwbutler/groupify)
3
3
 
4
4
  Adds group and membership functionality to Rails models. Defines a polymorphic
5
5
  relationship between a Group model and any member model. Don't need a Group
@@ -4,7 +4,7 @@ source "https://rubygems.org"
4
4
 
5
5
  gem "jdbc-sqlite3", :platform => :jruby
6
6
  gem "activerecord-jdbcsqlite3-adapter", :platform => :jruby
7
- gem "activerecord", "~> 4.2.0.beta1"
7
+ gem "activerecord", "~> 4.2.0"
8
8
  gem "mongoid", "~> 4.0"
9
9
 
10
10
  group :development do
data/groupify.gemspec CHANGED
@@ -22,10 +22,9 @@ Gem::Specification.new do |gem|
22
22
  unless defined?(JRUBY_VERSION)
23
23
  gem.add_development_dependency "sqlite3"
24
24
  end
25
-
26
- gem.add_development_dependency "rake"
25
+
27
26
  gem.add_development_dependency "rspec", ">= 3"
28
27
 
29
- gem.add_development_dependency "database_cleaner"
28
+ gem.add_development_dependency "database_cleaner", "~> 1.3.0"
30
29
  gem.add_development_dependency "appraisal"
31
30
  end
@@ -138,7 +138,7 @@ module Groupify
138
138
  end
139
139
 
140
140
  def define_member_association(member_klass, association_name = nil)
141
- association_name ||= member_klass.name.to_s.pluralize.underscore.to_sym
141
+ association_name ||= member_klass.model_name.plural.to_sym
142
142
  source_type = member_klass.base_class
143
143
 
144
144
  if ActiveSupport::VERSION::MAJOR > 3
@@ -1,3 +1,3 @@
1
1
  module Groupify
2
- VERSION = "0.6.0"
2
+ VERSION = "0.6.1"
3
3
  end
@@ -59,6 +59,10 @@ ActiveRecord::Schema.define(:version => 1) do
59
59
  create_table :organizations do |t|
60
60
  t.string :name
61
61
  end
62
+
63
+ create_table :members do |t|
64
+ t.string :name
65
+ end
62
66
  end
63
67
 
64
68
  require 'groupify/adapter/active_record'
@@ -75,12 +79,18 @@ class Widget < ActiveRecord::Base
75
79
  groupify :group_member
76
80
  end
77
81
 
82
+ module Namespaced
83
+ class Member < ActiveRecord::Base
84
+ groupify :group_member
85
+ end
86
+ end
87
+
78
88
  class Project < ActiveRecord::Base
79
89
  groupify :named_group_member
80
90
  end
81
91
 
82
92
  class Group < ActiveRecord::Base
83
- groupify :group, members: [:users, :widgets], default_members: :users
93
+ groupify :group, members: [:users, :widgets, "namespaced/members"], default_members: :users
84
94
  end
85
95
 
86
96
  class Organization < Group
@@ -112,6 +122,7 @@ describe Groupify::ActiveRecord do
112
122
  let!(:user) { User.create! }
113
123
  let!(:group) { Group.create! }
114
124
  let(:widget) { Widget.create! }
125
+ let(:namespaced_member) { Namespaced::Member.create! }
115
126
 
116
127
  context 'when using groups' do
117
128
  it "members and groups are empty when initialized" do
@@ -136,6 +147,11 @@ describe Groupify::ActiveRecord do
136
147
  expect(group.members).to include(user)
137
148
  end
138
149
 
150
+ it "adds a namespaced member to a group" do
151
+ group.add(namespaced_member)
152
+ expect(group.namespaced_members).to include(namespaced_member)
153
+ end
154
+
139
155
  it "adds multiple members to a group" do
140
156
  group.add(user, widget)
141
157
  expect(group.users).to include(user)
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: groupify
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.0
4
+ version: 0.6.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - dwbutler
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-08-27 00:00:00.000000000 Z
11
+ date: 2015-01-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: mongoid
@@ -52,20 +52,6 @@ dependencies:
52
52
  - - ">="
53
53
  - !ruby/object:Gem::Version
54
54
  version: '0'
55
- - !ruby/object:Gem::Dependency
56
- name: rake
57
- requirement: !ruby/object:Gem::Requirement
58
- requirements:
59
- - - ">="
60
- - !ruby/object:Gem::Version
61
- version: '0'
62
- type: :development
63
- prerelease: false
64
- version_requirements: !ruby/object:Gem::Requirement
65
- requirements:
66
- - - ">="
67
- - !ruby/object:Gem::Version
68
- version: '0'
69
55
  - !ruby/object:Gem::Dependency
70
56
  name: rspec
71
57
  requirement: !ruby/object:Gem::Requirement
@@ -84,16 +70,16 @@ dependencies:
84
70
  name: database_cleaner
85
71
  requirement: !ruby/object:Gem::Requirement
86
72
  requirements:
87
- - - ">="
73
+ - - "~>"
88
74
  - !ruby/object:Gem::Version
89
- version: '0'
75
+ version: 1.3.0
90
76
  type: :development
91
77
  prerelease: false
92
78
  version_requirements: !ruby/object:Gem::Requirement
93
79
  requirements:
94
- - - ">="
80
+ - - "~>"
95
81
  - !ruby/object:Gem::Version
96
- version: '0'
82
+ version: 1.3.0
97
83
  - !ruby/object:Gem::Dependency
98
84
  name: appraisal
99
85
  requirement: !ruby/object:Gem::Requirement
@@ -169,7 +155,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
169
155
  version: '0'
170
156
  requirements: []
171
157
  rubyforge_project:
172
- rubygems_version: 2.2.2
158
+ rubygems_version: 2.4.2
173
159
  signing_key:
174
160
  specification_version: 4
175
161
  summary: Group functionality for Rails