state_machine-audit_trail 0.1.1 → 0.1.2

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.
data/.travis.yml CHANGED
@@ -1,7 +1,5 @@
1
1
  rvm:
2
2
  - 1.8.7
3
3
  - 1.9.2
4
- - 1.9.3
5
- - ruby-head
4
+ - 1.9.3
6
5
  - ree
7
- - rbx
@@ -1,19 +1,16 @@
1
1
  class StateMachine::AuditTrail::Backend::ActiveRecord < StateMachine::AuditTrail::Backend
2
2
  attr_accessor :context_to_log
3
3
 
4
- def initialize(transition_class, context_to_log)
4
+ def initialize(transition_class, context_to_log = nil)
5
5
  self.context_to_log = context_to_log
6
6
  super transition_class
7
7
  end
8
+
8
9
  def log(object, event, from, to, timestamp = Time.now)
9
10
  # Let ActiveRecord manage the timestamp for us so it does the
10
11
  # right thing with regards to timezones.
11
12
  params = {foreign_key_field(object) => object.id, :event => event, :from => from, :to => to}
12
-
13
- if context_to_log.is_a?(Array.class)
14
- elsif !context_to_log.nil?
15
- params[context_to_log] = object.send(context_to_log)
16
- end
13
+ params[self.context_to_log] = object.send(self.context_to_log) unless self.context_to_log.nil?
17
14
  transition_class.create(params)
18
15
  end
19
16
 
@@ -2,7 +2,7 @@ require 'state_machine'
2
2
 
3
3
  module StateMachine::AuditTrail
4
4
 
5
- VERSION = "0.1.1"
5
+ VERSION = "0.1.2"
6
6
 
7
7
  def self.setup
8
8
  StateMachine::Machine.send(:include, StateMachine::AuditTrail::TransitionAuditing)
@@ -94,10 +94,9 @@ class ActiveRecordTestModelWithMultipleStateMachines < ActiveRecord::Base
94
94
  end
95
95
  end
96
96
 
97
- def create_transition_table(owner_class, state)
97
+ def create_transition_table(owner_class, state, add_context = false)
98
98
  class_name = "#{owner_class.name}#{state.to_s.camelize}Transition"
99
99
  ActiveRecord::Base.connection.create_table(class_name.tableize) do |t|
100
- add_context = owner_class.instance_methods.include? :context
101
100
  t.integer owner_class.name.foreign_key
102
101
  t.string :event
103
102
  t.string :from
@@ -108,6 +107,6 @@ def create_transition_table(owner_class, state)
108
107
  end
109
108
 
110
109
  create_transition_table(ActiveRecordTestModel, :state)
111
- create_transition_table(ActiveRecordTestModelWithContext, :state)
110
+ create_transition_table(ActiveRecordTestModelWithContext, :state, true)
112
111
  create_transition_table(ActiveRecordTestModelWithMultipleStateMachines, :first)
113
112
  create_transition_table(ActiveRecordTestModelWithMultipleStateMachines, :second)
@@ -1,7 +1,7 @@
1
1
  # -*- encoding: utf-8 -*-
2
2
  Gem::Specification.new do |s|
3
3
  s.name = "state_machine-audit_trail"
4
- s.version = "0.1.1"
4
+ s.version = "0.1.2"
5
5
  s.platform = Gem::Platform::RUBY
6
6
  s.authors = ["Willem van Bergen", "Jesse Storimer"]
7
7
  s.email = ["willem@shopify.com", "jesse@shopify.com"]
@@ -17,7 +17,7 @@ Gem::Specification.new do |s|
17
17
  s.add_development_dependency('rspec', '~> 2')
18
18
  s.add_development_dependency('activerecord', '~> 3')
19
19
  s.add_development_dependency('sqlite3')
20
- s.add_development_dependency('mongoid')
20
+ s.add_development_dependency('mongoid', '~> 2')
21
21
  s.add_development_dependency('bson_ext')
22
22
 
23
23
  s.files = %w(.gitignore .travis.yml Gemfile LICENSE README.rdoc Rakefile lib/state_machine-audit_trail.rb lib/state_machine/audit_trail.rb lib/state_machine/audit_trail/backend.rb lib/state_machine/audit_trail/backend/active_record.rb lib/state_machine/audit_trail/backend/mongoid.rb lib/state_machine/audit_trail/railtie.rb lib/state_machine/audit_trail/transition_auditing.rb lib/state_machine/audit_trail_generator.rb spec/helpers/active_record.rb spec/helpers/mongoid.rb spec/spec_helper.rb spec/state_machine/active_record_spec.rb spec/state_machine/audit_trail_spec.rb spec/state_machine/mongoid_spec.rb state_machine-audit_trail.gemspec tasks/github_gem.rb)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: state_machine-audit_trail
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.2
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -14,7 +14,7 @@ date: 2012-07-28 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: state_machine
17
- requirement: &70159599977080 !ruby/object:Gem::Requirement
17
+ requirement: &70321730548680 !ruby/object:Gem::Requirement
18
18
  none: false
