attr_encrypted 1.1.2 → 1.2.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.
@@ -1,18 +1,18 @@
1
- require File.dirname(__FILE__) + '/test_helper'
1
+ require File.expand_path('../test_helper', __FILE__)
2
2
 
3
- DataMapper.setup(:default, "sqlite3::memory:")
3
+ DataMapper.setup(:default, 'sqlite3::memory:')
4
4
 
5
5
  class Client
6
6
  include DataMapper::Resource
7
-
7
+
8
8
  property :id, Serial
9
9
  property :encrypted_email, String
10
10
  property :encrypted_credentials, Text
11
11
  property :salt, String
12
-
12
+
13
13
  attr_encrypted :email, :key => 'a secret key'
14
14
  attr_encrypted :credentials, :key => Proc.new { |client| Encryptor.encrypt(:value => client.salt, :key => 'some private key') }, :marshal => true
15
-
15
+
16
16
  def initialize(attrs = {})
17
17
  super attrs
18
18
  self.salt ||= Digest::SHA1.hexdigest((Time.now.to_i * rand(5)).to_s)
@@ -23,11 +23,11 @@ end
23
23
  DataMapper.auto_migrate!
24
24
 
25
25
  class DataMapperTest < Test::Unit::TestCase
26
-
26
+
27
27
  def setup
28
28
  Client.all.each(&:destroy)
29
29
  end
30
-
30
+
31
31
  def test_should_encrypt_email
32
32
  @client = Client.new :email => 'test@example.com'
33
33
  assert @client.save
@@ -35,7 +35,7 @@ class DataMapperTest < Test::Unit::TestCase
35
35
  assert_not_equal @client.email, @client.encrypted_email
36
36
  assert_equal @client.email, Client.first.email
37
37
  end
38
-
38
+
39
39
  def test_should_marshal_and_encrypt_credentials
40
40
  @client = Client.new
41
41
  assert @client.save
@@ -44,9 +44,9 @@ class DataMapperTest < Test::Unit::TestCase
44
44
  assert_equal @client.credentials, Client.first.credentials
45
45
  assert Client.first.credentials.is_a?(Hash)
46
46
  end
47
-
47
+
48
48
  def test_should_encode_by_default
49
49
  assert Client.attr_encrypted_options[:encode]
50
50
  end
51
-
51
+
52
52
  end
@@ -1,4 +1,4 @@
1
- require File.dirname(__FILE__) + '/test_helper'
1
+ require File.expand_path('../test_helper', __FILE__)
2
2
 
3
3
  DB = Sequel.sqlite
4
4
 
@@ -13,7 +13,7 @@ end
13
13
  class Human < Sequel::Model(:humans)
14
14
  attr_encrypted :email, :key => 'a secret key'
15
15
  attr_encrypted :credentials, :key => Proc.new { |human| Encryptor.encrypt(:value => human.salt, :key => 'some private key') }, :marshal => true
16
-
16
+
17
17
  def after_initialize(attrs = {})
18
18
  self.salt ||= Digest::SHA1.hexdigest((Time.now.to_i * rand(5)).to_s)
19
19
  self.credentials ||= { :username => 'example', :password => 'test' }
@@ -21,11 +21,11 @@ class Human < Sequel::Model(:humans)
21
21
  end
22
22
 
23
23
  class SequelTest < Test::Unit::TestCase
24
-
24
+
25
25
  def setup
26
26
  Human.all.each(&:destroy)
27
27
  end
28
-
28
+
29
29
  def test_should_encrypt_email
30
30
  @human = Human.new :email => 'test@example.com'
31
31
  assert @human.save
@@ -33,7 +33,7 @@ class SequelTest < Test::Unit::TestCase
33
33
  assert_not_equal @human.email, @human.encrypted_email
34
34
  assert_equal @human.email, Human.first.email
35
35
  end
36
-
36
+
37
37
  def test_should_marshal_and_encrypt_credentials
38
38
  @human = Human.new
39
39
  assert @human.save
@@ -42,9 +42,9 @@ class SequelTest < Test::Unit::TestCase
42
42
  assert_equal @human.credentials, Human.first.credentials
43
43
  assert Human.first.credentials.is_a?(Hash)
44
44
  end
45
-
45
+
46
46
  def test_should_encode_by_default
47
47
  assert Human.attr_encrypted_options[:encode]
48
48
  end
49
-
49
+
50
50
  end
@@ -1,10 +1,14 @@
1
1
  require 'test/unit'
2
2
  require 'digest/sha2'
3
-
4
3
  require 'rubygems'
5
-
4
+ gem 'activerecord', ENV['ACTIVE_RECORD_VERSION'] if ENV['ACTIVE_RECORD_VERSION']
6
5
  require 'active_record'
7
6
  require 'datamapper'
8
7
  require 'sequel'
8
+ require 'mocha'
9
+
10
+ $:.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
11
+ $:.unshift(File.dirname(__FILE__))
12
+ require 'attr_encrypted'
9
13
 
10
- require File.dirname(__FILE__) + '/../lib/attr_encrypted'
14
+ puts "\nTesting with ActiveRecord #{ActiveRecord::VERSION::STRING rescue ENV['ACTIVE_RECORD_VERSION']}"
metadata CHANGED
@@ -1,12 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: attr_encrypted
3
3
  version: !ruby/object:Gem::Version
