active_interaction 0.10.2 → 1.0.0
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 +4 -4
- data/CHANGELOG.md +14 -1
- data/README.md +32 -35
- data/lib/active_interaction.rb +14 -6
- data/lib/active_interaction/base.rb +155 -135
- data/lib/active_interaction/concerns/active_modelable.rb +46 -0
- data/lib/active_interaction/{modules/overload_hash.rb → concerns/hashable.rb} +5 -1
- data/lib/active_interaction/concerns/missable.rb +47 -0
- data/lib/active_interaction/concerns/runnable.rb +156 -0
- data/lib/active_interaction/errors.rb +50 -14
- data/lib/active_interaction/filter.rb +33 -45
- data/lib/active_interaction/filters/abstract_date_time_filter.rb +24 -15
- data/lib/active_interaction/filters/abstract_filter.rb +18 -0
- data/lib/active_interaction/filters/abstract_numeric_filter.rb +13 -8
- data/lib/active_interaction/filters/array_filter.rb +42 -35
- data/lib/active_interaction/filters/boolean_filter.rb +8 -11
- data/lib/active_interaction/filters/date_filter.rb +11 -15
- data/lib/active_interaction/filters/date_time_filter.rb +11 -15
- data/lib/active_interaction/filters/file_filter.rb +11 -11
- data/lib/active_interaction/filters/float_filter.rb +7 -15
- data/lib/active_interaction/filters/hash_filter.rb +18 -24
- data/lib/active_interaction/filters/integer_filter.rb +7 -14
- data/lib/active_interaction/filters/model_filter.rb +13 -14
- data/lib/active_interaction/filters/string_filter.rb +11 -14
- data/lib/active_interaction/filters/symbol_filter.rb +6 -9
- data/lib/active_interaction/filters/time_filter.rb +13 -16
- data/lib/active_interaction/modules/validation.rb +9 -4
- data/lib/active_interaction/version.rb +5 -2
- data/spec/active_interaction/base_spec.rb +109 -4
- data/spec/active_interaction/{modules/active_model_spec.rb → concerns/active_modelable_spec.rb} +15 -3
- data/spec/active_interaction/{modules/overload_hash_spec.rb → concerns/hashable_spec.rb} +2 -3
- data/spec/active_interaction/{modules/method_missing_spec.rb → concerns/missable_spec.rb} +38 -3
- data/spec/active_interaction/concerns/runnable_spec.rb +192 -0
- data/spec/active_interaction/filters/abstract_filter_spec.rb +8 -0
- data/spec/active_interaction/filters/abstract_numeric_filter_spec.rb +1 -1
- data/spec/active_interaction/modules/validation_spec.rb +2 -2
- data/spec/support/concerns.rb +15 -0
- data/spec/support/filters.rb +5 -5
- data/spec/support/interactions.rb +6 -5
- metadata +47 -73
- data/lib/active_interaction/filters.rb +0 -28
- data/lib/active_interaction/modules/active_model.rb +0 -32
- data/lib/active_interaction/modules/core.rb +0 -70
- data/lib/active_interaction/modules/method_missing.rb +0 -20
- data/spec/active_interaction/filters_spec.rb +0 -23
- data/spec/active_interaction/modules/core_spec.rb +0 -114
@@ -0,0 +1,192 @@
|
|
1
|
+
# coding: utf-8
|
2
|
+
|
3
|
+
require 'spec_helper'
|
4
|
+
|
5
|
+
describe ActiveRecord::Base do
|
6
|
+
describe '.transaction' do
|
7
|
+
it 'raises an error' do
|
8
|
+
expect { described_class.transaction }.to raise_error LocalJumpError
|
9
|
+
end
|
10
|
+
|
11
|
+
context 'with a block' do
|
12
|
+
it 'yields to the block' do
|
13
|
+
expect { |b| described_class.transaction(&b) }.to yield_with_no_args
|
14
|
+
end
|
15
|
+
|
16
|
+
it 'accepts an argument' do
|
17
|
+
expect { described_class.transaction(nil) {} }.to_not raise_error
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
22
|
+
|
23
|
+
describe ActiveInteraction::Runnable do
|
24
|
+
include_context 'concerns', ActiveInteraction::Runnable
|
25
|
+
|
26
|
+
shared_context 'with an error' do
|
27
|
+
before { instance.errors.add(:base) }
|
28
|
+
end
|
29
|
+
|
30
|
+
shared_context 'with a validator' do
|
31
|
+
before { klass.validate { errors.add(:base) } }
|
32
|
+
end
|
33
|
+
|
34
|
+
shared_context 'with #execute defined' do
|
35
|
+
before { klass.send(:define_method, :execute) { rand } }
|
36
|
+
end
|
37
|
+
|
38
|
+
context 'validations' do
|
39
|
+
describe '#runtime_errors' do
|
40
|
+
include_context 'with an error'
|
41
|
+
|
42
|
+
it 'is invalid' do
|
43
|
+
instance.result = nil
|
44
|
+
expect(instance).to_not be_valid
|
45
|
+
end
|
46
|
+
|
47
|
+
it 'becomes valid if errors are cleared' do
|
48
|
+
instance.result = nil
|
49
|
+
instance.errors.clear
|
50
|
+
instance.result = nil
|
51
|
+
expect(instance).to be_valid
|
52
|
+
end
|
53
|
+
end
|
54
|
+
end
|
55
|
+
|
56
|
+
describe '#errors' do
|
57
|
+
it 'returns the errors' do
|
58
|
+
expect(instance.errors).to be_an ActiveInteraction::Errors
|
59
|
+
end
|
60
|
+
end
|
61
|
+
|
62
|
+
describe '#execute' do
|
63
|
+
it 'raises an error' do
|
64
|
+
expect { instance.execute }.to raise_error NotImplementedError
|
65
|
+
end
|
66
|
+
end
|
67
|
+
|
68
|
+
describe '#result' do
|
69
|
+
it 'returns the result' do
|
70
|
+
expect(instance.result).to be_nil
|
71
|
+
end
|
72
|
+
end
|
73
|
+
|
74
|
+
describe '#result=' do
|
75
|
+
let(:result) { double }
|
76
|
+
|
77
|
+
it 'returns the result' do
|
78
|
+
expect(instance.result = result).to eq result
|
79
|
+
end
|
80
|
+
|
81
|
+
it 'sets the result' do
|
82
|
+
instance.result = result
|
83
|
+
expect(instance.result).to eq result
|
84
|
+
end
|
85
|
+
|
86
|
+
context 'with an error' do
|
87
|
+
include_context 'with an error'
|
88
|
+
|
89
|
+
it 'does not set the result' do
|
90
|
+
instance.result = result
|
91
|
+
expect(instance.result).to be_nil
|
92
|
+
end
|
93
|
+
end
|
94
|
+
|
95
|
+
context 'with a validator' do
|
96
|
+
include_context 'with a validator'
|
97
|
+
|
98
|
+
it 'sets the result' do
|
99
|
+
instance.result = result
|
100
|
+
expect(instance.result).to eq result
|
101
|
+
end
|
102
|
+
end
|
103
|
+
end
|
104
|
+
|
105
|
+
describe '#valid?' do
|
106
|
+
let(:result) { double }
|
107
|
+
|
108
|
+
it 'returns true' do
|
109
|
+
expect(instance).to be_valid
|
110
|
+
end
|
111
|
+
|
112
|
+
context 'with an error' do
|
113
|
+
include_context 'with an error'
|
114
|
+
|
115
|
+
it 'returns true' do
|
116
|
+
expect(instance).to be_valid
|
117
|
+
end
|
118
|
+
end
|
119
|
+
|
120
|
+
context 'with a validator' do
|
121
|
+
include_context 'with a validator'
|
122
|
+
|
123
|
+
it 'returns false' do
|
124
|
+
expect(instance).to_not be_valid
|
125
|
+
end
|
126
|
+
|
127
|
+
it 'sets the result to nil' do
|
128
|
+
instance.result = result
|
129
|
+
instance.valid?
|
130
|
+
expect(instance.result).to be_nil
|
131
|
+
end
|
132
|
+
end
|
133
|
+
end
|
134
|
+
|
135
|
+
describe '.run' do
|
136
|
+
let(:outcome) { klass.run }
|
137
|
+
|
138
|
+
it 'raises an error' do
|
139
|
+
expect { outcome }.to raise_error NotImplementedError
|
140
|
+
end
|
141
|
+
|
142
|
+
context 'with #execute defined' do
|
143
|
+
include_context 'with #execute defined'
|
144
|
+
|
145
|
+
it 'returns an instance of Runnable' do
|
146
|
+
expect(outcome).to be_a klass
|
147
|
+
end
|
148
|
+
|
149
|
+
it 'sets the result' do
|
150
|
+
expect(outcome.result).to_not be_nil
|
151
|
+
end
|
152
|
+
|
153
|
+
context 'with a validator' do
|
154
|
+
include_context 'with a validator'
|
155
|
+
|
156
|
+
it 'returns an instance of Runnable' do
|
157
|
+
expect(outcome).to be_a klass
|
158
|
+
end
|
159
|
+
|
160
|
+
it 'sets the result to nil' do
|
161
|
+
expect(outcome.result).to be_nil
|
162
|
+
end
|
163
|
+
end
|
164
|
+
end
|
165
|
+
end
|
166
|
+
|
167
|
+
describe '.run!' do
|
168
|
+
let(:result) { klass.run! }
|
169
|
+
|
170
|
+
it 'raises an error' do
|
171
|
+
expect { result }.to raise_error NotImplementedError
|
172
|
+
end
|
173
|
+
|
174
|
+
context 'with #execute defined' do
|
175
|
+
include_context 'with #execute defined'
|
176
|
+
|
177
|
+
it 'returns the result' do
|
178
|
+
expect(result).to_not be_nil
|
179
|
+
end
|
180
|
+
|
181
|
+
context 'with a validator' do
|
182
|
+
include_context 'with a validator'
|
183
|
+
|
184
|
+
it 'raises an error' do
|
185
|
+
expect do
|
186
|
+
result
|
187
|
+
end.to raise_error ActiveInteraction::InvalidInteractionError
|
188
|
+
end
|
189
|
+
end
|
190
|
+
end
|
191
|
+
end
|
192
|
+
end
|
@@ -6,11 +6,11 @@ describe ActiveInteraction::Validation do
|
|
6
6
|
describe '.validate(filters, inputs)' do
|
7
7
|
let(:inputs) { {} }
|
8
8
|
let(:filter) { ActiveInteraction::Filter.new(:name, {}) }
|
9
|
-
let(:filters) {
|
9
|
+
let(:filters) { { filter.name => filter } }
|
10
10
|
let(:result) { described_class.validate(filters, inputs) }
|
11
11
|
|
12
12
|
context 'no filters are given' do
|
13
|
-
let(:filters) {
|
13
|
+
let(:filters) { {} }
|
14
14
|
|
15
15
|
it 'returns no errors' do
|
16
16
|
expect(result).to eq []
|
data/spec/support/filters.rb
CHANGED
@@ -174,17 +174,17 @@ shared_examples_for 'a filter' do
|
|
174
174
|
end
|
175
175
|
|
176
176
|
describe '#filters' do
|
177
|
-
it 'returns
|
178
|
-
expect(filter.filters).to
|
177
|
+
it 'returns Hash' do
|
178
|
+
expect(filter.filters).to be_a Hash
|
179
179
|
end
|
180
180
|
end
|
181
181
|
|
182
|
-
describe '#
|
182
|
+
describe '#default?' do
|
183
183
|
context 'optional' do
|
184
184
|
include_context 'optional'
|
185
185
|
|
186
186
|
it 'returns true' do
|
187
|
-
expect(filter).to
|
187
|
+
expect(filter).to be_default
|
188
188
|
end
|
189
189
|
end
|
190
190
|
|
@@ -192,7 +192,7 @@ shared_examples_for 'a filter' do
|
|
192
192
|
include_context 'required'
|
193
193
|
|
194
194
|
it 'returns false' do
|
195
|
-
expect(filter).to_not
|
195
|
+
expect(filter).to_not be_default
|
196
196
|
end
|
197
197
|
end
|
198
198
|
end
|
@@ -21,11 +21,12 @@ shared_examples_for 'an interaction' do |type, generator, filter_options = {}|
|
|
21
21
|
|
22
22
|
let(:described_class) do
|
23
23
|
Class.new(TestInteraction) do
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
24
|
+
public_send(type, :required, filter_options)
|
25
|
+
public_send(type, :optional, filter_options.merge(default: nil))
|
26
|
+
public_send(type, :default,
|
27
|
+
filter_options.merge(default: generator.call))
|
28
|
+
public_send(type, :defaults_1, :defaults_2,
|
29
|
+
filter_options.merge(default: generator.call))
|
29
30
|
end
|
30
31
|
end
|
31
32
|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: active_interaction
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 1.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Aaron Lasseigne
|
@@ -9,152 +9,124 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2014-01-
|
12
|
+
date: 2014-01-22 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: activemodel
|
16
16
|
requirement: !ruby/object:Gem::Requirement
|
17
17
|
requirements:
|
18
|
-
- -
|
18
|
+
- - ">="
|
19
19
|
- !ruby/object:Gem::Version
|
20
20
|
version: '3'
|
21
|
-
- - <
|
21
|
+
- - "<"
|
22
22
|
- !ruby/object:Gem::Version
|
23
23
|
version: '5'
|
24
24
|
type: :runtime
|
25
25
|
prerelease: false
|
26
26
|
version_requirements: !ruby/object:Gem::Requirement
|
27
27
|
requirements:
|
28
|
-
- -
|
28
|
+
- - ">="
|
29
29
|
- !ruby/object:Gem::Version
|
30
30
|
version: '3'
|
31
|
-
- - <
|
31
|
+
- - "<"
|
32
32
|
- !ruby/object:Gem::Version
|
33
33
|
version: '5'
|
34
34
|
- !ruby/object:Gem::Dependency
|
35
35
|
name: bundler
|
36
36
|
requirement: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
|
-
- - ~>
|
38
|
+
- - "~>"
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: '1.5'
|
41
41
|
type: :development
|
42
42
|
prerelease: false
|
43
43
|
version_requirements: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
|
-
- - ~>
|
45
|
+
- - "~>"
|
46
46
|
- !ruby/object:Gem::Version
|
47
47
|
version: '1.5'
|
48
48
|
- !ruby/object:Gem::Dependency
|
49
49
|
name: coveralls
|
50
50
|
requirement: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
|
-
- - ~>
|
52
|
+
- - "~>"
|
53
53
|
- !ruby/object:Gem::Version
|
54
54
|
version: '0.7'
|
55
55
|
type: :development
|
56
56
|
prerelease: false
|
57
57
|
version_requirements: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
|
-
- - ~>
|
59
|
+
- - "~>"
|
60
60
|
- !ruby/object:Gem::Version
|
61
61
|
version: '0.7'
|
62
62
|
- !ruby/object:Gem::Dependency
|
63
63
|
name: guard-rspec
|
64
64
|
requirement: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
|
-
- - ~>
|
66
|
+
- - "~>"
|
67
67
|
- !ruby/object:Gem::Version
|
68
68
|
version: '4.2'
|
69
69
|
type: :development
|
70
70
|
prerelease: false
|
71
71
|
version_requirements: !ruby/object:Gem::Requirement
|
72
72
|
requirements:
|
73
|
-
- - ~>
|
73
|
+
- - "~>"
|
74
74
|
- !ruby/object:Gem::Version
|
75
75
|
version: '4.2'
|
76
76
|
- !ruby/object:Gem::Dependency
|
77
77
|
name: rake
|
78
78
|
requirement: !ruby/object:Gem::Requirement
|
79
79
|
requirements:
|
80
|
-
- - ~>
|
80
|
+
- - "~>"
|
81
81
|
- !ruby/object:Gem::Version
|
82
82
|
version: '10.1'
|
83
83
|
type: :development
|
84
84
|
prerelease: false
|
85
85
|
version_requirements: !ruby/object:Gem::Requirement
|
86
86
|
requirements:
|
87
|
-
- - ~>
|
87
|
+
- - "~>"
|
88
88
|
- !ruby/object:Gem::Version
|
89
89
|
version: '10.1'
|
90
|
-
- !ruby/object:Gem::Dependency
|
91
|
-
name: rb-fsevent
|
92
|
-
requirement: !ruby/object:Gem::Requirement
|
93
|
-
requirements:
|
94
|
-
- - ~>
|
95
|
-
- !ruby/object:Gem::Version
|
96
|
-
version: '0.9'
|
97
|
-
type: :development
|
98
|
-
prerelease: false
|
99
|
-
version_requirements: !ruby/object:Gem::Requirement
|
100
|
-
requirements:
|
101
|
-
- - ~>
|
102
|
-
- !ruby/object:Gem::Version
|
103
|
-
version: '0.9'
|
104
90
|
- !ruby/object:Gem::Dependency
|
105
91
|
name: rdoc
|
106
92
|
requirement: !ruby/object:Gem::Requirement
|
107
93
|
requirements:
|
108
|
-
- - ~>
|
94
|
+
- - "~>"
|
109
95
|
- !ruby/object:Gem::Version
|
110
96
|
version: '4.1'
|
111
97
|
type: :development
|
112
98
|
prerelease: false
|
113
99
|
version_requirements: !ruby/object:Gem::Requirement
|
114
100
|
requirements:
|
115
|
-
- - ~>
|
101
|
+
- - "~>"
|
116
102
|
- !ruby/object:Gem::Version
|
117
103
|
version: '4.1'
|
118
104
|
- !ruby/object:Gem::Dependency
|
119
|
-
name:
|
120
|
-
requirement: !ruby/object:Gem::Requirement
|
121
|
-
requirements:
|
122
|
-
- - ~>
|
123
|
-
- !ruby/object:Gem::Version
|
124
|
-
version: '2.14'
|
125
|
-
type: :development
|
126
|
-
prerelease: false
|
127
|
-
version_requirements: !ruby/object:Gem::Requirement
|
128
|
-
requirements:
|
129
|
-
- - ~>
|
130
|
-
- !ruby/object:Gem::Version
|
131
|
-
version: '2.14'
|
132
|
-
- !ruby/object:Gem::Dependency
|
133
|
-
name: rubocop
|
105
|
+
name: guard-rubocop
|
134
106
|
requirement: !ruby/object:Gem::Requirement
|
135
107
|
requirements:
|
136
|
-
- - ~>
|
108
|
+
- - "~>"
|
137
109
|
- !ruby/object:Gem::Version
|
138
|
-
version: '0
|
110
|
+
version: '1.0'
|
139
111
|
type: :development
|
140
112
|
prerelease: false
|
141
113
|
version_requirements: !ruby/object:Gem::Requirement
|
142
114
|
requirements:
|
143
|
-
- - ~>
|
115
|
+
- - "~>"
|
144
116
|
- !ruby/object:Gem::Version
|
145
|
-
version: '0
|
117
|
+
version: '1.0'
|
146
118
|
- !ruby/object:Gem::Dependency
|
147
119
|
name: yard
|
148
120
|
requirement: !ruby/object:Gem::Requirement
|
149
121
|
requirements:
|
150
|
-
- - ~>
|
122
|
+
- - "~>"
|
151
123
|
- !ruby/object:Gem::Version
|
152
124
|
version: '0.8'
|
153
125
|
type: :development
|
154
126
|
prerelease: false
|
155
127
|
version_requirements: !ruby/object:Gem::Requirement
|
156
128
|
requirements:
|
157
|
-
- - ~>
|
129
|
+
- - "~>"
|
158
130
|
- !ruby/object:Gem::Version
|
159
131
|
version: '0.8'
|
160
132
|
description: Manage application specific business logic.
|
@@ -165,15 +137,15 @@ executables: []
|
|
165
137
|
extensions: []
|
166
138
|
extra_rdoc_files: []
|
167
139
|
files:
|
168
|
-
- CHANGELOG.md
|
169
|
-
- LICENSE.txt
|
170
|
-
- README.md
|
171
|
-
- lib/active_interaction.rb
|
172
140
|
- lib/active_interaction/base.rb
|
141
|
+
- lib/active_interaction/concerns/active_modelable.rb
|
142
|
+
- lib/active_interaction/concerns/hashable.rb
|
143
|
+
- lib/active_interaction/concerns/missable.rb
|
144
|
+
- lib/active_interaction/concerns/runnable.rb
|
173
145
|
- lib/active_interaction/errors.rb
|
174
146
|
- lib/active_interaction/filter.rb
|
175
|
-
- lib/active_interaction/filters.rb
|
176
147
|
- lib/active_interaction/filters/abstract_date_time_filter.rb
|
148
|
+
- lib/active_interaction/filters/abstract_filter.rb
|
177
149
|
- lib/active_interaction/filters/abstract_numeric_filter.rb
|
178
150
|
- lib/active_interaction/filters/array_filter.rb
|
179
151
|
- lib/active_interaction/filters/boolean_filter.rb
|
@@ -187,16 +159,18 @@ files:
|
|
187
159
|
- lib/active_interaction/filters/string_filter.rb
|
188
160
|
- lib/active_interaction/filters/symbol_filter.rb
|
189
161
|
- lib/active_interaction/filters/time_filter.rb
|
190
|
-
- lib/active_interaction/modules/active_model.rb
|
191
|
-
- lib/active_interaction/modules/core.rb
|
192
|
-
- lib/active_interaction/modules/method_missing.rb
|
193
|
-
- lib/active_interaction/modules/overload_hash.rb
|
194
162
|
- lib/active_interaction/modules/validation.rb
|
195
163
|
- lib/active_interaction/version.rb
|
164
|
+
- lib/active_interaction.rb
|
196
165
|
- spec/active_interaction/base_spec.rb
|
166
|
+
- spec/active_interaction/concerns/active_modelable_spec.rb
|
167
|
+
- spec/active_interaction/concerns/hashable_spec.rb
|
168
|
+
- spec/active_interaction/concerns/missable_spec.rb
|
169
|
+
- spec/active_interaction/concerns/runnable_spec.rb
|
197
170
|
- spec/active_interaction/errors_spec.rb
|
198
171
|
- spec/active_interaction/filter_spec.rb
|
199
172
|
- spec/active_interaction/filters/abstract_date_time_filter_spec.rb
|
173
|
+
- spec/active_interaction/filters/abstract_filter_spec.rb
|
200
174
|
- spec/active_interaction/filters/abstract_numeric_filter_spec.rb
|
201
175
|
- spec/active_interaction/filters/array_filter_spec.rb
|
202
176
|
- spec/active_interaction/filters/boolean_filter_spec.rb
|
@@ -210,7 +184,6 @@ files:
|
|
210
184
|
- spec/active_interaction/filters/string_filter_spec.rb
|
211
185
|
- spec/active_interaction/filters/symbol_filter_spec.rb
|
212
186
|
- spec/active_interaction/filters/time_filter_spec.rb
|
213
|
-
- spec/active_interaction/filters_spec.rb
|
214
187
|
- spec/active_interaction/i18n_spec.rb
|
215
188
|
- spec/active_interaction/integration/array_interaction_spec.rb
|
216
189
|
- spec/active_interaction/integration/boolean_interaction_spec.rb
|
@@ -224,14 +197,14 @@ files:
|
|
224
197
|
- spec/active_interaction/integration/string_interaction_spec.rb
|
225
198
|
- spec/active_interaction/integration/symbol_interaction_spec.rb
|
226
199
|
- spec/active_interaction/integration/time_interaction_spec.rb
|
227
|
-
- spec/active_interaction/modules/active_model_spec.rb
|
228
|
-
- spec/active_interaction/modules/core_spec.rb
|
229
|
-
- spec/active_interaction/modules/method_missing_spec.rb
|
230
|
-
- spec/active_interaction/modules/overload_hash_spec.rb
|
231
200
|
- spec/active_interaction/modules/validation_spec.rb
|
232
201
|
- spec/spec_helper.rb
|
202
|
+
- spec/support/concerns.rb
|
233
203
|
- spec/support/filters.rb
|
234
204
|
- spec/support/interactions.rb
|
205
|
+
- CHANGELOG.md
|
206
|
+
- LICENSE.txt
|
207
|
+
- README.md
|
235
208
|
homepage: http://orgsync.github.io/active_interaction/
|
236
209
|
licenses:
|
237
210
|
- MIT
|
@@ -242,25 +215,30 @@ require_paths:
|
|
242
215
|
- lib
|
243
216
|
required_ruby_version: !ruby/object:Gem::Requirement
|
244
217
|
requirements:
|
245
|
-
- -
|
218
|
+
- - ">="
|
246
219
|
- !ruby/object:Gem::Version
|
247
220
|
version: 1.9.3
|
248
221
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
249
222
|
requirements:
|
250
|
-
- -
|
223
|
+
- - ">="
|
251
224
|
- !ruby/object:Gem::Version
|
252
225
|
version: '0'
|
253
226
|
requirements: []
|
254
227
|
rubyforge_project:
|
255
|
-
rubygems_version: 2.
|
228
|
+
rubygems_version: 2.1.11
|
256
229
|
signing_key:
|
257
230
|
specification_version: 4
|
258
231
|
summary: Manage application specific business logic.
|
259
232
|
test_files:
|
260
233
|
- spec/active_interaction/base_spec.rb
|
234
|
+
- spec/active_interaction/concerns/active_modelable_spec.rb
|
235
|
+
- spec/active_interaction/concerns/hashable_spec.rb
|
236
|
+
- spec/active_interaction/concerns/missable_spec.rb
|
237
|
+
- spec/active_interaction/concerns/runnable_spec.rb
|
261
238
|
- spec/active_interaction/errors_spec.rb
|
262
239
|
- spec/active_interaction/filter_spec.rb
|
263
240
|
- spec/active_interaction/filters/abstract_date_time_filter_spec.rb
|
241
|
+
- spec/active_interaction/filters/abstract_filter_spec.rb
|
264
242
|
- spec/active_interaction/filters/abstract_numeric_filter_spec.rb
|
265
243
|
- spec/active_interaction/filters/array_filter_spec.rb
|
266
244
|
- spec/active_interaction/filters/boolean_filter_spec.rb
|
@@ -274,7 +252,6 @@ test_files:
|
|
274
252
|
- spec/active_interaction/filters/string_filter_spec.rb
|
275
253
|
- spec/active_interaction/filters/symbol_filter_spec.rb
|
276
254
|
- spec/active_interaction/filters/time_filter_spec.rb
|
277
|
-
- spec/active_interaction/filters_spec.rb
|
278
255
|
- spec/active_interaction/i18n_spec.rb
|
279
256
|
- spec/active_interaction/integration/array_interaction_spec.rb
|
280
257
|
- spec/active_interaction/integration/boolean_interaction_spec.rb
|
@@ -288,12 +265,9 @@ test_files:
|
|
288
265
|
- spec/active_interaction/integration/string_interaction_spec.rb
|
289
266
|
- spec/active_interaction/integration/symbol_interaction_spec.rb
|
290
267
|
- spec/active_interaction/integration/time_interaction_spec.rb
|
291
|
-
- spec/active_interaction/modules/active_model_spec.rb
|
292
|
-
- spec/active_interaction/modules/core_spec.rb
|
293
|
-
- spec/active_interaction/modules/method_missing_spec.rb
|
294
|
-
- spec/active_interaction/modules/overload_hash_spec.rb
|
295
268
|
- spec/active_interaction/modules/validation_spec.rb
|
296
269
|
- spec/spec_helper.rb
|
270
|
+
- spec/support/concerns.rb
|
297
271
|
- spec/support/filters.rb
|
298
272
|
- spec/support/interactions.rb
|
299
273
|
has_rdoc:
|