19
19
  requirements:
20
20
  - - ! '>='
@@ -22,10 +22,10 @@ dependencies:
22
22
  version: '0'
23
23
  type: :runtime
24
24
  prerelease: false
25
- version_requirements: *70159599977080
25
+ version_requirements: *70321730548680
26
26
  - !ruby/object:Gem::Dependency
27
27
  name: rake
28
- requirement: &70159599976060 !ruby/object:Gem::Requirement
28
+ requirement: &70321730546980 !ruby/object:Gem::Requirement
29
29
  none: false
30
30
  requirements:
31
31
  - - ! '>='
@@ -33,10 +33,10 @@ dependencies:
33
33
  version: '0'
34
34
  type: :development
35
35
  prerelease: false
36
- version_requirements: *70159599976060
36
+ version_requirements: *70321730546980
37
37
  - !ruby/object:Gem::Dependency
38
38
  name: rspec
39
- requirement: &70159599992820 !ruby/object:Gem::Requirement
39
+ requirement: &70321730545180 !ruby/object:Gem::Requirement
40
40
  none: false
41
41
  requirements:
42
42
  - - ~>
@@ -44,10 +44,10 @@ dependencies:
44
44
  version: '2'
45
45
  type: :development
46
46
  prerelease: false
47
- version_requirements: *70159599992820
47
+ version_requirements: *70321730545180
48
48
  - !ruby/object:Gem::Dependency
49
49
  name: activerecord
50
- requirement: &70159599991160 !ruby/object:Gem::Requirement
50
+ requirement: &70321730566140 !ruby/object:Gem::Requirement
51
51
  none: false
52
52
  requirements:
53
53
  - - ~>
@@ -55,10 +55,10 @@ dependencies:
55
55
  version: '3'
56
56
  type: :development
57
57
  prerelease: false
58
- version_requirements: *70159599991160
58
+ version_requirements: *70321730566140
59
59
  - !ruby/object:Gem::Dependency
60
60
  name: sqlite3
61
- requirement: &70159599989960 !ruby/object:Gem::Requirement
61
+ requirement: &70321730564040 !ruby/object:Gem::Requirement
62
62
  none: false
63
63
  requirements:
64
64
  - - ! '>='
@@ -66,21 +66,21 @@ dependencies:
66
66
  version: '0'
67
67
  type: :development
68
68
  prerelease: false
69
- version_requirements: *70159599989960
69
+ version_requirements: *70321730564040
70
70
  - !ruby/object:Gem::Dependency
71
71
  name: mongoid
72
- requirement: &70159599988580 !ruby/object:Gem::Requirement
72
+ requirement: &70321730560820 !ruby/object:Gem::Requirement
73
73
  none: false
74
74
  requirements:
75
- - - ! '>='
75
+ - - ~>
76
76
  - !ruby/object:Gem::Version
77
- version: '0'
77
+ version: '2'
78
78
  type: :development
79
79
  prerelease: false
80
- version_requirements: *70159599988580
80
+ version_requirements: *70321730560820
81
81
  - !ruby/object:Gem::Dependency
82
82
  name: bson_ext
83
- requirement: &70159600002560 !ruby/object:Gem::Requirement
83
+ requirement: &70321730573720 !ruby/object:Gem::Requirement
84
84
  none: false
85
85
  requirements:
86
86
  - - ! '>='
@@ -88,7 +88,7 @@ dependencies:
88
88
  version: '0'
89
89
  type: :development
90
90
  prerelease: false
91
- version_requirements: *70159600002560
91
+ version_requirements: *70321730573720
92
92
  description: Log transitions on a state machine to support auditing and business process
93
93
  analytics.
94
94
  email:
@@ -134,7 +134,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
134
134
  version: '0'
135
135
  segments:
136
136
  - 0
137
- hash: 3519932254629100155
137
+ hash: -3894931399333668545
138
138
  required_rubygems_version: !ruby/object:Gem::Requirement
139
139
  none: false
140
140
  requirements:
@@ -143,7 +143,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
143
143
  version: '0'
144
144
  segments:
145
145
  - 0
146
- hash: 3519932254629100155
146
+ hash: -3894931399333668545
147
147
  requirements: []
148
148
  rubyforge_project: state_machine
149
149
  rubygems_version: 1.8.16