4
- prerelease: false
4
+ hash: 31
5
+ prerelease:
5
6
  segments:
6
7
  - 1
7
- - 1
8
8
  - 2
9
- version: 1.1.2
9
+ - 0
10
+ version: 1.2.0
10
11
  platform: ruby
11
12
  authors:
12
13
  - Sean Huber
@@ -14,16 +15,18 @@ autorequire:
14
15
  bindir: bin
15
16
  cert_chain: []
16
17
 
17
- date: 2010-04-26 00:00:00 -07:00
18
+ date: 2011-03-07 00:00:00 -08:00
18
19
  default_executable:
19
20
  dependencies:
20
21
  - !ruby/object:Gem::Dependency
21
- name: eigenclass
22
+ name: encryptor
22
23
  prerelease: false
23
24
  requirement: &id001 !ruby/object:Gem::Requirement
25
+ none: false
24
26
  requirements:
25
27
  - - ">="
26
28
  - !ruby/object:Gem::Version
29
+ hash: 17
27
30
  segments:
28
31
  - 1
29
32
  - 1
@@ -32,33 +35,63 @@ dependencies:
32
35
  type: :runtime
33
36
  version_requirements: *id001
34
37
  - !ruby/object:Gem::Dependency
35
- name: encryptor
38
+ name: activerecord
36
39
  prerelease: false
37
40
  requirement: &id002 !ruby/object:Gem::Requirement
41
+ none: false
38
42
  requirements:
39
43
  - - ">="
40
44
  - !ruby/object:Gem::Version
45
+ hash: 15
41
46
  segments:
42
- - 1
43
- - 1
47
+ - 2
44
48
  - 0
45
- version: 1.1.0
46
- type: :runtime
49
+ - 0
50
+ version: 2.0.0
51
+ type: :development
47
52
  version_requirements: *id002
48
53
  - !ruby/object:Gem::Dependency
49
- name: mocha
54
+ name: datamapper
50
55
  prerelease: false
51
56
  requirement: &id003 !ruby/object:Gem::Requirement
57
+ none: false
52
58
  requirements:
53
59
  - - ">="
54
60
  - !ruby/object:Gem::Version
61
+ hash: 3
55
62
  segments:
56
63
  - 0
57
- - 9
58
- - 8
59
- version: 0.9.8
60
- type: :runtime
64
+ version: "0"
65
+ type: :development
61
66
  version_requirements: *id003
67
+ - !ruby/object:Gem::Dependency
68
+ name: mocha
69
+ prerelease: false
70
+ requirement: &id004 !ruby/object:Gem::Requirement
71
+ none: false
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ hash: 3
76
+ segments:
77
+ - 0
78
+ version: "0"
79
+ type: :development
80
+ version_requirements: *id004
81
+ - !ruby/object:Gem::Dependency
82
+ name: sequel
83
+ prerelease: false
84
+ requirement: &id005 !ruby/object:Gem::Requirement
85
+ none: false
86
+ requirements:
87
+ - - ">="
88
+ - !ruby/object:Gem::Version
89
+ hash: 3
90
+ segments:
91
+ - 0
92
+ version: "0"
93
+ type: :development
94
+ version_requirements: *id005
62
95
  description: Generates attr_accessors that encrypt and decrypt attributes transparently
63
96
  email: shuber@huberry.com
64
97
  executables: []
@@ -68,10 +101,11 @@ extensions: []
68
101
  extra_rdoc_files: []
69
102
 
70
103
  files:
71
- - lib/attr_encrypted.rb
72
104
  - lib/attr_encrypted/adapters/active_record.rb
73
105
  - lib/attr_encrypted/adapters/data_mapper.rb
74
106
  - lib/attr_encrypted/adapters/sequel.rb
107
+ - lib/attr_encrypted/version.rb
108
+ - lib/attr_encrypted.rb
75
109
  - MIT-LICENSE
76
110
  - Rakefile
77
111
  - README.rdoc
@@ -93,26 +127,30 @@ rdoc_options:
93
127
  require_paths:
94
128
  - lib
95
129
  required_ruby_version: !ruby/object:Gem::Requirement
130
+ none: false
96
131
  requirements:
97
132
  - - ">="
98
133
  - !ruby/object:Gem::Version
134
+ hash: 3
99
135
  segments:
100
136
  - 0
101
137
  version: "0"
102
138
  required_rubygems_version: !ruby/object:Gem::Requirement
139
+ none: false
103
140
  requirements:
104
141
  - - ">="
105
142
  - !ruby/object:Gem::Version
143
+ hash: 3
106
144
  segments:
107
145
  - 0
108
146
  version: "0"
109
147
  requirements: []
110
148
 
111
149
  rubyforge_project:
112
- rubygems_version: 1.3.6
150
+ rubygems_version: 1.6.1
113
151
  signing_key:
114
152
  specification_version: 3
115
- summary: Generates attr_accessors that encrypt and decrypt attributes transparently
153
+ summary: Encrypt and decrypt attributes
116
154
  test_files:
117
155
  - test/active_record_test.rb
118
156
  - test/attr_encrypted_test.rb