sage_pay 0.2.13 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,9 +1,9 @@
1
- if ENV["SKIP_INTEGRATION"]
2
- STDERR.puts "Skipping integration tests, as SKIP_INTEGRATION has been defined in the environment"
3
- else
4
- STDERR.puts "Running integration tests. Set SKIP_INTEGRATION=true to skip them."
1
+ def run_integration_specs?
2
+ ENV["VENDOR_NAME"].present?
5
3
  end
6
4
 
7
- def run_integration_specs?
8
- ENV["SKIP_INTEGRATION"].nil?
5
+ if run_integration_specs?
6
+ STDERR.puts "Running integration tests with vendor name #{ENV["VENDOR_NAME"]}."
7
+ else
8
+ STDERR.puts "Skipping integration tests, re-run with VENDOR_NAME set to a simulator account to enable them."
9
9
  end
@@ -2,56 +2,56 @@ module ValidationMatchers
2
2
  def validates_the_presence_of(model_name, attribute, message = "can't be empty")
3
3
  model = model_factory(model_name, attribute => "")
4
4
  model.should_not be_valid
5
- model.errors.on(attribute).should include(message)
5
+ model.errors[attribute].should include(message)
6
6
  end
7
7
 
8
8
  def does_not_require_the_presence_of(model_name, attribute)
9
9
  model = model_factory(model_name, attribute => "")
10
10
  model.should be_valid
11
- model.errors.on(attribute).should be_nil
11
+ model.errors[attribute].should be_empty
12
12
  end
13
13
 
14
14
  def validates_the_length_of(model_name, attribute, limits, message = "is invalid")
15
15
  if limits[:min]
16
16
  model = model_factory(model_name, attribute => 'a' * (limits[:min] - 1))
17
17
  model.should_not be_valid
18
- model.errors.on(attribute).should include(message)
18
+ model.errors[attribute].should include(message)
19
19
 
20
20
  model = model_factory(model_name, attribute => 'a' * limits[:min])
21
21
  model.should be_valid
22
- model.errors.on(attribute).should be_nil
22
+ model.errors[attribute].should be_empty
23
23
 
24
24
  model = model_factory(model_name, attribute => 'a' * (limits[:min] + 1))
25
25
  model.should be_valid
26
- model.errors.on(attribute).should be_nil
26
+ model.errors[attribute].should be_empty
27
27
  end
28
28
 
29
29
  if limits[:max]
30
30
  model = model_factory(model_name, attribute => 'a' * (limits[:max] - 1))
31
31
  model.should be_valid
32
- model.errors.on(attribute).should be_nil
32
+ model.errors[attribute].should be_empty
33
33
 
34
34
  model = model_factory(model_name, attribute => 'a' * limits[:max])
35
35
  model.should be_valid
36
- model.errors.on(attribute).should be_nil
36
+ model.errors[attribute].should be_empty
37
37
 
38
38
  model = model_factory(model_name, attribute => 'a' * (limits[:max] + 1))
39
39
  model.should_not be_valid
40
- model.errors.on(attribute).should include(message)
40
+ model.errors[attribute].should include(message)
41
41
  end
42
42
 
43
43
  if limits[:exactly]
44
44
  model = model_factory(model_name, attribute => 'a' * (limits[:exactly] - 1))
45
45
  model.should_not be_valid
46
- model.errors.on(attribute).should include(message)
46
+ model.errors[attribute].should include(message)
47
47
 
48
48
  model = model_factory(model_name, attribute => 'a' * limits[:exactly])
49
49
  model.should be_valid
50
- model.errors.on(attribute).should be_nil
50
+ model.errors[attribute].should be_empty
51
51
 
52
52
  model = model_factory(model_name, attribute => 'a' * (limits[:exactly] + 1))
53
53
  model.should_not be_valid
54
- model.errors.on(attribute).should include(message)
54
+ model.errors[attribute].should include(message)
55
55
  end
56
56
  end
57
57
 
@@ -59,13 +59,13 @@ module ValidationMatchers
59
59
  (examples[:invalid] || []).each do |invalid|
60
60
  model = model_factory(model_name, attribute => invalid)
