methodchain 0.2.0 → 0.2.1
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.
- data/README +40 -28
- data/coverage/-var-lib-gems-1_8-gems-rcov-0_8_0_2-lib-rcov_rb.html +1607 -0
- data/coverage/index.html +347 -0
- data/coverage/lib-methodchain-not_included_rb.html +689 -0
- data/coverage/lib-methodchain_rb.html +635 -0
- data/doc/created.rid +1 -1
- data/doc/fr_method_index.html +5 -5
- data/pkg/methodchain-0.2.0.gem +0 -0
- data/rakefile +74 -9
- metadata +8 -2
data/rakefile
CHANGED
@@ -1,9 +1,48 @@
|
|
1
1
|
project = "methodchain"
|
2
|
-
|
3
|
-
|
2
|
+
|
3
|
+
def exit_msg(msg, code=1)
|
4
|
+
puts msg
|
5
|
+
exit(code)
|
6
|
+
end
|
7
|
+
def run command
|
8
|
+
res = `#{command}`
|
9
|
+
exit_msg res, $?.exitstatus if $?.exitstatus != 0
|
10
|
+
res
|
11
|
+
end
|
12
|
+
def __DIR__; "#{File.dirname(__FILE__)}" end
|
13
|
+
class IO
|
14
|
+
def self.write( file, str )
|
15
|
+
self.open( file, 'w' ) { |fh| fh.print str }
|
16
|
+
end
|
17
|
+
def self.read_write( file, write_file=file )
|
18
|
+
self.write(write_file, (yield( self.read( file ))))
|
19
|
+
end
|
20
|
+
end
|
21
|
+
|
22
|
+
desc "test run all tests"
|
23
|
+
task :test => [:spec, 'readme:test']
|
24
|
+
|
25
|
+
desc "run specs"
|
26
|
+
task :spec do
|
4
27
|
Dir[ 'spec/*' ].each do |file|
|
5
|
-
puts
|
6
|
-
|
28
|
+
(puts (run "spec #{file}"))
|
29
|
+
end
|
30
|
+
end
|
31
|
+
|
32
|
+
require 'rubygems'
|
33
|
+
require 'spec/rake/spectask'
|
34
|
+
desc "Run all examples with RCov"
|
35
|
+
Spec::Rake::SpecTask.new('rcov') do |t|
|
36
|
+
t.spec_files = ['spec/*.rb']
|
37
|
+
t.rcov = true
|
38
|
+
t.rcov_opts = ['--exclude', 'spec']
|
39
|
+
end
|
40
|
+
|
41
|
+
namespace :rcov do
|
42
|
+
require 'spec/rake/verify_rcov'
|
43
|
+
RCov::VerifyTask.new(:verify => :spec) do |t|
|
44
|
+
t.threshold = 100 # Make sure you have rcov 0.7 or higher!
|
45
|
+
t.index_html = 'coverage/lib-methodchain-not_included_rb.html'
|
7
46
|
end
|
8
47
|
end
|
9
48
|
|
@@ -12,7 +51,8 @@ task :release => [:rdoc,:package] do
|
|
12
51
|
Dir.chdir('pkg') do
|
13
52
|
release = Dir['*.gem'].sort_by {|file| File.mtime(file)}.last
|
14
53
|
release =~ /^[^-]+-([.0-9]+).gem$/
|
15
|
-
`rubyforge login && rubyforge add_release #{project} #{project} #$1 #{release}`
|
54
|
+
puts `rubyforge login && rubyforge add_release #{project} #{project} #$1 #{release}`
|
55
|
+
puts $?.exitstatus
|
16
56
|
end
|
17
57
|
end
|
18
58
|
|
@@ -23,17 +63,42 @@ end
|
|
23
63
|
|
24
64
|
namespace :readme do
|
25
65
|
desc "create html for website using coderay, use --silent option"
|
26
|
-
task :html
|
66
|
+
task :html do
|
67
|
+
rm_rf 'doc'
|
68
|
+
`rdoc --quiet README`
|
27
69
|
require 'hpricot'
|
28
70
|
doc = open( 'doc/files/README.html' ) { |f| Hpricot(f) }
|
29
71
|
# find example code
|
30
|
-
doc.at('#description').search('pre').
|
31
|
-
select {|elem| elem.inner_html =~ /class |module /}.each do |ex|
|
72
|
+
doc.at('#description').search('pre').each do |ex|
|
73
|
+
#select {|elem| elem.inner_html =~ /class |module /}.each do |ex|
|
32
74
|
# add coderay and undo what rdoc has done in the example code
|
33
75
|
ex.swap("<coderay lang='ruby'>#{ex.inner_html.gsub('"', '"').gsub('>','>')}</coderay>")
|
34
76
|
end
|
35
77
|
puts doc.at('#description').to_html
|
36
78
|
end
|
79
|
+
|
80
|
+
# run README through xmp
|
81
|
+
desc "run README code through xmp filter"
|
82
|
+
task :test do
|
83
|
+
# grab example code from README
|
84
|
+
tmpdir = __DIR__ + '/tmp'
|
85
|
+
mkdir tmpdir unless File.directory? tmpdir
|
86
|
+
example_file = "#{File.expand_path(tmpdir)}/example.rb"
|
87
|
+
|
88
|
+
File.write(example_file, (
|
89
|
+
File.read("#{__DIR__}/lib/methodchain/not_included.rb") <<
|
90
|
+
"class Object; include MethodChain end\n" <<
|
91
|
+
File.readlines('README').grep(/^ / ).
|
92
|
+
reject {|l| l =~ /^\s*require/ or l.include?('Error')}.
|
93
|
+
join ))
|
94
|
+
|
95
|
+
command = "ruby ../bin/xmpfilter -c #{example_file}"
|
96
|
+
Dir.chdir '/home/greg/src/head/lib' do
|
97
|
+
run "#{command}"
|
98
|
+
end
|
99
|
+
rm_rf 'tmp'
|
100
|
+
puts "README code successfully evaluated"
|
101
|
+
end
|
37
102
|
end
|
38
103
|
|
39
104
|
require 'rubygems'
|
@@ -42,7 +107,7 @@ require 'rake/gempackagetask'
|
|
42
107
|
spec = Gem::Specification.new do |s|
|
43
108
|
s.name = project
|
44
109
|
s.rubyforge_project = project
|
45
|
-
s.version = "0.2.
|
110
|
+
s.version = "0.2.1"
|
46
111
|
s.author = "Greg Weber"
|
47
112
|
s.email = "greg@gregweber.info"
|
48
113
|
s.homepage = "http://projects.gregweber.info/#{project}"
|
metadata
CHANGED
@@ -3,8 +3,8 @@ rubygems_version: 0.9.4
|
|
3
3
|
specification_version: 1
|
4
4
|
name: methodchain
|
5
5
|
version: !ruby/object:Gem::Version
|
6
|
-
version: 0.2.
|
7
|
-
date: 2008-03-
|
6
|
+
version: 0.2.1
|
7
|
+
date: 2008-03-10 00:00:00 -05:00
|
8
8
|
summary: convenience methods for method chaining
|
9
9
|
require_paths:
|
10
10
|
- lib
|
@@ -35,6 +35,7 @@ files:
|
|
35
35
|
- ./spec
|
36
36
|
- ./README
|
37
37
|
- ./rakefile
|
38
|
+
- ./coverage
|
38
39
|
- doc/files
|
39
40
|
- doc/index.html
|
40
41
|
- doc/rdoc-style.css
|
@@ -45,11 +46,16 @@ files:
|
|
45
46
|
- doc/classes
|
46
47
|
- lib/methodchain
|
47
48
|
- lib/methodchain.rb
|
49
|
+
- pkg/methodchain-0.2.0.gem
|
48
50
|
- pkg/methodchain-0.0.1.gem
|
49
51
|
- pkg/methodchain-0.0.3.gem
|
50
52
|
- pkg/methodchain-0.0.5.gem
|
51
53
|
- pkg/methodchain-0.1.0.gem
|
52
54
|
- spec/methodchain_spec.rb
|
55
|
+
- coverage/lib-methodchain_rb.html
|
56
|
+
- coverage/index.html
|
57
|
+
- coverage/-var-lib-gems-1_8-gems-rcov-0_8_0_2-lib-rcov_rb.html
|
58
|
+
- coverage/lib-methodchain-not_included_rb.html
|
53
59
|
- README
|
54
60
|
test_files: []
|
55
61
|
|