stator 0.1.7 → 0.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/.ruby-version +1 -1
- data/lib/stator/model.rb +1 -1
- data/lib/stator/version.rb +2 -2
- data/spec/model_spec.rb +9 -0
- data/spec/support/models.rb +4 -0
- data/spec/support/schema.rb +1 -0
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: f80f0783f3bbff0062fee1ebbb2e4f32ebb2f4dc8605809aab25273482a5f09f
|
4
|
+
data.tar.gz: 8a8f5f91f72f29fae9579048aae6e1e42c105f9fabf29f698b5c2b9c0382279d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 21c4d54970b04402dba07658b815c13009bd0dd0a1f8c440202f62fa1f6670848a45abc163815c75d0ca69694343a139e76f5491ac83a768f364efd81c4f7500
|
7
|
+
data.tar.gz: '0280f986830d8065267696f1bc264123d75b06688d6327657e83ea7d49db7f95ffdf4f7eca0b1d8e3677cb3758d4e4d3eaee8b3bbba21c96c7e7725f949858ee'
|
data/.ruby-version
CHANGED
@@ -1 +1 @@
|
|
1
|
-
2.
|
1
|
+
2.5.1
|
data/lib/stator/model.rb
CHANGED
data/lib/stator/version.rb
CHANGED
data/spec/model_spec.rb
CHANGED
@@ -219,6 +219,15 @@ describe Stator::Model do
|
|
219
219
|
|
220
220
|
end
|
221
221
|
|
222
|
+
it 'should prepend the setting of the timestamp so other callbacks can use it' do
|
223
|
+
u = User.new
|
224
|
+
u.tagged_at.should be_nil
|
225
|
+
u.semiactivate
|
226
|
+
|
227
|
+
u.semiactivated_state_at.should_not be_nil
|
228
|
+
u.tagged_at.should_not be_nil
|
229
|
+
end
|
230
|
+
|
222
231
|
end
|
223
232
|
|
224
233
|
describe 'aliasing' do
|
data/spec/support/models.rb
CHANGED
@@ -1,6 +1,7 @@
|
|
1
1
|
class User < ActiveRecord::Base
|
2
2
|
extend Stator::Model
|
3
3
|
|
4
|
+
before_validation :set_tagged_at
|
4
5
|
|
5
6
|
# initial state = pending
|
6
7
|
stator track: true do
|
@@ -85,6 +86,9 @@ class User < ActiveRecord::Base
|
|
85
86
|
true
|
86
87
|
end
|
87
88
|
|
89
|
+
def set_tagged_at
|
90
|
+
self.tagged_at = self.semiactivated_state_at
|
91
|
+
end
|
88
92
|
end
|
89
93
|
|
90
94
|
class Animal < ActiveRecord::Base
|
data/spec/support/schema.rb
CHANGED
@@ -3,6 +3,7 @@ ActiveRecord::Schema.define(:version => 20130628161227) do
|
|
3
3
|
create_table "users", :force => true do |t|
|
4
4
|
t.string "name"
|
5
5
|
t.string "email"
|
6
|
+
t.datetime "tagged_at"
|
6
7
|
t.string "state", :default => 'pending'
|
7
8
|
t.boolean "activated", :default => true
|
8
9
|
t.datetime "created_at", :null => false
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: stator
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Mike Nelson
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-
|
11
|
+
date: 2018-10-23 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activerecord
|
@@ -75,7 +75,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
75
75
|
version: '0'
|
76
76
|
requirements: []
|
77
77
|
rubyforge_project:
|
78
|
-
rubygems_version: 2.
|
78
|
+
rubygems_version: 2.7.7
|
79
79
|
signing_key:
|
80
80
|
specification_version: 4
|
81
81
|
summary: The simplest of ActiveRecord state machines
|