assert 1.1.0 → 2.0.0.rc.1
Sign up to get free protection for your applications and to get access to all the features.
- data/.assert.rb +3 -0
- data/README.md +182 -108
- data/Rakefile +0 -3
- data/bin/assert +1 -1
- data/lib/assert.rb +75 -4
- data/lib/assert/assert_runner.rb +76 -0
- data/lib/assert/cli.rb +25 -46
- data/lib/assert/context.rb +3 -3
- data/lib/assert/result.rb +65 -55
- data/lib/assert/runner.rb +19 -38
- data/lib/assert/suite.rb +0 -7
- data/lib/assert/test.rb +4 -16
- data/lib/assert/version.rb +1 -1
- data/lib/assert/view.rb +23 -0
- data/lib/assert/view/base.rb +10 -19
- data/lib/assert/view/default_view.rb +16 -11
- data/lib/assert/view/helpers/ansi_styles.rb +1 -1
- data/lib/assert/view/helpers/common.rb +37 -16
- data/test/assert_test.rb +29 -14
- data/test/context/class_methods_test.rb +2 -2
- data/test/context_test.rb +28 -50
- data/test/helper.rb +4 -2
- data/test/runner_test.rb +5 -4
- data/test/suite_test.rb +1 -1
- data/test/test_test.rb +8 -15
- data/test/view/base_tests.rb +20 -37
- metadata +17 -39
- data/lib/assert/autorun.rb +0 -37
- data/lib/assert/options.rb +0 -43
- data/lib/assert/rake_tasks.rb +0 -75
- data/lib/assert/rake_tasks/irb.rb +0 -33
- data/lib/assert/rake_tasks/scope.rb +0 -100
- data/lib/assert/rake_tasks/test_task.rb +0 -66
- data/lib/assert/result_set.rb +0 -17
- data/lib/assert/setup.rb +0 -3
- data/lib/assert/setup/all.rb +0 -5
- data/lib/assert/setup/helpers.rb +0 -72
- data/lib/assert/setup/options.rb +0 -6
- data/lib/assert/setup/runner.rb +0 -13
- data/lib/assert/setup/suite.rb +0 -13
- data/lib/assert/setup/view.rb +0 -39
- data/lib/assert/view/helpers/capture_output.rb +0 -23
- data/test/default_view_test.rb +0 -16
- data/test/irb.rb +0 -5
- data/test/options_test.rb +0 -40
- data/test/rake_tasks/irb_test.rb +0 -45
- data/test/rake_tasks/scope_test.rb +0 -63
- data/test/rake_tasks/test_task_test.rb +0 -80
- data/test/result_set_test.rb +0 -72
@@ -1,63 +0,0 @@
|
|
1
|
-
require 'assert'
|
2
|
-
|
3
|
-
require 'assert/rake_tasks/scope'
|
4
|
-
|
5
|
-
module Assert::RakeTasks
|
6
|
-
|
7
|
-
class ScopeTests < Assert::Context
|
8
|
-
desc "the scope rake tasks handler"
|
9
|
-
setup do
|
10
|
-
@scope_root = File.expand_path('../../../test/fixtures', __FILE__)
|
11
|
-
@scope = Assert::RakeTasks::Scope.new(File.join(@scope_root, 'test_root'))
|
12
|
-
end
|
13
|
-
subject { @scope }
|
14
|
-
|
15
|
-
should have_class_methods :test_file_suffixes
|
16
|
-
should have_readers :path, :nested_files, :path_file_list, :test_tasks, :scopes
|
17
|
-
should have_instance_methods :namespace, :to_test_task
|
18
|
-
|
19
|
-
should "know its the test file suffix" do
|
20
|
-
assert_equal ['_test.rb', '_tests.rb'], subject.class.test_file_suffixes
|
21
|
-
end
|
22
|
-
|
23
|
-
should "know its namespace" do
|
24
|
-
assert_equal :test_root, subject.namespace
|
25
|
-
assert_equal :shallow, Assert::RakeTasks::Scope.new(File.join(@scope_root, 'test_root/shallow')).namespace
|
26
|
-
end
|
27
|
-
|
28
|
-
should "know its nested files" do
|
29
|
-
assert_equal 6, subject.nested_files.size
|
30
|
-
assert_empty Assert::RakeTasks::Scope.new('/does/not/exist').nested_files
|
31
|
-
|
32
|
-
h = Assert::RakeTasks::Scope.new("#{@scope_root}/test_root/shallow")
|
33
|
-
assert_equal 2, h.nested_files.size
|
34
|
-
end
|
35
|
-
|
36
|
-
should "know its path file" do
|
37
|
-
assert_empty subject.path_file_list
|
38
|
-
|
39
|
-
h = Assert::RakeTasks::Scope.new("#{@scope_root}/test_root/shallow")
|
40
|
-
assert_equal 1, h.path_file_list.size
|
41
|
-
end
|
42
|
-
|
43
|
-
should "convert to a test task" do
|
44
|
-
assert_not Assert::RakeTasks::Scope.new('/does/not/exist').to_test_task
|
45
|
-
|
46
|
-
tt = subject.to_test_task
|
47
|
-
assert_kind_of TestTask, tt
|
48
|
-
assert_equal subject.nested_files.size+subject.path_file_list.size, tt.files.size
|
49
|
-
end
|
50
|
-
|
51
|
-
should "have a test task for each standalone test file" do
|
52
|
-
assert_equal 2, subject.test_tasks.size
|
53
|
-
assert_kind_of TestTask, subject.test_tasks.first
|
54
|
-
end
|
55
|
-
|
56
|
-
should "have a scope for each immediate test dir or test dir/file in the scope" do
|
57
|
-
assert_equal 2, subject.scopes.size
|
58
|
-
assert_kind_of Scope, subject.scopes.first
|
59
|
-
end
|
60
|
-
|
61
|
-
end
|
62
|
-
|
63
|
-
end
|
@@ -1,80 +0,0 @@
|
|
1
|
-
require 'assert'
|
2
|
-
|
3
|
-
require 'assert/rake_tasks/test_task'
|
4
|
-
|
5
|
-
module Assert::RakeTasks
|
6
|
-
|
7
|
-
class TestTaskTests < Assert::Context
|
8
|
-
desc "the test task"
|
9
|
-
setup do
|
10
|
-
@task = Assert::RakeTasks::TestTask.new('thing')
|
11
|
-
@some_thing = Assert::RakeTasks::TestTask.new('test/some/thing')
|
12
|
-
end
|
13
|
-
subject { @task }
|
14
|
-
|
15
|
-
should have_accessors :path, :files
|
16
|
-
should have_instance_methods :relative_path, :scope_description, :description, :name
|
17
|
-
should have_instance_methods :file_list, :ruby_args, :show_loaded_files?
|
18
|
-
|
19
|
-
should "default with empty files collection" do
|
20
|
-
assert_equal [], subject.files
|
21
|
-
end
|
22
|
-
|
23
|
-
should "know its relative path" do
|
24
|
-
assert_equal "", subject.relative_path
|
25
|
-
assert_equal "some/thing", @some_thing.relative_path
|
26
|
-
end
|
27
|
-
|
28
|
-
should "know its scope description" do
|
29
|
-
assert_equal "", subject.scope_description
|
30
|
-
assert_equal " for some/thing", @some_thing.scope_description
|
31
|
-
end
|
32
|
-
|
33
|
-
should "know its task description" do
|
34
|
-
assert_equal "Run all tests", subject.description
|
35
|
-
assert_equal "Run all tests for some/thing", @some_thing.description
|
36
|
-
end
|
37
|
-
|
38
|
-
should "know its name" do
|
39
|
-
assert_equal :thing, @task.name
|
40
|
-
assert_equal :thing, @some_thing.name
|
41
|
-
end
|
42
|
-
|
43
|
-
should "build a file list string" do
|
44
|
-
subject.files = ["test_one_test.rb", "test_two_test.rb"]
|
45
|
-
assert_equal "\"test_one_test.rb\" \"test_two_test.rb\"", subject.file_list
|
46
|
-
end
|
47
|
-
|
48
|
-
should "know its ruby args" do
|
49
|
-
subject.files = ["test_one_test.rb", "test_two_test.rb"]
|
50
|
-
assert_equal "-rrubygems \"#{subject.send(:rake_loader)}\" #{subject.file_list}", subject.ruby_args
|
51
|
-
end
|
52
|
-
|
53
|
-
end
|
54
|
-
|
55
|
-
class VerboseTests < TestTaskTests
|
56
|
-
setup do
|
57
|
-
@orig_env_setting = ENV["show_loaded_files"]
|
58
|
-
ENV["show_loaded_files"] = 'false'
|
59
|
-
end
|
60
|
-
teardown do
|
61
|
-
ENV["show_loaded_files"] = @orig_env_setting
|
62
|
-
end
|
63
|
-
|
64
|
-
should "not show loaded files by default" do
|
65
|
-
assert_equal false, subject.show_loaded_files?
|
66
|
-
end
|
67
|
-
end
|
68
|
-
|
69
|
-
class EnvVerboseTests < VerboseTests
|
70
|
-
desc "if the show_loaded_files env setting is true"
|
71
|
-
setup do
|
72
|
-
ENV["show_loaded_files"] = 'true'
|
73
|
-
end
|
74
|
-
|
75
|
-
should "show loaded files" do
|
76
|
-
assert_equal true, subject.show_loaded_files?
|
77
|
-
end
|
78
|
-
end
|
79
|
-
|
80
|
-
end
|
data/test/result_set_test.rb
DELETED
@@ -1,72 +0,0 @@
|
|
1
|
-
require 'assert'
|
2
|
-
|
3
|
-
require 'assert/result_set'
|
4
|
-
require 'assert/result'
|
5
|
-
require 'assert/view/base'
|
6
|
-
|
7
|
-
class Assert::ResultSet
|
8
|
-
|
9
|
-
class BasicTest < Assert::Context
|
10
|
-
desc "Assert result set"
|
11
|
-
setup do
|
12
|
-
@result_set = Assert::ResultSet.new
|
13
|
-
end
|
14
|
-
subject { @result_set }
|
15
|
-
|
16
|
-
should have_accessor :callback
|
17
|
-
|
18
|
-
should "be a extension of Array" do
|
19
|
-
assert_kind_of ::Array, subject
|
20
|
-
end
|
21
|
-
end
|
22
|
-
|
23
|
-
|
24
|
-
class CallbackTest < BasicTest
|
25
|
-
desc "using a callback"
|
26
|
-
setup do
|
27
|
-
@results = []
|
28
|
-
@result_set = Assert::ResultSet.new(Proc.new {|result| @results.push(result) })
|
29
|
-
|
30
|
-
@pass_result = Assert::Result::Pass.new(Factory.test("test"), "pass", [])
|
31
|
-
@result_set << @pass_result
|
32
|
-
@fail_result = Assert::Result::Fail.new(Factory.test("test"), "fail", [])
|
33
|
-
@result_set << @fail_result
|
34
|
-
@skip_result = Assert::Result::Skip.new(Factory.test("test"), Assert::Result::TestSkipped.new)
|
35
|
-
@result_set << @skip_result
|
36
|
-
@error_result = Assert::Result::Error.new(Factory.test("test"), RuntimeError.new)
|
37
|
-
@result_set << @error_result
|
38
|
-
end
|
39
|
-
subject{ @view }
|
40
|
-
|
41
|
-
should "have 'printed' 1 pass result" do
|
42
|
-
pass_results = @results.reject{|r| !r.pass? }
|
43
|
-
assert_equal 1, pass_results.size
|
44
|
-
assert_kind_of Assert::Result::Pass, pass_results.first
|
45
|
-
assert_equal @pass_result.test_name, pass_results.first.test_name
|
46
|
-
assert_equal @pass_result.message, pass_results.first.message
|
47
|
-
end
|
48
|
-
should "have 'printed' 1 fail result" do
|
49
|
-
fail_results = @results.reject{|r| !r.fail? }
|
50
|
-
assert_equal 1, fail_results.size
|
51
|
-
assert_kind_of Assert::Result::Fail, fail_results.first
|
52
|
-
assert_equal @fail_result.test_name, fail_results.first.test_name
|
53
|
-
assert_equal @fail_result.message, fail_results.first.message
|
54
|
-
end
|
55
|
-
should "have 'printed' 1 skip result" do
|
56
|
-
skip_results = @results.reject{|r| !r.skip? }
|
57
|
-
assert_equal 1, skip_results.size
|
58
|
-
assert_kind_of Assert::Result::Skip, skip_results.first
|
59
|
-
assert_equal @skip_result.test_name, skip_results.first.test_name
|
60
|
-
assert_equal @skip_result.message, skip_results.first.message
|
61
|
-
end
|
62
|
-
should "have 'printed' 1 error result" do
|
63
|
-
error_results = @results.reject{|r| !r.error? }
|
64
|
-
assert_equal 1, error_results.size
|
65
|
-
assert_kind_of Assert::Result::Error, error_results.first
|
66
|
-
assert_equal @error_result.test_name, error_results.first.test_name
|
67
|
-
assert_equal @error_result.message, error_results.first.message
|
68
|
-
end
|
69
|
-
|
70
|
-
end
|
71
|
-
|
72
|
-
end
|