valid_attribute 1.3.1 → 2.0.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: f26e80f5b4e740384dd2c1c17f54dfca313ceca2
4
+ data.tar.gz: 30575c10d726310fd50a0f0d0cbac8204a8d4180
5
+ SHA512:
6
+ metadata.gz: f7c40a0c46b56dd989a5f3df6df9af4bec131d72e0613e0f6bebb396627cf10958f55765a35d5266f284647756fc979796b4e859cdf261fc8f8e583c27d5acd8
7
+ data.tar.gz: e23c1842e1a0dd03cd1ba8caf0158256211e1e7354ce5f2a41e54ee030f3d4ed5da1d10e1c97ae8310f50a2e2cca83fb750cd9da8dbd38caa4cfafeda6b9cb28
data/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # ValidAttribute #
2
2
 
3
- [![Build Status](http://travis-ci.org/bcardarella/valid_attribute.png)](http://travis-ci.org/bcardarella/valid_attribute)
3
+ [![Build Status](https://secure.travis-ci.org/bcardarella/valid_attribute.png?branch=master)](http://travis-ci.org/bcardarella/valid_attribute)
4
4
  [![Dependency Status](https://gemnasium.com/bcardarella/valid_attribute.png?travis)](https://gemnasium.com/bcardarella/valid_attribute)
5
5
  [![Code Climate](https://codeclimate.com/badge.png)](https://codeclimate.com/github/bcardarella/valid_attribute)
6
6
 
@@ -143,6 +143,20 @@ class User
143
143
  end
144
144
  ```
145
145
 
146
+ ## Don't Repeat Yourself ##
147
+
148
+ ```ruby
149
+ # encoding: utf-8
150
+
151
+ # RSpec
152
+ describe User do
153
+ let(:names) { ['TestName', 'Test-name', "O'Namey", 'Maček'] }
154
+ it { should have_valid(:first_name).when *names }
155
+ it { should have_valid(:last_name).when *names }
156
+ end
157
+ ```
158
+
159
+
146
160
  ## Cloning ##
147
161
 
148
162
  If you feel that the setters are mutating parts of the object when
@@ -11,6 +11,4 @@ elsif defined?(Spec)
11
11
  require 'valid_attribute/spec'
12
12
  elsif defined?(MiniTest::Matchers)
13
13
  require 'valid_attribute/minitest'
14
- elsif defined?(Test::Unit)
15
- require 'valid_attribute/test_unit'
16
14
  end
@@ -1,9 +1,11 @@
1
1
  module ValidAttribute
2
2
  class Matcher
3
- attr_accessor :attr, :values, :subject, :failed_values, :passed_values
3
+ attr_accessor :attr, :subject, :failed_values, :passed_values
4
+ attr_writer :values
4
5
 
5
6
  def initialize(attr)
6
7
  self.attr = attr
8
+ @clone = nil
7
9
  end
8
10
 
9
11
  # The collection of values to test against for the given
@@ -24,6 +26,7 @@ module ValidAttribute
24
26
  def negative_failure_message
25
27
  message(passed_values, 'reject')
26
28
  end
29
+ alias failure_message_when_negated negative_failure_message
27
30
 
28
31
  def description
29
32
  "be valid when #{attr} is: #{quote_values(values)}"
@@ -67,10 +70,7 @@ module ValidAttribute
67
70
  end
68
71
 
69
72
  def values
70
- unless @values
71
- @values = [subject.send(attr)]
72
- end
73
- @values
73
+ @values ||= [subject.send(attr)]
74
74
  end
75
75
 
76
76
  def check_value(value)
@@ -1,3 +1,7 @@
1
1
  class MiniTest::Spec
2
2
  include ::ValidAttribute::Method
3
3
  end
4
+
5
+ class Minitest::Unit
6
+ include ::ValidAttribute::Method
7
+ end
@@ -1,3 +1,3 @@
1
1
  module ValidAttribute
2
- VERSION = '1.3.1'
2
+ VERSION = '2.0.0'
3
3
  end
metadata CHANGED
@@ -1,94 +1,83 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: valid_attribute
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.1
5
- prerelease:
4
+ version: 2.0.0
6
5
  platform: ruby
7
6
  authors:
8
7
  - Brian Cardarella
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2012-08-13 00:00:00.000000000 Z
11
+ date: 2014-08-10 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: rake
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
- - - ! '>='
17
+ - - ">="
20
18
  - !ruby/object:Gem::Version
21
19
  version: '0'
22
20
  type: :development
23
21
  prerelease: false
24
22
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
23
  requirements:
27
- - - ! '>='
24
+ - - ">="
28
25
  - !ruby/object:Gem::Version
29
26
  version: '0'
30
27
  - !ruby/object:Gem::Dependency
31
28
  name: rspec
32
29
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
30
  requirements:
35
- - - ! '>='
31
+ - - ">="
36
32
  - !ruby/object:Gem::Version
37
33
  version: '0'
38
34
  type: :development
39
35
  prerelease: false
40
36
  version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
37
  requirements:
43
- - - ! '>='
38
+ - - ">="
44
39
  - !ruby/object:Gem::Version
45
40
  version: '0'
46
41
  - !ruby/object:Gem::Dependency
47
- name: bourne
42
+ name: mocha
48
43
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
44
  requirements:
51
- - - ! '>='
45
+ - - ">="
52
46
  - !ruby/object:Gem::Version
53
47
  version: '0'
54
48
  type: :development
55
49
  prerelease: false
56
50
  version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
51
  requirements:
59
- - - ! '>='
52
+ - - ">="
60
53
  - !ruby/object:Gem::Version
61
54
  version: '0'
62
55
  - !ruby/object:Gem::Dependency
63
56
  name: minitest
64
57
  requirement: !ruby/object:Gem::Requirement
65
- none: false
66
58
  requirements:
67
- - - ! '>='
59
+ - - ">="
68
60
  - !ruby/object:Gem::Version
69
61
  version: '0'
70
62
  type: :development
71
63
  prerelease: false
72
64
  version_requirements: !ruby/object:Gem::Requirement
73
- none: false
74
65
  requirements:
75
- - - ! '>='
66
+ - - ">="
76
67
  - !ruby/object:Gem::Version
77
68
  version: '0'
78
69
  - !ruby/object:Gem::Dependency
79
70
  name: minitest-matchers
80
71
  requirement: !ruby/object:Gem::Requirement
81
- none: false
82
72
  requirements:
83
- - - ! '>='
73
+ - - ">="
84
74
  - !ruby/object:Gem::Version
85
75
  version: '0'
86
76
  type: :development
87
77
  prerelease: false
88
78
  version_requirements: !ruby/object:Gem::Requirement
89
- none: false
90
79
  requirements:
91
- - - ! '>='
80
+ - - ">="
92
81
  - !ruby/object:Gem::Version
93
82
  version: '0'
94
83
  description: Minimalist validation matcher
@@ -98,43 +87,35 @@ executables: []
98
87
  extensions: []
99
88
  extra_rdoc_files: []
100
89
  files:
90
+ - README.md
91
+ - lib/valid_attribute.rb
101
92
  - lib/valid_attribute/matcher.rb
102
93
  - lib/valid_attribute/method.rb
103
94
  - lib/valid_attribute/minitest.rb
104
95
  - lib/valid_attribute/rspec.rb
105
96
  - lib/valid_attribute/spec.rb
106
- - lib/valid_attribute/test_unit.rb
107
97
  - lib/valid_attribute/version.rb
108
- - lib/valid_attribute.rb
109
- - README.md
110
98
  homepage: https://github.com/bcardarella/valid_attribute
111
99
  licenses: []
100
+ metadata: {}
112
101
  post_install_message:
113
102
  rdoc_options: []
114
103
  require_paths:
115
104
  - lib
116
105
  required_ruby_version: !ruby/object:Gem::Requirement
117
- none: false
118
106
  requirements:
119
- - - ! '>='
107
+ - - ">="
120
108
  - !ruby/object:Gem::Version
121
109
  version: '0'
122
- segments:
123
- - 0
124
- hash: 1648759370003077665
125
110
  required_rubygems_version: !ruby/object:Gem::Requirement
126
- none: false
127
111
  requirements:
128
- - - ! '>='
112
+ - - ">="
129
113
  - !ruby/object:Gem::Version
130
114
  version: '0'
131
- segments:
132
- - 0
133
- hash: 1648759370003077665
134
115
  requirements: []
135
116
  rubyforge_project:
136
- rubygems_version: 1.8.23
117
+ rubygems_version: 2.2.2
137
118
  signing_key:
138
- specification_version: 3
119
+ specification_version: 4
139
120
  summary: Minimalist validation matcher
140
121
  test_files: []
@@ -1,3 +0,0 @@
1
- class Test::Unit::TestCase
2
- extend ::ValidAttribute::Method
3
- end