assert_value 1.5.3 → 1.5.4
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.
- checksums.yaml +7 -0
- data/.gitignore +2 -0
- data/.travis.yml +36 -50
- data/README.md +69 -0
- data/assert_value.gemspec +1 -1
- data/{Gemfile → gemfiles/minitest.bundled.gemfile} +1 -2
- data/gemfiles/{minitest.gemfile → minitest.latest.gemfile} +0 -0
- data/gemfiles/rspec.2.99.gemfile +1 -1
- data/gemfiles/{old-rubies.gemfile → rspec.latest.gemfile} +0 -0
- data/gemfiles/test-unit.bundled.gemfile +8 -0
- data/gemfiles/{test-unit.gemfile → test-unit.latest.gemfile} +0 -0
- data/lib/array_diff.rb +2 -4
- data/lib/assert_value.rb +8 -7
- data/lib/text_diff.rb +1 -4
- data/test/assert_value_test.rb +1 -1
- metadata +30 -51
- data/gemfiles/minitest.4.7.5.gemfile +0 -7
- data/gemfiles/rspec.gemfile +0 -6
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 7201eba13f6309417d94784e31a974d8f3842d12
|
4
|
+
data.tar.gz: 0c52bdc71d9173a6140d5b82c6db7260fb1f2f3e
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 3550049d50439d6a52d5ad069ec7c81b17d957c936dede0b44506440da52baf11ebf75f94cc466809638ce14760335b8bf1ee34c608664c9c1a2082df9f4a524
|
7
|
+
data.tar.gz: 21eac2d89f497afacb6ee62e202283a0938e58498ed0abc41cb865a55ebbfb4021812b48533a888ae8db6cd6cbcd690787106fb9865b2178991bce262167b248
|
data/.gitignore
CHANGED
data/.travis.yml
CHANGED
@@ -9,73 +9,59 @@ language: ruby
|
|
9
9
|
rvm:
|
10
10
|
- 1.8.7
|
11
11
|
- 1.9.3
|
12
|
-
- 2.2.
|
13
|
-
- 2.
|
14
|
-
- 2.
|
12
|
+
- 2.2.6
|
13
|
+
- 2.3.3
|
14
|
+
- 2.4.1
|
15
15
|
|
16
|
-
gemfile: Gemfile
|
17
|
-
|
18
|
-
# Test for various gem versions we currently support
|
19
16
|
matrix:
|
17
|
+
# Do not run tests with default Gemfile. We don't have it
|
18
|
+
exclude:
|
19
|
+
- rvm: 1.8.7
|
20
|
+
- rvm: 1.9.3
|
21
|
+
- rvm: 2.2.6
|
22
|
+
- rvm: 2.3.3
|
23
|
+
- rvm: 2.4.1
|
20
24
|
include:
|
21
25
|
- rvm: 1.8.7
|
22
|
-
gemfile: gemfiles/
|
23
|
-
script:
|
24
|
-
- bundle exec rake test
|
25
|
-
- bundle exec rspec test
|
26
|
+
gemfile: gemfiles/test-unit.bundled.gemfile
|
26
27
|
- rvm: 1.8.7
|
27
28
|
gemfile: gemfiles/rspec.2.99.gemfile
|
28
29
|
script: bundle exec rspec test
|
30
|
+
- rvm: 1.8.7
|
31
|
+
gemfile: gemfiles/rspec.latest.gemfile
|
32
|
+
script: bundle exec rake spec
|
29
33
|
- rvm: 1.9.3
|
30
|
-
gemfile: gemfiles/
|
31
|
-
script:
|
32
|
-
- bundle exec rake test
|
33
|
-
- bundle exec rspec test
|
34
|
+
gemfile: gemfiles/minitest.bundled.gemfile
|
34
35
|
- rvm: 1.9.3
|
35
36
|
gemfile: gemfiles/rspec.2.99.gemfile
|
36
37
|
script: bundle exec rspec test
|
37
|
-
- rvm:
|
38
|
-
gemfile: gemfiles/rspec.
|
39
|
-
script: bundle exec
|
40
|
-
- rvm: 2.2.
|
41
|
-
gemfile: gemfiles/
|
42
|
-
script: bundle exec rake test
|
43
|
-
- rvm: 2.2.2
|
44
|
-
gemfile: gemfiles/minitest.gemfile
|
38
|
+
- rvm: 1.9.3
|
39
|
+
gemfile: gemfiles/rspec.latest.gemfile
|
40
|
+
script: bundle exec rake spec
|
41
|
+
- rvm: 2.2.6
|
42
|
+
gemfile: gemfiles/test-unit.latest.gemfile
|
45
43
|
script: bundle exec rake test
|
46
|
-
- rvm: 2.2.
|
47
|
-
gemfile: gemfiles/
|
44
|
+
- rvm: 2.2.6
|
45
|
+
gemfile: gemfiles/minitest.latest.gemfile
|
48
46
|
script: bundle exec rake test
|
49
|
-
- rvm: 2.2.
|
50
|
-
gemfile: gemfiles/rspec.gemfile
|
47
|
+
- rvm: 2.2.6
|
48
|
+
gemfile: gemfiles/rspec.latest.gemfile
|
51
49
|
script: bundle exec rake spec
|
52
|
-
- rvm: 2.
|
53
|
-
gemfile: gemfiles/
|
54
|
-
script: bundle exec rspec test
|
55
|
-
- rvm: 2.2.3
|
56
|
-
gemfile: gemfiles/minitest.4.7.5.gemfile
|
50
|
+
- rvm: 2.3.3
|
51
|
+
gemfile: gemfiles/test-unit.latest.gemfile
|
57
52
|
script: bundle exec rake test
|
58
|
-
- rvm: 2.
|
59
|
-
gemfile: gemfiles/minitest.gemfile
|
53
|
+
- rvm: 2.3.3
|
54
|
+
gemfile: gemfiles/minitest.latest.gemfile
|
60
55
|
script: bundle exec rake test
|
61
|
-
- rvm: 2.
|
62
|
-
gemfile: gemfiles/
|
63
|
-
script: bundle exec rake test
|
64
|
-
- rvm: 2.2.3
|
65
|
-
gemfile: gemfiles/rspec.gemfile
|
56
|
+
- rvm: 2.3.3
|
57
|
+
gemfile: gemfiles/rspec.latest.gemfile
|
66
58
|
script: bundle exec rake spec
|
67
|
-
- rvm: 2.
|
68
|
-
gemfile: gemfiles/
|
69
|
-
script: bundle exec rspec test
|
70
|
-
- rvm: 2.3.0
|
71
|
-
gemfile: gemfiles/minitest.4.7.5.gemfile
|
72
|
-
script: bundle exec rake test
|
73
|
-
- rvm: 2.3.0
|
74
|
-
gemfile: gemfiles/minitest.gemfile
|
59
|
+
- rvm: 2.4.1
|
60
|
+
gemfile: gemfiles/test-unit.latest.gemfile
|
75
61
|
script: bundle exec rake test
|
76
|
-
- rvm: 2.
|
77
|
-
gemfile: gemfiles/
|
62
|
+
- rvm: 2.4.1
|
63
|
+
gemfile: gemfiles/minitest.latest.gemfile
|
78
64
|
script: bundle exec rake test
|
79
|
-
- rvm: 2.
|
80
|
-
gemfile: gemfiles/rspec.gemfile
|
65
|
+
- rvm: 2.4.1
|
66
|
+
gemfile: gemfiles/rspec.latest.gemfile
|
81
67
|
script: bundle exec rake spec
|
data/README.md
CHANGED
@@ -122,6 +122,75 @@ In Ruby 1.9:
|
|
122
122
|
rake test TESTOPTS="--no-canonicalize --autoaccept"
|
123
123
|
|
124
124
|
|
125
|
+
## Supported Rubies and Test Frameworks
|
126
|
+
|
127
|
+
| Framework / Ruby | 1.8.7 | 1.9.3 | 2.0+ |
|
128
|
+
|---------------------|-------|-------|------|
|
129
|
+
| Test-Unit (bundled) | Yes | No | No |
|
130
|
+
| Minitest (bundled) | No | Yes | No |
|
131
|
+
| Test-Unit (latest) | No | No | Yes |
|
132
|
+
| Minitest (latest) | No | No | Yes |
|
133
|
+
| Rspec 2.99 | Yes | Yes | No |
|
134
|
+
| Rspec (latest) | Yes | Yes | Yes |
|
135
|
+
|
136
|
+
- ruby 1,8.7 came with bundled Test-unit 1.2.3 and cannot run latest Test-Unit
|
137
|
+
and Minitest frameworks
|
138
|
+
- ruby 1.9.3 came with bundled Minitest 2.5.1 and cannot run other Test-Unit
|
139
|
+
and MInitest frameworks
|
140
|
+
- RSpec 2.99 is the latest RSpec framework compatible with Rails 2.3
|
141
|
+
|
142
|
+
## Development
|
143
|
+
|
144
|
+
|
145
|
+
One way to setup development environment using rbenv:
|
146
|
+
|
147
|
+
```bash
|
148
|
+
# compile ruby
|
149
|
+
rbenv install 2.3.0
|
150
|
+
|
151
|
+
# set local version of ruby under rbenv
|
152
|
+
rbenv local 2.3.0
|
153
|
+
|
154
|
+
# install bundler
|
155
|
+
gem install bundle
|
156
|
+
|
157
|
+
# configure bundler
|
158
|
+
bundle config --local path .bundle/gems
|
159
|
+
bundle config --local bin .bundle/bin # binstubs
|
160
|
+
bundle config # to see current settings
|
161
|
+
|
162
|
+
# below seems to be necessary, having a Gemfile in
|
163
|
+
# subdirectory like
|
164
|
+
# bundle config --local gemfile gemfiles/test-unit.bundled.gemfile
|
165
|
+
# breaks tests in old rubies
|
166
|
+
ln -s gemfiles/test-unit.bundled.gemfile Gemfile
|
167
|
+
|
168
|
+
# install gems
|
169
|
+
bundle install
|
170
|
+
```
|
171
|
+
## Run Tests
|
172
|
+
|
173
|
+
Test-Unit and Minitest
|
174
|
+
```
|
175
|
+
bundle exec rake test
|
176
|
+
```
|
177
|
+
RSpec 2.99
|
178
|
+
```
|
179
|
+
bundle exec rspec test
|
180
|
+
```
|
181
|
+
|
182
|
+
RSpec 3+
|
183
|
+
```
|
184
|
+
bundle exec rake spec
|
185
|
+
```
|
186
|
+
|
187
|
+
## Building The Gem
|
188
|
+
```
|
189
|
+
gem build assert_value.gemspec
|
190
|
+
ls assert_value-*.gem
|
191
|
+
gem push assert_value-*.gem
|
192
|
+
```
|
193
|
+
|
125
194
|
## Changelog
|
126
195
|
|
127
196
|
- 1.5: Improve support for various testing frameworks and Ruby versions:
|
data/assert_value.gemspec
CHANGED
File without changes
|
data/gemfiles/rspec.2.99.gemfile
CHANGED
File without changes
|
File without changes
|
data/lib/array_diff.rb
CHANGED
@@ -155,8 +155,6 @@ class ArrayDiff
|
|
155
155
|
offset = 0
|
156
156
|
@diffs.each { |b|
|
157
157
|
first = b[0][1]
|
158
|
-
length = b.length
|
159
|
-
action = b[0][0]
|
160
158
|
addcount = 0
|
161
159
|
remcount = 0
|
162
160
|
b.each { |l|
|
@@ -180,8 +178,8 @@ class ArrayDiff
|
|
180
178
|
print "< "
|
181
179
|
elsif l[0] == "+"
|
182
180
|
offset += 1
|
183
|
-
|
184
|
-
|
181
|
+
if lastdel
|
182
|
+
lastdel = false
|
185
183
|
puts "---"
|
186
184
|
end
|
187
185
|
print "> "
|
data/lib/assert_value.rb
CHANGED
@@ -1,5 +1,4 @@
|
|
1
1
|
# Copyright (c) 2010-2015 Pluron, Inc.
|
2
|
-
|
3
2
|
# there're 4 types of test frameworks we support
|
4
3
|
# 1) Test::Unit from Ruby <= 1.8.7 and Ruby >= 2.2.2
|
5
4
|
# 2) Minitest 2.x-4.x, either bundled with Ruby 1.9 - 2.1 or installed via gem
|
@@ -71,7 +70,7 @@ end
|
|
71
70
|
|
72
71
|
#Use this to raise internal error with a given message
|
73
72
|
#You can define your own method for your application
|
74
|
-
unless defined?
|
73
|
+
unless defined?(internal_error)
|
75
74
|
def internal_error(message = 'internal error')
|
76
75
|
raise message
|
77
76
|
end
|
@@ -190,7 +189,7 @@ module AssertValueAssertion
|
|
190
189
|
if block_given?
|
191
190
|
# rspec passes block to the expect() function, not to the matcher
|
192
191
|
# so string substitution should work as if assert_value is called with a string
|
193
|
-
mode = @rspec_matcher ? :scalar : :block
|
192
|
+
mode = defined?(@rspec_matcher) ? :scalar : :block
|
194
193
|
expected = args[0]
|
195
194
|
actual = ""
|
196
195
|
begin
|
@@ -212,7 +211,7 @@ module AssertValueAssertion
|
|
212
211
|
elsif expected.class == Hash
|
213
212
|
raise ":log key is missing" unless expected.has_key? :log
|
214
213
|
log_file = expected[:log]
|
215
|
-
if defined?
|
214
|
+
if defined?(RAILS_ROOT)
|
216
215
|
log_file = File.expand_path(log_file, RAILS_ROOT)
|
217
216
|
else
|
218
217
|
log_file = File.expand_path(log_file, Dir.pwd)
|
@@ -285,7 +284,7 @@ private
|
|
285
284
|
end
|
286
285
|
|
287
286
|
def increment_assertion_count
|
288
|
-
return if @rspec_matcher or self.class.name =~ /RSpec/
|
287
|
+
return if defined?(@rspec_matcher) or self.class.name =~ /RSpec/
|
289
288
|
case ASSERT_VALUE_TEST_FRAMEWORK
|
290
289
|
when :new_minitest then self.assertions += 1
|
291
290
|
when :old_minitest then self._assertions += 1
|
@@ -296,6 +295,8 @@ private
|
|
296
295
|
def soft_fail(diff)
|
297
296
|
if [:new_minitest, :old_minitest].include?(ASSERT_VALUE_TEST_FRAMEWORK)
|
298
297
|
failure = MiniTest::Assertion.new(diff)
|
298
|
+
elsif [:rspec_only].include?(ASSERT_VALUE_TEST_FRAMEWORK)
|
299
|
+
failure = diff
|
299
300
|
else
|
300
301
|
failure = Test::Unit::Failure.new(name, filter_backtrace(caller(0)), diff)
|
301
302
|
end
|
@@ -315,8 +316,8 @@ private
|
|
315
316
|
# change - what to do with expected value (:create_expected_string or :update_expected_string)
|
316
317
|
# mode - describes signature of assert_value call by type of main argument (:block or :scalar)
|
317
318
|
def accept_string(actual, change, mode)
|
318
|
-
depth = @rspec_matcher ?
|
319
|
-
file,
|
319
|
+
depth = @rspec_matcher ? 8 : 3
|
320
|
+
file, _, line = get_caller_location(:depth => depth)
|
320
321
|
|
321
322
|
# read source file, construct the new source, replacing everything
|
322
323
|
# between "do" and "end" in assert_value's block
|
data/lib/text_diff.rb
CHANGED
@@ -45,8 +45,6 @@ class TextDiff
|
|
45
45
|
offset = 0
|
46
46
|
diff.diffs.each do |tuple|
|
47
47
|
first = tuple[0][1]
|
48
|
-
length = tuple.length
|
49
|
-
action = tuple[0][0]
|
50
48
|
addcount = 0
|
51
49
|
remcount = 0
|
52
50
|
tuple.each do |l|
|
@@ -65,7 +63,6 @@ class TextDiff
|
|
65
63
|
end
|
66
64
|
result += self.chunk(a, from, to)
|
67
65
|
from = nextfrom
|
68
|
-
lastdel = (tuple[0][0] == "-")
|
69
66
|
tuple.each do |l|
|
70
67
|
if l[0] == "-"
|
71
68
|
offset -= 1
|
@@ -80,7 +77,7 @@ class TextDiff
|
|
80
77
|
elsif a.length > 0
|
81
78
|
result += self.chunk(a, from, a.length-1)
|
82
79
|
end
|
83
|
-
linecount = addcount = remcount = offset =
|
80
|
+
linecount = addcount = remcount = offset = 0
|
84
81
|
info_index = nil
|
85
82
|
result.each_with_index do |l, i|
|
86
83
|
if l[0] == '@'
|
data/test/assert_value_test.rb
CHANGED
metadata
CHANGED
@@ -1,47 +1,34 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: assert_value
|
3
|
-
version: !ruby/object:Gem::Version
|
4
|
-
|
5
|
-
prerelease:
|
6
|
-
segments:
|
7
|
-
- 1
|
8
|
-
- 5
|
9
|
-
- 3
|
10
|
-
version: 1.5.3
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 1.5.4
|
11
5
|
platform: ruby
|
12
|
-
authors:
|
6
|
+
authors:
|
13
7
|
- Pluron, Inc.
|
14
8
|
autorequire:
|
15
9
|
bindir: bin
|
16
10
|
cert_chain: []
|
17
|
-
|
18
|
-
date: 2016-01-18 00:00:00 -05:00
|
19
|
-
default_executable:
|
11
|
+
date: 2017-05-10 00:00:00.000000000 Z
|
20
12
|
dependencies: []
|
21
|
-
|
22
13
|
description: assert_value assertion
|
23
14
|
email: support@pluron.com
|
24
15
|
executables: []
|
25
|
-
|
26
16
|
extensions: []
|
27
|
-
|
28
17
|
extra_rdoc_files: []
|
29
|
-
|
30
|
-
|
31
|
-
- .
|
32
|
-
- .travis.yml
|
33
|
-
- Gemfile
|
18
|
+
files:
|
19
|
+
- ".gitignore"
|
20
|
+
- ".travis.yml"
|
34
21
|
- LICENSE
|
35
22
|
- README.md
|
36
23
|
- Rakefile
|
37
24
|
- assert_value.gemspec
|
38
25
|
- assert_value.kdev4
|
39
|
-
- gemfiles/minitest.
|
40
|
-
- gemfiles/minitest.gemfile
|
41
|
-
- gemfiles/old-rubies.gemfile
|
26
|
+
- gemfiles/minitest.bundled.gemfile
|
27
|
+
- gemfiles/minitest.latest.gemfile
|
42
28
|
- gemfiles/rspec.2.99.gemfile
|
43
|
-
- gemfiles/rspec.gemfile
|
44
|
-
- gemfiles/test-unit.gemfile
|
29
|
+
- gemfiles/rspec.latest.gemfile
|
30
|
+
- gemfiles/test-unit.bundled.gemfile
|
31
|
+
- gemfiles/test-unit.latest.gemfile
|
45
32
|
- lib/array_diff.rb
|
46
33
|
- lib/assert_value.rb
|
47
34
|
- lib/minitest/assert_value_plugin.rb
|
@@ -50,41 +37,33 @@ files:
|
|
50
37
|
- test/assert_value_test.rb
|
51
38
|
- test/logs/assert_value_exception_with_files.log.ref
|
52
39
|
- test/logs/assert_value_with_files.log.ref
|
53
|
-
has_rdoc: true
|
54
40
|
homepage: http://github.com/acunote/assert_value
|
55
|
-
licenses:
|
41
|
+
licenses:
|
56
42
|
- MIT
|
43
|
+
metadata: {}
|
57
44
|
post_install_message:
|
58
45
|
rdoc_options: []
|
59
|
-
|
60
|
-
require_paths:
|
46
|
+
require_paths:
|
61
47
|
- lib
|
62
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
63
|
-
|
64
|
-
requirements:
|
48
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
49
|
+
requirements:
|
65
50
|
- - ">="
|
66
|
-
- !ruby/object:Gem::Version
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
version: "0"
|
71
|
-
required_rubygems_version: !ruby/object:Gem::Requirement
|
72
|
-
none: false
|
73
|
-
requirements:
|
51
|
+
- !ruby/object:Gem::Version
|
52
|
+
version: '0'
|
53
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
54
|
+
requirements:
|
74
55
|
- - ">="
|
75
|
-
- !ruby/object:Gem::Version
|
76
|
-
|
77
|
-
segments:
|
78
|
-
- 0
|
79
|
-
version: "0"
|
56
|
+
- !ruby/object:Gem::Version
|
57
|
+
version: '0'
|
80
58
|
requirements: []
|
81
|
-
|
82
59
|
rubyforge_project:
|
83
|
-
rubygems_version:
|
60
|
+
rubygems_version: 2.5.1
|
84
61
|
signing_key:
|
85
|
-
specification_version:
|
86
|
-
summary: Assert that checks that two values (strings, expected and actual) are same
|
87
|
-
|
62
|
+
specification_version: 4
|
63
|
+
summary: Assert that checks that two values (strings, expected and actual) are same
|
64
|
+
and which can magically replace expected value with the actual in case the new behavior
|
65
|
+
(and new actual value) is correct
|
66
|
+
test_files:
|
88
67
|
- test/assert_value_spec.rb
|
89
68
|
- test/assert_value_test.rb
|
90
69
|
- test/logs/assert_value_exception_with_files.log.ref
|