61
61
  model.should_not be_valid
62
- model.errors.on(attribute).should == message
62
+ model.errors[attribute].should include(message)
63
63
  end
64
64
 
65
65
  (examples[:valid] || []).each do |valid|
66
66
  model = model_factory(model_name, attribute => valid)
67
67
  model.should be_valid
68
- model.errors.on(attribute).should be_nil
68
+ model.errors[attribute].should be_empty
69
69
  end
70
70
  end
71
71
  end
metadata CHANGED
@@ -1,106 +1,136 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: sage_pay
3
- version: !ruby/object:Gem::Version
4
- hash: 13
5
- prerelease: false
6
- segments:
7
- - 0
8
- - 2
9
- - 13
10
- version: 0.2.13
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.0.0
5
+ prerelease:
11
6
  platform: ruby
12
- authors:
7
+ authors:
13
8
  - Graeme Mathieson
14
9
  autorequire:
15
10
  bindir: bin
16
11
  cert_chain: []
17
-
18
- date: 2010-08-15 00:00:00 +01:00
19
- default_executable:
20
- dependencies:
21
- - !ruby/object:Gem::Dependency
12
+ date: 2012-07-21 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
22
15
  name: activesupport
23
- prerelease: false
24
- requirement: &id001 !ruby/object:Gem::Requirement
16
+ requirement: !ruby/object:Gem::Requirement
25
17
  none: false
26
- requirements:
27
- - - ">="
28
- - !ruby/object:Gem::Version
29
- hash: 19
30
- segments:
31
- - 2
32
- - 3
33
- - 8
34
- version: 2.3.8
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
21
+ version: 3.1.3
35
22
  type: :runtime
36
- version_requirements: *id001
37
- - !ruby/object:Gem::Dependency
38
- name: validatable
39
23
  prerelease: false
40
- requirement: &id002 !ruby/object:Gem::Requirement
24
+ version_requirements: !ruby/object:Gem::Requirement
41
25
  none: false
42
- requirements:
43
- - - ">="
44
- - !ruby/object:Gem::Version
45
- hash: 1
46
- segments:
47
- - 1
48
- - 6
49
- - 7
50
- version: 1.6.7
26
+ requirements:
27
+ - - ! '>='
28
+ - !ruby/object:Gem::Version
29
+ version: 3.1.3
30
+ - !ruby/object:Gem::Dependency
31
+ name: activemodel
32
+ requirement: !ruby/object:Gem::Requirement
33
+ none: false
34
+ requirements:
35
+ - - ! '>='
36
+ - !ruby/object:Gem::Version
37
+ version: 3.1.0
51
38
  type: :runtime
52
- version_requirements: *id002
53
- - !ruby/object:Gem::Dependency
39
+ prerelease: false
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ! '>='
44
+ - !ruby/object:Gem::Version
45
+ version: 3.1.0
46
+ - !ruby/object:Gem::Dependency
54
47
  name: uuid
48
+ requirement: !ruby/object:Gem::Requirement
49
+ none: false
50
+ requirements:
51
+ - - ! '>='
52
+ - !ruby/object:Gem::Version
53
+ version: 2.3.0
54
+ type: :runtime
55
55
  prerelease: false
56
- requirement: &id003 !ruby/object:Gem::Requirement
56
+ version_requirements: !ruby/object:Gem::Requirement
57
57
  none: false
58
- requirements:
59
- - - ">="
60
- - !ruby/object:Gem::Version
61
- hash: 3
62
- segments:
63
- - 2
64
- - 3
65
- - 0
58
+ requirements:
59
+ - - ! '>='
60
+ - !ruby/object:Gem::Version
66
61
  version: 2.3.0
62
+ - !ruby/object:Gem::Dependency
63
+ name: i18n
64
+ requirement: !ruby/object:Gem::Requirement
65
+ none: false
66
+ requirements:
67
+ - - ! '>='
68
+ - !ruby/object:Gem::Version
69
+ version: 0.6.0
67
70
  type: :runtime
