affairs_of_state 0.1.3 → 0.1.4
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 +7 -0
- data/affairs_of_state.gemspec +1 -1
- data/lib/affairs_of_state.rb +7 -0
- data/lib/affairs_of_state/version.rb +1 -1
- data/spec/affairs_of_state_spec.rb +6 -0
- metadata +43 -31
checksums.yaml
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
---
|
|
2
|
+
SHA1:
|
|
3
|
+
metadata.gz: 82cee7ae333311fa7e78ad67e2dadf4519588278
|
|
4
|
+
data.tar.gz: c9e55851f6777e1c0db00e04752b620537cfdf4f
|
|
5
|
+
SHA512:
|
|
6
|
+
metadata.gz: 9a6113b5f54561f269db052207e4cdc352495ff90af4919422b16704db46b9c3da3898f41dd8660b68dab77fc7db6be71d523f374bc81bbd7088522bcfc527d7
|
|
7
|
+
data.tar.gz: 207c299cae44330886c9ba4a93dbbff7a1d1d15eb119d05ebbff8153957a56df780ea01ad855e77846a76e68cf7f05f9decc0ad4ad1e5479d172de4d3fe2bd4d
|
data/affairs_of_state.gemspec
CHANGED
|
@@ -18,7 +18,7 @@ Gem::Specification.new do |gem|
|
|
|
18
18
|
|
|
19
19
|
gem.add_dependency "activerecord", "> 3.0"
|
|
20
20
|
|
|
21
|
-
gem.add_development_dependency "rspec"
|
|
21
|
+
gem.add_development_dependency "rspec", "~> 3.0"
|
|
22
22
|
gem.add_development_dependency "sqlite3"
|
|
23
23
|
gem.add_development_dependency "pry"
|
|
24
24
|
|
data/lib/affairs_of_state.rb
CHANGED
|
@@ -17,6 +17,7 @@ module AffairsOfState
|
|
|
17
17
|
|
|
18
18
|
if @_status_options[:scopes]
|
|
19
19
|
@_statuses.each do |status|
|
|
20
|
+
raise "Affairs of State: '#{ status }' is not a valid status" unless valid_status?(status)
|
|
20
21
|
self.scope status.to_sym, -> { where(@_status_options[:column] => status.to_s) }
|
|
21
22
|
end
|
|
22
23
|
end
|
|
@@ -25,6 +26,12 @@ module AffairsOfState
|
|
|
25
26
|
extend SingletonMethods
|
|
26
27
|
true
|
|
27
28
|
end
|
|
29
|
+
|
|
30
|
+
private
|
|
31
|
+
|
|
32
|
+
def valid_status?(status)
|
|
33
|
+
![:new].include?(status.to_sym)
|
|
34
|
+
end
|
|
28
35
|
end
|
|
29
36
|
|
|
30
37
|
module InstanceMethods
|
|
@@ -161,4 +161,10 @@ describe AffairsOfState do
|
|
|
161
161
|
end
|
|
162
162
|
end
|
|
163
163
|
|
|
164
|
+
describe "invalid status name" do
|
|
165
|
+
it "should raise a good warning" do
|
|
166
|
+
expect(->{ class Pie8 < ActiveRecord::Base ; affairs_of_state :new ; end }).to raise_error("Affairs of State: 'new' is not a valid status")
|
|
167
|
+
end
|
|
168
|
+
end
|
|
169
|
+
|
|
164
170
|
end
|
metadata
CHANGED
|
@@ -1,60 +1,71 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: affairs_of_state
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.1.
|
|
5
|
-
prerelease:
|
|
4
|
+
version: 0.1.4
|
|
6
5
|
platform: ruby
|
|
7
6
|
authors:
|
|
8
7
|
- Kevin McPhillips
|
|
9
8
|
autorequire:
|
|
10
9
|
bindir: bin
|
|
11
10
|
cert_chain: []
|
|
12
|
-
date: 2014-06-
|
|
11
|
+
date: 2014-06-06 00:00:00.000000000 Z
|
|
13
12
|
dependencies:
|
|
14
13
|
- !ruby/object:Gem::Dependency
|
|
15
14
|
name: activerecord
|
|
16
|
-
requirement:
|
|
17
|
-
none: false
|
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
|
18
16
|
requirements:
|
|
19
|
-
- -
|
|
17
|
+
- - ">"
|
|
20
18
|
- !ruby/object:Gem::Version
|
|
21
19
|
version: '3.0'
|
|
22
20
|
type: :runtime
|
|
23
21
|
prerelease: false
|
|
24
|
-
version_requirements:
|
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
23
|
+
requirements:
|
|
24
|
+
- - ">"
|
|
25
|
+
- !ruby/object:Gem::Version
|
|
26
|
+
version: '3.0'
|
|
25
27
|
- !ruby/object:Gem::Dependency
|
|
26
28
|
name: rspec
|
|
27
|
-
requirement:
|
|
28
|
-
none: false
|
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
|
29
30
|
requirements:
|
|
30
|
-
- -
|
|
31
|
+
- - "~>"
|
|
31
32
|
- !ruby/object:Gem::Version
|
|
32
|
-
version: '0'
|
|
33
|
+
version: '3.0'
|
|
33
34
|
type: :development
|
|
34
35
|
prerelease: false
|
|
35
|
-
version_requirements:
|
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
37
|
+
requirements:
|
|
38
|
+
- - "~>"
|
|
39
|
+
- !ruby/object:Gem::Version
|
|
40
|
+
version: '3.0'
|
|
36
41
|
- !ruby/object:Gem::Dependency
|
|
37
42
|
name: sqlite3
|
|
38
|
-
requirement:
|
|
39
|
-
none: false
|
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
|
40
44
|
requirements:
|
|
41
|
-
- -
|
|
45
|
+
- - ">="
|
|
42
46
|
- !ruby/object:Gem::Version
|
|
43
47
|
version: '0'
|
|
44
48
|
type: :development
|
|
45
49
|
prerelease: false
|
|
46
|
-
version_requirements:
|
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
51
|
+
requirements:
|
|
52
|
+
- - ">="
|
|
53
|
+
- !ruby/object:Gem::Version
|
|
54
|
+
version: '0'
|
|
47
55
|
- !ruby/object:Gem::Dependency
|
|
48
56
|
name: pry
|
|
49
|
-
requirement:
|
|
50
|
-
none: false
|
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
|
51
58
|
requirements:
|
|
52
|
-
- -
|
|
59
|
+
- - ">="
|
|
53
60
|
- !ruby/object:Gem::Version
|
|
54
61
|
version: '0'
|
|
55
62
|
type: :development
|
|
56
63
|
prerelease: false
|
|
57
|
-
version_requirements:
|
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
65
|
+
requirements:
|
|
66
|
+
- - ">="
|
|
67
|
+
- !ruby/object:Gem::Version
|
|
68
|
+
version: '0'
|
|
58
69
|
description: Add a simple state to a gem, without all the hassle of a complex state
|
|
59
70
|
machine.
|
|
60
71
|
email:
|
|
@@ -63,9 +74,9 @@ executables: []
|
|
|
63
74
|
extensions: []
|
|
64
75
|
extra_rdoc_files: []
|
|
65
76
|
files:
|
|
66
|
-
- .gitignore
|
|
67
|
-
- .rspec
|
|
68
|
-
- .travis.yml
|
|
77
|
+
- ".gitignore"
|
|
78
|
+
- ".rspec"
|
|
79
|
+
- ".travis.yml"
|
|
69
80
|
- Gemfile
|
|
70
81
|
- LICENSE
|
|
71
82
|
- README.md
|
|
@@ -79,29 +90,30 @@ files:
|
|
|
79
90
|
homepage: http://github.com/kmcphillips/affairs_of_state
|
|
80
91
|
licenses:
|
|
81
92
|
- MIT
|
|
93
|
+
metadata: {}
|
|
82
94
|
post_install_message:
|
|
83
95
|
rdoc_options: []
|
|
84
96
|
require_paths:
|
|
85
97
|
- lib
|
|
86
98
|
required_ruby_version: !ruby/object:Gem::Requirement
|
|
87
|
-
none: false
|
|
88
99
|
requirements:
|
|
89
|
-
- -
|
|
100
|
+
- - ">="
|
|
90
101
|
- !ruby/object:Gem::Version
|
|
91
102
|
version: '0'
|
|
92
103
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
93
|
-
none: false
|
|
94
104
|
requirements:
|
|
95
|
-
- -
|
|
105
|
+
- - ">="
|
|
96
106
|
- !ruby/object:Gem::Version
|
|
97
107
|
version: '0'
|
|
98
108
|
requirements: []
|
|
99
109
|
rubyforge_project:
|
|
100
|
-
rubygems_version:
|
|
110
|
+
rubygems_version: 2.2.2
|
|
101
111
|
signing_key:
|
|
102
|
-
specification_version:
|
|
112
|
+
specification_version: 4
|
|
103
113
|
summary: You have an Active Record model. It nees to have multiple states, but not
|
|
104
114
|
complex rules. This gem gives you validation, easy check and change methods, and
|
|
105
115
|
a single configuration line.
|
|
106
|
-
test_files:
|
|
107
|
-
|
|
116
|
+
test_files:
|
|
117
|
+
- spec/affairs_of_state_spec.rb
|
|
118
|
+
- spec/db/.gitkeep
|
|
119
|
+
- spec/spec_helper.rb
|