relevance-rcov 0.8.2.1
Sign up to get free protection for your applications and to get access to all the features.
- data/BLURB +149 -0
- data/CHANGES +177 -0
- data/LEGAL +36 -0
- data/LICENSE +56 -0
- data/Rakefile +93 -0
- data/THANKS +96 -0
- data/bin/rcov +560 -0
- data/doc/readme_for_api +41 -0
- data/doc/readme_for_emacs +64 -0
- data/doc/readme_for_rake +62 -0
- data/doc/readme_for_vim +47 -0
- data/editor-extensions/rcov.el +131 -0
- data/editor-extensions/rcov.vim +38 -0
- data/ext/rcovrt/1.8/callsite.c +242 -0
- data/ext/rcovrt/1.8/rcovrt.c +331 -0
- data/ext/rcovrt/1.9/callsite.c +258 -0
- data/ext/rcovrt/1.9/rcovrt.c +315 -0
- data/ext/rcovrt/extconf.rb +23 -0
- data/lib/rcov.rb +991 -0
- data/lib/rcov/lowlevel.rb +145 -0
- data/lib/rcov/rcovtask.rb +156 -0
- data/lib/rcov/report.rb +71 -0
- data/lib/rcov/rexml_extensions.rb +44 -0
- data/lib/rcov/version.rb +11 -0
- data/lib/rcov/xx.rb +754 -0
- data/setup.rb +1588 -0
- data/test/assets/sample_01.rb +7 -0
- data/test/assets/sample_02.rb +5 -0
- data/test/assets/sample_03.rb +20 -0
- data/test/assets/sample_04.rb +10 -0
- data/test/assets/sample_05-new.rb +17 -0
- data/test/assets/sample_05-old.rb +13 -0
- data/test/assets/sample_05.rb +17 -0
- data/test/call_site_analyzer_test.rb +171 -0
- data/test/code_coverage_analyzer_test.rb +188 -0
- data/test/file_statistics_test.rb +471 -0
- data/test/functional_test.rb +89 -0
- data/test/turn_off_rcovrt.rb +4 -0
- metadata +99 -0
@@ -0,0 +1,89 @@
|
|
1
|
+
require File.dirname(__FILE__) + '/test_helper'
|
2
|
+
|
3
|
+
=begin
|
4
|
+
Updating functional testdata automatically is DANGEROUS, so I do manually.
|
5
|
+
|
6
|
+
== update functional test
|
7
|
+
cd ~/src/rcov/test
|
8
|
+
rcov="ruby ../bin/rcov -I../lib:../ext/rcovrt -o expected_coverage"
|
9
|
+
|
10
|
+
$rcov -a sample_04.rb
|
11
|
+
$rcov sample_04.rb
|
12
|
+
$rcov --gcc --include-file=sample --exclude=rcov sample_04.rb > expected_coverage/gcc-text.out
|
13
|
+
|
14
|
+
cp sample_05-old.rb sample_05.rb
|
15
|
+
$rcov --no-html --gcc --include-file=sample --exclude=rcov --save=coverage.info sample_05.rb > expected_coverage/diff-gcc-original.out
|
16
|
+
cp sample_05-new.rb sample_05.rb
|
17
|
+
$rcov --no-html --gcc -D --include-file=sample --exclude=rcov sample_05.rb > expected_coverage/diff-gcc-diff.out
|
18
|
+
$rcov --no-html -D --include-file=sample --exclude=rcov sample_05.rb > expected_coverage/diff.out
|
19
|
+
$rcov --no-html --no-color -D --include-file=sample --exclude=rcov sample_05.rb > expected_coverage/diff-no-color.out
|
20
|
+
$rcov --no-html --gcc --include-file=sample --exclude=rcov sample_05.rb > expected_coverage/diff-gcc-all.out
|
21
|
+
|
22
|
+
=end
|
23
|
+
|
24
|
+
class TestFunctional < Test::Unit::TestCase
|
25
|
+
@@dir = Pathname(__FILE__).expand_path.dirname
|
26
|
+
|
27
|
+
def strip_variable_sections(str)
|
28
|
+
str.sub(/Generated on.+$/, '').sub(/Generated using the.+$/, '').squeeze("\n")
|
29
|
+
end
|
30
|
+
|
31
|
+
def cmp(file)
|
32
|
+
content = lambda{|dir| strip_variable_sections(File.read(@@dir+dir+file))}
|
33
|
+
|
34
|
+
assert_equal(content["expected_coverage"], content["actual_coverage"])
|
35
|
+
end
|
36
|
+
|
37
|
+
def with_testdir(&block)
|
38
|
+
Dir.chdir(@@dir, &block)
|
39
|
+
end
|
40
|
+
|
41
|
+
def run_rcov(opts, script="assets/sample_04.rb", opts_tail="")
|
42
|
+
rcov = @@dir+"../bin/rcov"
|
43
|
+
ruby_opts = "-I../lib:../ext/rcovrt"
|
44
|
+
with_testdir do
|
45
|
+
`cd #{@@dir}; ruby #{ruby_opts} #{rcov} #{opts} -o actual_coverage #{script} #{opts_tail}`
|
46
|
+
yield if block_given?
|
47
|
+
end
|
48
|
+
end
|
49
|
+
|
50
|
+
def test_annotation
|
51
|
+
run_rcov("-a") do
|
52
|
+
cmp "../assets/sample_04.rb"
|
53
|
+
cmp "../assets/sample_03.rb"
|
54
|
+
end
|
55
|
+
end
|
56
|
+
|
57
|
+
@@selection = "--include-file=sample --exclude=rcov"
|
58
|
+
def test_text_gcc
|
59
|
+
run_rcov("--gcc #{@@selection}", "assets/sample_04.rb", "> actual_coverage/gcc-text.out") do
|
60
|
+
cmp "gcc-text.out"
|
61
|
+
end
|
62
|
+
end
|
63
|
+
|
64
|
+
def test_diff
|
65
|
+
with_testdir { FileUtils.cp "assets/sample_05-old.rb", "assets/sample_05.rb" }
|
66
|
+
|
67
|
+
run_rcov("--no-html --gcc #{@@selection} --save=coverage.info", "assets/sample_05.rb", "> actual_coverage/diff-gcc-original.out") do
|
68
|
+
cmp "diff-gcc-original.out"
|
69
|
+
end
|
70
|
+
|
71
|
+
with_testdir { FileUtils.cp "assets/sample_05-new.rb", "assets/sample_05.rb" }
|
72
|
+
run_rcov("--no-html -D --gcc #{@@selection}", "assets/sample_05.rb", "> actual_coverage/diff-gcc-diff.out") do
|
73
|
+
cmp "diff-gcc-diff.out"
|
74
|
+
end
|
75
|
+
|
76
|
+
run_rcov("--no-html -D #{@@selection}", "assets/sample_05.rb", "> actual_coverage/diff.out") do
|
77
|
+
cmp "diff.out"
|
78
|
+
end
|
79
|
+
|
80
|
+
run_rcov("--no-html --no-color -D #{@@selection}", "assets/sample_05.rb", "> actual_coverage/diff-no-color.out") do
|
81
|
+
cmp "diff-no-color.out"
|
82
|
+
end
|
83
|
+
|
84
|
+
run_rcov("--no-html --gcc #{@@selection}", "assets/sample_05.rb", "> actual_coverage/diff-gcc-all.out") do
|
85
|
+
cmp "diff-gcc-all.out"
|
86
|
+
end
|
87
|
+
end
|
88
|
+
|
89
|
+
end
|
metadata
ADDED
@@ -0,0 +1,99 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: relevance-rcov
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.8.2.1
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Mauricio Fernandez
|
8
|
+
- Chad Humphries
|
9
|
+
- Aaron Bedra
|
10
|
+
autorequire:
|
11
|
+
bindir: bin
|
12
|
+
cert_chain:
|
13
|
+
date: 2009-03-17 00:00:00 -07:00
|
14
|
+
default_executable: rcov
|
15
|
+
dependencies: []
|
16
|
+
|
17
|
+
description: rcov is a code coverage tool for Ruby. It is commonly used for viewing overall test unit coverage of target code. It features fast execution (20-300 times faster than previous tools), multiple analysis modes, XHTML and several kinds of text reports, easy automation with Rake via a RcovTask, fairly accurate coverage information through code linkage inference using simple heuristics, colorblind-friendliness...
|
18
|
+
email: mfp@acm.org
|
19
|
+
executables:
|
20
|
+
- rcov
|
21
|
+
extensions:
|
22
|
+
- ext/rcovrt/extconf.rb
|
23
|
+
extra_rdoc_files:
|
24
|
+
- doc/readme_for_api
|
25
|
+
- doc/readme_for_rake
|
26
|
+
- doc/readme_for_vim
|
27
|
+
files:
|
28
|
+
- bin/rcov
|
29
|
+
- lib/rcov.rb
|
30
|
+
- lib/rcov/lowlevel.rb
|
31
|
+
- lib/rcov/xx.rb
|
32
|
+
- lib/rcov/version.rb
|
33
|
+
- lib/rcov/report.rb
|
34
|
+
- lib/rcov/rcovtask.rb
|
35
|
+
- lib/rcov/rexml_extensions.rb
|
36
|
+
- ext/rcovrt/extconf.rb
|
37
|
+
- ext/rcovrt/1.8/rcovrt.c
|
38
|
+
- ext/rcovrt/1.9/rcovrt.c
|
39
|
+
- ext/rcovrt/1.8/callsite.c
|
40
|
+
- ext/rcovrt/1.9/callsite.c
|
41
|
+
- LEGAL
|
42
|
+
- LICENSE
|
43
|
+
- Rakefile
|
44
|
+
- doc/readme_for_rake
|
45
|
+
- doc/readme_for_vim
|
46
|
+
- doc/readme_for_emacs
|
47
|
+
- doc/readme_for_api
|
48
|
+
- THANKS
|
49
|
+
- test/functional_test.rb
|
50
|
+
- test/file_statistics_test.rb
|
51
|
+
- test/assets/sample_03.rb
|
52
|
+
- test/assets/sample_05-new.rb
|
53
|
+
- test/code_coverage_analyzer_test.rb
|
54
|
+
- test/assets/sample_04.rb
|
55
|
+
- test/assets/sample_02.rb
|
56
|
+
- test/assets/sample_05-old.rb
|
57
|
+
- test/assets/sample_01.rb
|
58
|
+
- test/turn_off_rcovrt.rb
|
59
|
+
- test/call_site_analyzer_test.rb
|
60
|
+
- test/assets/sample_05.rb
|
61
|
+
- editor-extensions/rcov.vim
|
62
|
+
- editor-extensions/rcov.el
|
63
|
+
- setup.rb
|
64
|
+
- BLURB
|
65
|
+
- CHANGES
|
66
|
+
has_rdoc: true
|
67
|
+
homepage: http://github.com/relevance/rcov
|
68
|
+
post_install_message:
|
69
|
+
rdoc_options:
|
70
|
+
- --main
|
71
|
+
- readme_for_api
|
72
|
+
- --title
|
73
|
+
- rcov code coverage tool
|
74
|
+
require_paths:
|
75
|
+
- lib
|
76
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
77
|
+
requirements:
|
78
|
+
- - ">"
|
79
|
+
- !ruby/object:Gem::Version
|
80
|
+
version: 0.0.0
|
81
|
+
version:
|
82
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
83
|
+
requirements:
|
84
|
+
- - ">="
|
85
|
+
- !ruby/object:Gem::Version
|
86
|
+
version: "0"
|
87
|
+
version:
|
88
|
+
requirements: []
|
89
|
+
|
90
|
+
rubyforge_project:
|
91
|
+
rubygems_version: 1.2.0
|
92
|
+
signing_key:
|
93
|
+
specification_version: 1
|
94
|
+
summary: Code coverage analysis tool for Ruby
|
95
|
+
test_files:
|
96
|
+
- test/functional_test.rb
|
97
|
+
- test/file_statistics_test.rb
|
98
|
+
- test/code_coverage_analyzer_test.rb
|
99
|
+
- test/call_site_analyzer_test.rb
|