active_interaction 1.1.1 → 1.1.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: b7941654d9500bf4b64b71f838949b81e4be213f
4
- data.tar.gz: 317802247f2ba39e9da4b9f650140d0165d81c76
3
+ metadata.gz: 619e67894f9f8615a17f03d7e863b1c0d73749b4
4
+ data.tar.gz: f7fd2386a1d4351566a9be241efe24e2100ff871
5
5
  SHA512:
6
- metadata.gz: dbcb64582df589a4e39c8a6c9d45a635d7567f1cd3d8baea79655332d878d2af37b3131eedc8340a8b0f00ca0936653ed3f49df209096e2e767374aa89637ec8
7
- data.tar.gz: 0bd97e65631c8a201cdd69541dd23683788bc4956d47b204397911ab9fbf71d62152d98be52572da2d6bfde1e4b86e67b46f6169544f3902fa8c59bb40067322
6
+ metadata.gz: 62453228798557fa2011c5791fa27da4ba5548261462f836a8ea33f3489782a5325dc459c85556ae76d65de22d723bb5b0f00670e076858bb1230dd0a87935be
7
+ data.tar.gz: 916bf592062ec8f1d89d1554006c8580c513e80fd2c2722a0a69847497e81153948bfa224aa5329cf34075a78d48fc047c09efd48fe073cce85fbb756b841af7
@@ -1,5 +1,10 @@
1
1
  # [Master][]
2
2
 
3
+ # [1.1.2][] (2014-03-05)
4
+
5
+ - Don't constantize classes for model filters on initialization. This fixes a
6
+ bug that made those filters dependent on load order.
7
+
3
8
  # [1.1.1][] (2014-03-04)
4
9
 
5
10
  - Allow merging ActiveModel errors into ActiveInteraction errors with
@@ -159,7 +164,8 @@
159
164
 
160
165
  - Initial release.
161
166
 
162
- [master]: https://github.com/orgsync/active_interaction/compare/v1.1.1...master
167
+ [master]: https://github.com/orgsync/active_interaction/compare/v1.1.2...master
168
+ [1.1.2]: https://github.com/orgsync/active_interaction/compare/v1.1.1...v1.1.2
163
169
  [1.1.1]: https://github.com/orgsync/active_interaction/compare/v1.1.0...v1.1.1
164
170
  [1.1.0]: https://github.com/orgsync/active_interaction/compare/v1.0.5...v1.1.0
165
171
  [1.0.5]: https://github.com/orgsync/active_interaction/compare/v1.0.4...v1.0.5
