maskable_attribute 0.0.7 → 0.0.8

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/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- maskable_attribute (0.0.6)
4
+ maskable_attribute (0.0.7)
5
5
  rails (>= 2.3.10)
6
6
 
7
7
  GEM
@@ -42,6 +42,16 @@ module MaskableAttribute
42
42
  def names
43
43
  @masks.map(&:name).map(&:to_sym)
44
44
  end
45
+
46
+ def formatted_names
47
+ @masks.inject([]) do |names, mask|
48
+ names.push mask.name.to_sym
49
+ mask.formats.each do |format, proc|
50
+ names.push "#{format}_#{mask.name}".to_sym
51
+ end
52
+ names
53
+ end
54
+ end
45
55
  end
46
56
 
47
57
  class Mask
@@ -12,6 +12,10 @@ module MaskableAttribute
12
12
  @masks.names
13
13
  end
14
14
 
15
+ def masks_with_formats
16
+ @masks.formatted_names
17
+ end
18
+
15
19
  def masked
16
20
  value = unmasked
17
21
  if !value.blank? and value.match(/\{.*\}/)
@@ -1,3 +1,3 @@
1
1
  module MaskableAttribute
2
- VERSION = "0.0.7"
2
+ VERSION = "0.0.8"
3
3
  end
@@ -192,4 +192,18 @@ class MaskableAttributeTest < ActiveSupport::TestCase
192
192
  assert_equal "{two_digit_foo}", @pickwell.maskable_bar.unmasked
193
193
  assert_equal "02", @pickwell.maskable_bar.masked
194
194
  end
195
+
196
+ test "should return format list" do
197
+ class Jazwell < Hickwell
198
+ maskable_attribute :bar, { :foo => {
199
+ :method => Proc.new { "2" },
200
+ :format => { :two_digit => Proc.new { |value| format "%02d", value } }
201
+ }
202
+ }
203
+ end
204
+
205
+ @jazwell = Jazwell.create! :bar => "{foo}"
206
+
207
+ assert_equal [:foo, :two_digit_foo], @jazwell.maskable_bar.masks_with_formats
208
+ end
195
209
  end
metadata CHANGED
@@ -1,46 +1,40 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: maskable_attribute
3
- version: !ruby/object:Gem::Version
4
- prerelease: false
5
- segments:
6
- - 0
7
- - 0
8
- - 7
9
- version: 0.0.7
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.8
5
+ prerelease:
10
6
  platform: ruby
11
- authors:
7
+ authors:
12
8
  - Bill Transue
13
9
  autorequire:
14
10
  bindir: bin
15
11
  cert_chain: []
16
-
17
- date: 2013-02-28 00:00:00 -05:00
18
- default_executable:
19
- dependencies:
20
- - !ruby/object:Gem::Dependency
12
+ date: 2013-02-28 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
21
15
  name: rails
22
- prerelease: false
23
- requirement: &id001 !ruby/object:Gem::Requirement
24
- requirements:
25
- - - ">="
26
- - !ruby/object:Gem::Version
27
- segments:
28
- - 2
29
- - 3
30
- - 10
16
+ requirement: !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
31
21
  version: 2.3.10
32
22
  type: :runtime
33
- version_requirements: *id001
34
- description: A maskable attribute is an attribute that is made up of other attributes (masks), this ordering is set in the masked attribute and preserved across updates.
35
- email:
36
- - "transue@gmail.com "
23
+ prerelease: false
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ! '>='
28
+ - !ruby/object:Gem::Version
29
+ version: 2.3.10
30
+ description: A maskable attribute is an attribute that is made up of other attributes
31
+ (masks), this ordering is set in the masked attribute and preserved across updates.
32
+ email:
33
+ - ! 'transue@gmail.com '
37
34
  executables: []
38
-
39
35
  extensions: []
40
-
41
36
  extra_rdoc_files: []
42
-
43
- files:
37
+ files:
44
38
  - .gitignore
45
39
  - .rvmrc
46
40
  - Gemfile
@@ -107,37 +101,31 @@ files:
107
101
  - test/mask_test.rb
108
102
  - test/maskable_attribute_test.rb
109
103
  - test/test_helper.rb
110
- has_rdoc: true
111
104
  homepage: https://github.com/billy-ran-away/maskable_attribute
112
105
  licenses: []
113
-
114
106
  post_install_message:
115
107
  rdoc_options: []
116
-
117
- require_paths:
108
+ require_paths:
118
109
  - lib
119
- required_ruby_version: !ruby/object:Gem::Requirement
120
- requirements:
121
- - - ">="
122
- - !ruby/object:Gem::Version
123
- segments:
124
- - 0
125
- version: "0"
126
- required_rubygems_version: !ruby/object:Gem::Requirement
127
- requirements:
128
- - - ">="
129
- - !ruby/object:Gem::Version
130
- segments:
131
- - 0
132
- version: "0"
110
+ required_ruby_version: !ruby/object:Gem::Requirement
111
+ none: false
112
+ requirements:
113
+ - - ! '>='
114
+ - !ruby/object:Gem::Version
115
+ version: '0'
116
+ required_rubygems_version: !ruby/object:Gem::Requirement
117
+ none: false
118
+ requirements:
119
+ - - ! '>='
120
+ - !ruby/object:Gem::Version
121
+ version: '0'
133
122
  requirements: []
134
-
135
123
  rubyforge_project: maskable_attribute
136
- rubygems_version: 1.3.6
124
+ rubygems_version: 1.8.25
137
125
  signing_key:
138
126
  specification_version: 3
139
127
  summary: Allows Ruby on Rails to have a maskable attribute.
140
- test_files:
128
+ test_files:
141
129
  - test/dummy/Rakefile
142
130
  - test/dummy/app/controllers/application_controller.rb
143
131
  - test/dummy/app/helpers/application_helper.rb
@@ -189,3 +177,4 @@ test_files:
189
177
  - test/mask_test.rb
190
178
  - test/maskable_attribute_test.rb
191
179
  - test/test_helper.rb
180
+ has_rdoc: