Skip to content

Commit 4ab2769

Browse files
committed
improve io_assert arg names; fix test bugs
1 parent a12b8bd commit 4ab2769

6 files changed

+71
-62
lines changed

Gemfile

+4-4
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@ source "http://rubygems.org"
66
# Add dependencies to develop your gem here.
77
# Include everything needed to run rake, tests, features, etc.
88
group :development do
9-
gem "minitest", '~> 5.3'
10-
gem "rdoc", "~> 4.1"
11-
gem "bundler", "~> 1.0"
12-
gem "jeweler", "~> 2.0"
9+
gem "minitest", ">= 5.10.1"
10+
gem "rdoc", ">= 5.0.0"
11+
gem "bundler", ">= 1.0"
12+
gem "jeweler", ">= 2.3.2"
1313
end

Gemfile.lock

+33-27
Original file line numberDiff line numberDiff line change
@@ -1,59 +1,65 @@
11
GEM
22
remote: http://rubygems.org/
33
specs:
4-
addressable (2.3.8)
4+
addressable (2.5.0)
5+
public_suffix (~> 2.0, >= 2.0.2)
56
builder (3.2.2)
67
descendants_tracker (0.0.4)
78
thread_safe (~> 0.3, >= 0.3.1)
89
faraday (0.9.2)
910
multipart-post (>= 1.2, < 3)
10-
git (1.2.9.1)
11-
github_api (0.12.4)
11+
git (1.3.0)
12+
github_api (0.11.3)
1213
addressable (~> 2.3)
13-
descendants_tracker (~> 0.0.4)
14+
descendants_tracker (~> 0.0.1)
1415
faraday (~> 0.8, < 0.10)
15-
hashie (>= 3.4)
16+
hashie (>= 1.2)
1617
multi_json (>= 1.7.5, < 2.0)
17-
nokogiri (~> 1.6.6)
18+
nokogiri (~> 1.6.0)
1819
oauth2
19-
hashie (3.4.3)
20+
hashie (3.4.6)
2021
highline (1.7.8)
21-
jeweler (2.0.1)
22+
jeweler (2.3.2)
2223
builder
2324
bundler (>= 1.0)
2425
git (>= 1.2.5)
25-
github_api
26+
github_api (~> 0.11.0)
2627
highline (>= 1.6.15)
2728
nokogiri (>= 1.5.10)
29+
psych (~> 2.2)
2830
rake
2931
rdoc
30-
jwt (1.5.2)
31-
mini_portile (0.6.2)
32-
minitest (5.8.3)
33-
multi_json (1.11.2)
34-
multi_xml (0.5.5)
32+
semver2
33+
jwt (1.5.6)
34+
mini_portile2 (2.1.0)
35+
minitest (5.10.1)
36+
multi_json (1.12.1)
37+
multi_xml (0.6.0)
3538
multipart-post (2.0.0)
36-
nokogiri (1.6.6.3)
37-
mini_portile (~> 0.6.0)
38-
oauth2 (1.0.0)
39-
faraday (>= 0.8, < 0.10)
39+
nokogiri (1.6.8.1)
40+
mini_portile2 (~> 2.1.0)
41+
oauth2 (1.3.0)
42+
faraday (>= 0.8, < 0.11)
4043
jwt (~> 1.0)
4144
multi_json (~> 1.3)
4245
multi_xml (~> 0.5)
43-
rack (~> 1.2)
44-
rack (1.6.4)
45-
rake (10.4.2)
46-
rdoc (4.2.0)
46+
rack (>= 1.2, < 3)
47+
psych (2.2.2)
48+
public_suffix (2.0.5)
49+
rack (2.0.1)
50+
rake (12.0.0)
51+
rdoc (5.0.0)
52+
semver2 (3.4.2)
4753
thread_safe (0.3.5)
4854

4955
PLATFORMS
5056
ruby
5157

5258
DEPENDENCIES
53-
bundler (~> 1.0)
54-
jeweler (~> 2.0)
55-
minitest (~> 5.3)
56-
rdoc (~> 4.1)
59+
bundler (>= 1.0)
60+
jeweler (>= 2.3.2)
61+
minitest (>= 5.10.1)
62+
rdoc (>= 5.0.0)
5763

5864
BUNDLED WITH
59-
1.10.6
65+
1.13.7

cmd-utils.gemspec

+14-14
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ Gem::Specification.new do |s|
1111
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
1212
s.require_paths = ["lib"]
1313
s.authors = ["Alan K. Stebbens"]
14-
s.date = "2015-11-18"
14+
s.date = "2017-01-11"
1515
s.description = "Several ruby libraries for building command-line utilities."
1616
s.email = "[email protected]"
1717
s.extra_rdoc_files = [
@@ -41,28 +41,28 @@ Gem::Specification.new do |s|
4141
]
4242
s.homepage = "http://bitbucket.org/aks_/cmd-utils"
4343
s.licenses = ["MIT"]
44-
s.rubygems_version = "2.4.5.1"
44+
s.rubygems_version = "2.5.1"
4545
s.summary = "Utilities for building CLIs"
4646

4747
if s.respond_to? :specification_version then
4848
s.specification_version = 4
4949

5050
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
51-
s.add_development_dependency(%q<minitest>, ["~> 5.3"])
52-
s.add_development_dependency(%q<rdoc>, ["~> 4.1"])
53-
s.add_development_dependency(%q<bundler>, ["~> 1.0"])
54-
s.add_development_dependency(%q<jeweler>, ["~> 2.0"])
51+
s.add_development_dependency(%q<minitest>, [">= 5.10.1"])
52+
s.add_development_dependency(%q<rdoc>, [">= 5.0.0"])
53+
s.add_development_dependency(%q<bundler>, [">= 1.0"])
54+
s.add_development_dependency(%q<jeweler>, [">= 2.3.2"])
5555
else
56-
s.add_dependency(%q<minitest>, ["~> 5.3"])
57-
s.add_dependency(%q<rdoc>, ["~> 4.1"])
58-
s.add_dependency(%q<bundler>, ["~> 1.0"])
59-
s.add_dependency(%q<jeweler>, ["~> 2.0"])
56+
s.add_dependency(%q<minitest>, [">= 5.10.1"])
57+
s.add_dependency(%q<rdoc>, [">= 5.0.0"])
58+
s.add_dependency(%q<bundler>, [">= 1.0"])
59+
s.add_dependency(%q<jeweler>, [">= 2.3.2"])
6060
end
6161
else
62-
s.add_dependency(%q<minitest>, ["~> 5.3"])
63-
s.add_dependency(%q<rdoc>, ["~> 4.1"])
64-
s.add_dependency(%q<bundler>, ["~> 1.0"])
65-
s.add_dependency(%q<jeweler>, ["~> 2.0"])
62+
s.add_dependency(%q<minitest>, [">= 5.10.1"])
63+
s.add_dependency(%q<rdoc>, [">= 5.0.0"])
64+
s.add_dependency(%q<bundler>, [">= 1.0"])
65+
s.add_dependency(%q<jeweler>, [">= 2.3.2"])
6666
end
6767
end
6868

test/helper.rb

+14-11
Original file line numberDiff line numberDiff line change
@@ -19,9 +19,12 @@ module IO_Assert
1919
def io_assert ioname, name, actual, expected
2020
if expected
2121
case expected
22-
when TrueClass then refute_empty(actual, "#{name} $#{ioname} should not be empty")
23-
when FalseClass then assert_empty(actual, "#{name} $#{ioname} should be empty")
24-
when String then assert_match(actual, expected, "#{name} $#{ioname}: expected '#{expected}', got: '#{actual}'")
22+
when TrueClass
23+
refute_empty(actual, "#{name} $#{ioname} should not be empty")
24+
when FalseClass
25+
then assert_empty(actual, "#{name} $#{ioname} should be empty")
26+
when String, Regexp
27+
then assert_match(expected, actual, "#{name} $#{ioname}: expected '#{expected.inspect}', got: '#{actual}'")
2528
end
2629
end
2730
true
@@ -32,35 +35,35 @@ module Gen_Test
3235
include IO_Assert
3336

3437
#def gen_test name, norun, verbose, quiet, debug, output
35-
def gen_test name, flags, output
38+
def gen_test name, flags, expected_err
3639
$norun = flags.include?('n')
3740
$verbose = flags.include?('v')
3841
$quiet = flags.include?('q')
3942
$debug = flags.include?('d')
40-
out, err = capture_io { yield }
41-
assert_empty(out, "#{name} $stdout should be empty")
42-
io_assert :stderr, name, err, output
43+
actual_out, actual_err = capture_io { yield }
44+
assert_empty(actual_out, "#{name} $stdout should be empty")
45+
io_assert :stderr, name, actual_err, expected_err
4346
end
4447
end
4548

4649
module Run_Test
4750
include IO_Assert
48-
def run_test name, flags, output=nil, errput=nil
51+
def run_test name, flags, expected_out=nil, expected_err=nil
4952
$norun = flags.include?('n')
5053
$verbose = flags.include?('v')
5154
$quiet = flags.include?('q')
5255
$debug = flags.include?('d')
5356
begin
54-
out, err = capture_subprocess_io do
57+
actual_out, actual_err = capture_subprocess_io do
5558
begin
5659
yield
5760
rescue
5861
end
5962
end
6063
rescue
6164
end
62-
io_assert :stdout, name, out, output
63-
io_assert :stderr, name, err, errput
65+
io_assert :stdout, name, actual_out, expected_out
66+
io_assert :stderr, name, actual_err, expected_err
6467
true
6568
end
6669
end

test/test-run-utils.rb

+4-4
Original file line numberDiff line numberDiff line change
@@ -23,9 +23,9 @@ def test_run_output
2323
end
2424

2525
def test_run_errmsg
26-
run_test("run 11", 'n', false, "(norun) ( exit 1)\n") { cmd_run "( exit 1)", 'error 11' }
27-
run_test("run 12", 'v', false, ">> ( exit 1)\nerror 12\n") { cmd_run "( exit 1)", 'error 12' }
28-
run_test("run 13", 'v', false, ">> ( exit 0)\n") { cmd_run "( exit 0)", 'no error 13' }
29-
run_test("run 14", ' ', false, false) { cmd_run "( exit 0)", 'no error 13' }
26+
run_test("run 11", 'n', false, "(norun) ( exit 1)\n") { cmd_run "( exit 1)", 'error 11' }
27+
run_test("run 12", 'v', false, />> \( exit 1\).*\nerror 12\n/m) { cmd_run "( exit 1)", 'error 12' }
28+
run_test("run 13", 'v', false, ">> ( exit 0)\n") { cmd_run "( exit 0)", 'no error 13' }
29+
run_test("run 14", ' ', false, false) { cmd_run "( exit 0)", 'no error 13' }
3030
end
3131
end

test/test-talk-utils.rb

+2-2
Original file line numberDiff line numberDiff line change
@@ -239,8 +239,8 @@ def test_dtalk_block
239239
def test_dtalkf_content
240240
gen_test('dtalkf_content', ' d', "-hello-") { dtalkf "-%s-", "hello" }
241241
gen_test('dtalkf_content', ' d', "-hello-") { dtalkf("-%s-") { "hello" } }
242-
gen_test('dtalkf_default_content', ' d', "-hello-") { dtalkf "hello" }
243-
gen_test('dtalkf_default_content', ' d', "-hello-") { dtalkf { "hello" } }
242+
gen_test('dtalkf_default_content', ' d', "hello") { dtalkf "hello" }
243+
gen_test('dtalkf_default_content', ' d', "hello") { dtalkf { "hello" } }
244244

245245
gen_test('dtalkf_content', ' ', false) { dtalkf "-%s-", "hello" }
246246
gen_test('dtalkf_content', ' ', false) { dtalkf("-%s-") { "hello" } }

0 commit comments

Comments
 (0)