bitroleable 0.0.3 → 0.0.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +1 -0
- data/lib/bitroleable.rb +5 -1
- data/lib/bitroleable/version.rb +1 -1
- data/spec/models/bitroleable_spec.rb +4 -0
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 82e06054c077b8c25fe5ff27686a6a4d00604b7a
|
4
|
+
data.tar.gz: 92c5a1884cbe301b5df03c365d880415a6aa8d8c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 7077e57a216da8e53899298df363dd13ef34fc5aea9cf8a5298f0e974696483ed139ffd8c4e290d3da10fa946feec915715b514e3703c655550418287b851b18
|
7
|
+
data.tar.gz: 68856f993d0207f704fd4edea19f14f3062ef11a10e563fdfcbb5f189bd6ec0c7697fbf6b63cb867bb7ce8beb2f0e9ff8b4e4c241ed7d2c8e54fe75b69914d90
|
data/README.md
CHANGED
data/lib/bitroleable.rb
CHANGED
@@ -21,7 +21,7 @@ module Bitroleable
|
|
21
21
|
|
22
22
|
roles_list.each do |role|
|
23
23
|
define_method("#{role}?".to_sym) do
|
24
|
-
|
24
|
+
role?(role)
|
25
25
|
end
|
26
26
|
|
27
27
|
define_method("#{role}!".to_sym) do
|
@@ -64,6 +64,10 @@ module Bitroleable
|
|
64
64
|
end
|
65
65
|
end
|
66
66
|
|
67
|
+
define_method(:role?) do |role|
|
68
|
+
self[column] & self.class.role_value(role) > 0
|
69
|
+
end
|
70
|
+
|
67
71
|
define_singleton_method :role_value do |role|
|
68
72
|
index = roles_list.index(role.to_sym)
|
69
73
|
fail StandardError, "The role #{role} doesn't exist" if index.nil?
|
data/lib/bitroleable/version.rb
CHANGED
@@ -9,6 +9,10 @@ RSpec.describe Bitroleable, type: :model do
|
|
9
9
|
expect(user.user?).to be false
|
10
10
|
expect(user.moderator?).to be false
|
11
11
|
|
12
|
+
expect(user.role?(:admin)).to eq true
|
13
|
+
expect(user.role?(:user)).to eq false
|
14
|
+
expect(user.role?(:moderator)).to eq false
|
15
|
+
|
12
16
|
expect(user.role).to eq :admin
|
13
17
|
|
14
18
|
expect(User.where_role(:user).count).to eq 0
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: bitroleable
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Eugene Kondratiuk
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-
|
11
|
+
date: 2016-10-26 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|