68
- version_requirements: *id003
69
- - !ruby/object:Gem::Dependency
71
+ prerelease: false
72
+ version_requirements: !ruby/object:Gem::Requirement
73
+ none: false
74
+ requirements:
75
+ - - ! '>='
76
+ - !ruby/object:Gem::Version
77
+ version: 0.6.0
78
+ - !ruby/object:Gem::Dependency
70
79
  name: rspec
80
+ requirement: !ruby/object:Gem::Requirement
81
+ none: false
82
+ requirements:
83
+ - - ! '>='
84
+ - !ruby/object:Gem::Version
85
+ version: '0'
86
+ type: :development
71
87
  prerelease: false
72
- requirement: &id004 !ruby/object:Gem::Requirement
88
+ version_requirements: !ruby/object:Gem::Requirement
73
89
  none: false
74
- requirements:
75
- - - ">="
76
- - !ruby/object:Gem::Version
77
- hash: 3
78
- segments:
79
- - 0
80
- version: "0"
90
+ requirements:
91
+ - - ! '>='
92
+ - !ruby/object:Gem::Version
93
+ version: '0'
94
+ - !ruby/object:Gem::Dependency
95
+ name: rake
96
+ requirement: !ruby/object:Gem::Requirement
97
+ none: false
98
+ requirements:
99
+ - - ! '>='
100
+ - !ruby/object:Gem::Version
101
+ version: '0'
81
102
  type: :development
82
- version_requirements: *id004
83
- description: |
84
- This is a Ruby library for integrating with SagePay. SagePay is a payment
103
+ prerelease: false
104
+ version_requirements: !ruby/object:Gem::Requirement
105
+ none: false
106
+ requirements:
107
+ - - ! '>='
108
+ - !ruby/object:Gem::Version
109
+ version: '0'
110
+ description: ! 'This is a Ruby library for integrating with SagePay. SagePay is a
111
+ payment
112
+
85
113
  gateway for accepting credit card payments through your web app.
86
114
 
115
+ '
87
116
  email: mathie@woss.name
88
117
  executables: []
89
-
90
118
  extensions: []
91
-
92
- extra_rdoc_files:
119
+ extra_rdoc_files:
93
120
  - README.md
94
121
  - LICENSE
95
- files:
122
+ files:
123
+ - .rbenv-version
124
+ - .rspec
96
125
  - CHANGELOG.md
97
126
  - Gemfile
98
- - Gemfile.lock
99
127
  - LICENSE
100
128
  - README.md
101
129
  - Rakefile
102
130
  - TODO
131
+ - config/locales/en.yml
103
132
  - lib/sage_pay.rb
133
+ - lib/sage_pay/locale_initializer.rb
104
134
  - lib/sage_pay/server.rb
105
135
  - lib/sage_pay/server/abort.rb
106
136
  - lib/sage_pay/server/address.rb
@@ -121,8 +151,8 @@ files:
121
151
  - lib/sage_pay/server/signature_verification_details.rb
122
152
  - lib/sage_pay/server/transaction_code.rb
123
153
  - lib/sage_pay/uri_fixups.rb
124
- - lib/validatable-ext.rb
125
- - lib/validations/validates_inclusion_of.rb
154
+ - lib/sage_pay/validators.rb
155
+ - lib/sage_pay/version.rb
126
156
  - sage_pay.gemspec
127
157
  - spec/integration/sage_pay/server_spec.rb
128
158
  - spec/sage_pay/server/address_spec.rb
@@ -138,41 +168,32 @@ files:
138
168
  - spec/support/factories.rb
139
169
  - spec/support/integration.rb
140
170
  - spec/support/validation_matchers.rb
141
- has_rdoc: true
142
171
  homepage: http://github.com/mathie/sage_pay
143
172
  licenses: []
144
-
145
173
  post_install_message:
146
- rdoc_options:
174
+ rdoc_options:
147
175
  - --charset=UTF-8
148
- require_paths:
176
+ require_paths:
149
177
  - lib
150
- required_ruby_version: !ruby/object:Gem::Requirement
178
+ required_ruby_version: !ruby/object:Gem::Requirement
151
179
  none: false