@@ -41,5 +41,5 @@ I18n.load_path << File.expand_path(
41
41
  #
42
42
  # @since 1.0.0
43
43
  #
44
- # @version 1.1.1
44
+ # @version 1.1.2
45
45
  module ActiveInteraction end
@@ -145,7 +145,7 @@ module ActiveInteraction
145
145
  other.symbolic.each do |attribute, symbols|
146
146
  symbols.each do |symbol|
147
147
  unless symbolic[attribute].include?(symbol)
148
- symbolic[attribute] << symbol
148
+ symbolic[attribute] += [symbol]
149
149
  end
150
150
  end
151
151
  end
@@ -18,15 +18,9 @@ module ActiveInteraction
18
18
 
19
19
  # @private
20
20
  class ModelFilter < Filter
21
- def initialize(*)
22
- super
23
-
24
- @klass = klass
25
- end
26
-
27
21
  def cast(value, reconstantize = true)
28
22
  case value
29
- when @klass
23
+ when @klass ||= klass
30
24
  value
31
25
  else
32
26
  return super(value) unless reconstantize
@@ -5,5 +5,5 @@ module ActiveInteraction
5
5
  # The version number.
6
6
  #
7
7
  # @return [Gem::Version]
8
- VERSION = Gem::Version.new('1.1.1')
8
+ VERSION = Gem::Version.new('1.1.2')
9
9
  end
@@ -24,7 +24,7 @@ describe ActiveInteraction::ModelFilter, :filter do
24
24
  expect(filter.cast(value)).to eq value
25
25
 
26
26
  Object.send(:remove_const, :Model)
27
- Model = Class.new
27
+ class Model; end
28
28
  value = Model.new
29
29
 
30
30
  expect(filter.cast(value)).to eq value
@@ -34,8 +34,8 @@ describe ActiveInteraction::ModelFilter, :filter do
34
34
  filter
35
35
 
36
36
  Object.send(:remove_const, :Model)
37
- Model = Class.new
38
- Submodel = Class.new(Model)
37
+ class Model; end
38
+ class Submodel < Model; end
39
39
  value = Submodel.new
40
40
 
41
41
  expect(filter.cast(value)).to eq value
@@ -52,6 +52,15 @@ describe ActiveInteraction::ModelFilter, :filter do
52
52
  filter.cast(klass.new)
53
53
  end.to raise_error ActiveInteraction::InvalidValueError
54
54
  end
55
+
56
+ context 'without the class available' do
57
+ before { Object.send(:remove_const, :Model) }
58
+ after { class Model; end }
59
+
60
+ it 'does not raise an error on initialization' do
61
+ expect { filter }.to_not raise_error
62
+ end
63
+ end
55
64
  end
56
65
 
57
66
  context 'with class as a superclass' do
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: 1.1.1
4
+ version: 1.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Aaron Lasseigne
@@ -9,124 +9,124 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2014-03-04 00:00:00.000000000 Z
12
+ date: 2014-03-05 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
90
  - !ruby/object:Gem::Dependency
91
91
  name: rdoc
92
92
  requirement: !ruby/object:Gem::Requirement
93
93
  requirements:
94
- - - ~>
94
+ - - "~>"
95
95
  - !ruby/object:Gem::Version
96
96
  version: '4.1'
97
97
  type: :development
98
98
  prerelease: false
99
99
  version_requirements: !ruby/object:Gem::Requirement
100
100
  requirements:
101
- - - ~>
101
+ - - "~>"
102
102
  - !ruby/object:Gem::Version
103
103
  version: '4.1'
104
104
  - !ruby/object:Gem::Dependency
105
105
  name: guard-rubocop
106
106
  requirement: !ruby/object:Gem::Requirement
107
107
  requirements:
108
- - - ~>
108
+ - - "~>"
109
109
  - !ruby/object:Gem::Version
110
110
  version: '1.0'
111
111
  type: :development
112
112
  prerelease: false
113
113
  version_requirements: !ruby/object:Gem::Requirement
114
114
  requirements:
115
- - - ~>
115
+ - - "~>"
116
116
  - !ruby/object:Gem::Version
117
117
  version: '1.0'
118
118
  - !ruby/object:Gem::Dependency
119
119
  name: yard
120
120
  requirement: !ruby/object:Gem::Requirement
121
121
  requirements:
122
- - - ~>
122
+ - - "~>"
123
123
  - !ruby/object:Gem::Version
124
124
  version: '0.8'
125
125
  type: :development
126
126
  prerelease: false
127
127
  version_requirements: !ruby/object:Gem::Requirement
128
128
  requirements:
129
- - - ~>
129
+ - - "~>"
130
130
  - !ruby/object:Gem::Version
131
131
  version: '0.8'
132
132
  description: Manage application specific business logic.
@@ -216,17 +216,17 @@ require_paths:
216
216
  - lib
217
217
  required_ruby_version: !ruby/object:Gem::Requirement
218
218
  requirements:
219
- - - '>='
219
+ - - ">="
220
220
  - !ruby/object:Gem::Version
221
221
  version: 1.9.3
222
222
  required_rubygems_version: !ruby/object:Gem::Requirement
223
223
  requirements:
224
- - - '>='
224
+ - - ">="
225
225
  - !ruby/object:Gem::Version
226
226
  version: '0'
227
227
  requirements: []
228
228
  rubyforge_project:
229
- rubygems_version: 2.2.0
229
+ rubygems_version: 2.2.2
230
230
  signing_key:
231
231
  specification_version: 4
232
232
  summary: Manage application specific business logic.