152
- requirements:
153
- - - ">="
154
- - !ruby/object:Gem::Version
155
- hash: 3
156
- segments:
157
- - 0
158
- version: "0"
159
- required_rubygems_version: !ruby/object:Gem::Requirement
180
+ requirements:
181
+ - - ! '>='
182
+ - !ruby/object:Gem::Version
183
+ version: 1.9.2
184
+ required_rubygems_version: !ruby/object:Gem::Requirement
160
185
  none: false
161
- requirements:
162
- - - ">="
163
- - !ruby/object:Gem::Version
164
- hash: 3
165
- segments:
166
- - 0
167
- version: "0"
186
+ requirements:
187
+ - - ! '>='
188
+ - !ruby/object:Gem::Version
189
+ version: '0'
168
190
  requirements: []
169
-
170
191
  rubyforge_project: sage_pay
171
- rubygems_version: 1.3.7
192
+ rubygems_version: 1.8.23
172
193
  signing_key:
173
194
  specification_version: 2
174
195
  summary: Ruby implementation of the SagePay payment gateway protocol.
175
- test_files:
196
+ test_files:
176
197
  - spec/integration/sage_pay/server_spec.rb
177
198
  - spec/sage_pay/server/address_spec.rb
178
199
  - spec/sage_pay/server/notification_response_spec.rb
@@ -183,3 +204,4 @@ test_files:
183
204
  - spec/sage_pay/server/transaction_code_spec.rb
184
205
  - spec/sage_pay/server_spec.rb
185
206
  - spec/sage_pay_spec.rb
207
+ has_rdoc:
@@ -1,39 +0,0 @@
1
- ---
2
- dependencies:
3
- rake:
4
- group:
5
- - :development
6
- version: ">= 0"
7
- uuid:
8
- group:
9
- - :default
10
- version: ">= 2.3.1"
11
- rspec:
12
- group:
13
- - :development
14
- version: ">= 0"
15
- activesupport:
16
- group:
17
- - :default
18
- version: ">= 2.3.8"
19
- validatable:
20
- group:
21
- - :default
22
- version: ">= 1.6.7"
23
- specs:
24
- - rake:
25
- version: 0.8.7
26
- - activesupport:
27
- version: 2.3.8
28
- - macaddr:
29
- version: 1.0.0
30
- - rspec:
31
- version: 1.3.0
32
- - uuid:
33
- version: 2.3.1
34
- - validatable:
35
- version: 1.6.7
36
- hash: 64c077bdede3436c2ce404a8f1824f50cf7a1f7c
37
- sources:
38
- - Rubygems:
39
- uri: http://gemcutter.org
@@ -1,28 +0,0 @@
1
- require 'validatable'
2
- require 'validations/validates_inclusion_of'
3
-
4
- module Validatable
5
- module Macros
6
- # call-seq: validates_inclusion_of(*args)
7
- #
8
- # Encapsulates the pattern of wanting to validate that an attribute is is in a list. Example:
9
- #
10
- # class Person
11
- # include Validatable
12
- # validates_inclusion_of :operating_system, :in => ["Mac OS X", "Linux", "Windows"]
13
- # end
14
- #
15
- # Configuration options:
16
- #
17
- # * in - a list of acceptable answers
18
- # * after_validate - A block that executes following the run of a validation
19
- # * message - The message to add to the errors collection when the validation fails
20
- # * times - The number of times the validation applies
21
- # * level - The level at which the validation should occur
22
- # * if - A block that when executed must return true of the validation will not occur
23
- # * group - The group that this validation belongs to. A validation can belong to multiple groups
24
- def validates_inclusion_of(*args)
25
- add_validations(args, ValidatesInclusionOf)
26
- end
27
- end
28
- end
@@ -1,22 +0,0 @@
1
- module Validatable
2
- class ValidatesInclusionOf < ValidationBase #:nodoc:
3
- option :allow_blank
4
- required_option :in
5
-
6
- def message(instance)
7
- super || "is not in the list"
8
- end
9
-
10
- def valid?(instance)
11
- valid = true
12
- value = instance.send(self.attribute)
13
-
14
- if value.nil? || (value.respond_to?(:empty?) && value.empty?)
15
- return true if allow_blank
16
- value = ""
17
- end
18
-
19
- @in.include?(value)
20
- end
21
- end
22
- end