gemrage 0.3.2 → 0.4.0
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/Gemfile +1 -0
- data/Gemfile.lock +6 -0
- data/VERSION +1 -1
- data/gemrage.gemspec +160 -2
- data/lib/rubygems/commands/scan_command.rb +26 -7
- data/spec/spec_helper.rb +2 -1
- data/vendor/ruby/1.8/bin/launchy +19 -0
- data/vendor/ruby/1.8/bin/rake +19 -0
- data/vendor/ruby/1.8/cache/configuration-1.1.0.gem +0 -0
- data/vendor/ruby/1.8/cache/launchy-0.3.7.gem +0 -0
- data/vendor/ruby/1.8/cache/rake-0.8.7.gem +0 -0
- data/vendor/ruby/1.8/gems/configuration-1.1.0/README +197 -0
- data/vendor/ruby/1.8/gems/configuration-1.1.0/README.erb +69 -0
- data/vendor/ruby/1.8/gems/configuration-1.1.0/Rakefile +241 -0
- data/vendor/ruby/1.8/gems/configuration-1.1.0/config/a.rb +5 -0
- data/vendor/ruby/1.8/gems/configuration-1.1.0/config/b.rb +19 -0
- data/vendor/ruby/1.8/gems/configuration-1.1.0/config/c.rb +8 -0
- data/vendor/ruby/1.8/gems/configuration-1.1.0/config/d.rb +5 -0
- data/vendor/ruby/1.8/gems/configuration-1.1.0/config/e.rb +13 -0
- data/vendor/ruby/1.8/gems/configuration-1.1.0/configuration.gemspec +28 -0
- data/vendor/ruby/1.8/gems/configuration-1.1.0/lib/configuration.rb +199 -0
- data/vendor/ruby/1.8/gems/configuration-1.1.0/samples/a.rb +11 -0
- data/vendor/ruby/1.8/gems/configuration-1.1.0/samples/b.rb +11 -0
- data/vendor/ruby/1.8/gems/configuration-1.1.0/samples/c.rb +11 -0
- data/vendor/ruby/1.8/gems/configuration-1.1.0/samples/d.rb +14 -0
- data/vendor/ruby/1.8/gems/configuration-1.1.0/samples/e.rb +12 -0
- data/vendor/ruby/1.8/gems/launchy-0.3.7/HISTORY +71 -0
- data/vendor/ruby/1.8/gems/launchy-0.3.7/LICENSE +16 -0
- data/vendor/ruby/1.8/gems/launchy-0.3.7/README +53 -0
- data/vendor/ruby/1.8/gems/launchy-0.3.7/Rakefile +62 -0
- data/vendor/ruby/1.8/gems/launchy-0.3.7/bin/launchy +12 -0
- data/vendor/ruby/1.8/gems/launchy-0.3.7/gemspec.rb +41 -0
- data/vendor/ruby/1.8/gems/launchy-0.3.7/lib/launchy/application.rb +178 -0
- data/vendor/ruby/1.8/gems/launchy-0.3.7/lib/launchy/browser.rb +98 -0
- data/vendor/ruby/1.8/gems/launchy-0.3.7/lib/launchy/command_line.rb +48 -0
- data/vendor/ruby/1.8/gems/launchy-0.3.7/lib/launchy/paths.rb +53 -0
- data/vendor/ruby/1.8/gems/launchy-0.3.7/lib/launchy/version.rb +17 -0
- data/vendor/ruby/1.8/gems/launchy-0.3.7/lib/launchy.rb +53 -0
- data/vendor/ruby/1.8/gems/launchy-0.3.7/spec/application_spec.rb +62 -0
- data/vendor/ruby/1.8/gems/launchy-0.3.7/spec/browser_spec.rb +58 -0
- data/vendor/ruby/1.8/gems/launchy-0.3.7/spec/launchy_spec.rb +18 -0
- data/vendor/ruby/1.8/gems/launchy-0.3.7/spec/paths_spec.rb +15 -0
- data/vendor/ruby/1.8/gems/launchy-0.3.7/spec/spec_helper.rb +5 -0
- data/vendor/ruby/1.8/gems/launchy-0.3.7/spec/tattle-host-os.yml +427 -0
- data/vendor/ruby/1.8/gems/launchy-0.3.7/spec/version_spec.rb +11 -0
- data/vendor/ruby/1.8/gems/launchy-0.3.7/tasks/announce.rake +39 -0
- data/vendor/ruby/1.8/gems/launchy-0.3.7/tasks/config.rb +107 -0
- data/vendor/ruby/1.8/gems/launchy-0.3.7/tasks/distribution.rake +46 -0
- data/vendor/ruby/1.8/gems/launchy-0.3.7/tasks/documentation.rake +32 -0
- data/vendor/ruby/1.8/gems/launchy-0.3.7/tasks/rspec.rake +37 -0
- data/vendor/ruby/1.8/gems/launchy-0.3.7/tasks/rubyforge.rake +52 -0
- data/vendor/ruby/1.8/gems/launchy-0.3.7/tasks/utils.rb +80 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/CHANGES +440 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/MIT-LICENSE +21 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/README +196 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/Rakefile +430 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/TODO +20 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/bin/rake +31 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/doc/command_line_usage.rdoc +102 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/doc/example/Rakefile1 +38 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/doc/example/Rakefile2 +35 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/doc/example/a.c +6 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/doc/example/b.c +6 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/doc/example/main.c +11 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/doc/glossary.rdoc +51 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/doc/jamis.rb +591 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/doc/proto_rake.rdoc +127 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/doc/rake.1.gz +0 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/doc/rakefile.rdoc +534 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/doc/rational.rdoc +151 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/doc/release_notes/rake-0.4.14.rdoc +23 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/doc/release_notes/rake-0.4.15.rdoc +35 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/doc/release_notes/rake-0.5.0.rdoc +53 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/doc/release_notes/rake-0.5.3.rdoc +78 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/doc/release_notes/rake-0.5.4.rdoc +46 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/doc/release_notes/rake-0.6.0.rdoc +141 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/doc/release_notes/rake-0.7.0.rdoc +119 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/doc/release_notes/rake-0.7.1.rdoc +59 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/doc/release_notes/rake-0.7.2.rdoc +121 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/doc/release_notes/rake-0.7.3.rdoc +47 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/doc/release_notes/rake-0.8.0.rdoc +114 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/doc/release_notes/rake-0.8.2.rdoc +165 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/doc/release_notes/rake-0.8.3.rdoc +112 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/doc/release_notes/rake-0.8.4.rdoc +147 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/doc/release_notes/rake-0.8.5.rdoc +53 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/doc/release_notes/rake-0.8.6.rdoc +55 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/doc/release_notes/rake-0.8.7.rdoc +55 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/install.rb +88 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/lib/rake/alt_system.rb +108 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/lib/rake/classic_namespace.rb +8 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/lib/rake/clean.rb +33 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/lib/rake/contrib/compositepublisher.rb +24 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/lib/rake/contrib/ftptools.rb +153 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/lib/rake/contrib/publisher.rb +75 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/lib/rake/contrib/rubyforgepublisher.rb +18 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/lib/rake/contrib/sshpublisher.rb +47 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/lib/rake/contrib/sys.rb +209 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/lib/rake/gempackagetask.rb +97 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/lib/rake/loaders/makefile.rb +42 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/lib/rake/packagetask.rb +184 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/lib/rake/rake_test_loader.rb +5 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/lib/rake/rdoctask.rb +209 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/lib/rake/ruby182_test_unit_fix.rb +23 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/lib/rake/runtest.rb +23 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/lib/rake/tasklib.rb +23 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/lib/rake/testtask.rb +161 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/lib/rake/win32.rb +55 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/lib/rake.rb +2506 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/test/capture_stdout.rb +26 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/test/check_expansion.rb +5 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/test/check_no_expansion.rb +5 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/test/contrib/test_sys.rb +47 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/test/data/chains/Rakefile +15 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/test/data/default/Rakefile +19 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/test/data/dryrun/Rakefile +22 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/test/data/file_creation_task/Rakefile +33 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/test/data/imports/Rakefile +19 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/test/data/imports/deps.mf +1 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/test/data/multidesc/Rakefile +17 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/test/data/namespace/Rakefile +57 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/test/data/rakelib/test1.rb +3 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/test/data/rbext/rakefile.rb +3 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/test/data/sample.mf +14 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/test/data/statusreturn/Rakefile +8 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/test/data/unittest/Rakefile +1 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/test/filecreation.rb +32 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/test/functional.rb +15 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/test/in_environment.rb +30 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/test/rake_test_setup.rb +24 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/test/reqfile.rb +3 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/test/reqfile2.rb +3 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/test/session_functional.rb +339 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/test/shellcommand.rb +3 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/test/test_application.rb +675 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/test/test_clean.rb +14 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/test/test_definitions.rb +85 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/test/test_earlytime.rb +35 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/test/test_extension.rb +63 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/test/test_file_creation_task.rb +62 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/test/test_file_task.rb +143 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/test/test_filelist.rb +623 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/test/test_fileutils.rb +251 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/test/test_ftp.rb +59 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/test/test_invocation_chain.rb +81 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/test/test_makefile_loader.rb +26 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/test/test_multitask.rb +45 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/test/test_namespace.rb +55 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/test/test_package_task.rb +118 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/test/test_pathmap.rb +210 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/test/test_pseudo_status.rb +26 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/test/test_rake.rb +41 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/test/test_rdoc_task.rb +88 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/test/test_require.rb +35 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/test/test_rules.rb +349 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/test/test_task_arguments.rb +89 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/test/test_task_manager.rb +173 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/test/test_tasklib.rb +12 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/test/test_tasks.rb +374 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/test/test_test_task.rb +77 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/test/test_top_level_functions.rb +86 -0
- data/vendor/ruby/1.8/gems/rake-0.8.7/test/test_win32.rb +72 -0
- data/vendor/ruby/1.8/specifications/configuration-1.1.0.gemspec +27 -0
- data/vendor/ruby/1.8/specifications/launchy-0.3.7.gemspec +44 -0
- data/vendor/ruby/1.8/specifications/rake-0.8.7.gemspec +32 -0
- metadata +163 -5
|
@@ -0,0 +1,374 @@
|
|
|
1
|
+
#!/usr/bin/env ruby
|
|
2
|
+
|
|
3
|
+
require 'test/unit'
|
|
4
|
+
require 'fileutils'
|
|
5
|
+
require 'rake'
|
|
6
|
+
require 'test/filecreation'
|
|
7
|
+
require 'test/capture_stdout'
|
|
8
|
+
require 'test/rake_test_setup'
|
|
9
|
+
|
|
10
|
+
######################################################################
|
|
11
|
+
class TestTask < Test::Unit::TestCase
|
|
12
|
+
include CaptureStdout
|
|
13
|
+
include Rake
|
|
14
|
+
include TestMethods
|
|
15
|
+
|
|
16
|
+
def setup
|
|
17
|
+
Task.clear
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
def test_create
|
|
21
|
+
arg = nil
|
|
22
|
+
t = task(:name) { |task| arg = task; 1234 }
|
|
23
|
+
assert_equal "name", t.name
|
|
24
|
+
assert_equal [], t.prerequisites
|
|
25
|
+
assert t.needed?
|
|
26
|
+
t.execute(0)
|
|
27
|
+
assert_equal t, arg
|
|
28
|
+
assert_nil t.source
|
|
29
|
+
assert_equal [], t.sources
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
def test_inspect
|
|
33
|
+
t = task(:foo, :needs => [:bar, :baz])
|
|
34
|
+
assert_equal "<Rake::Task foo => [bar, baz]>", t.inspect
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
def test_invoke
|
|
38
|
+
runlist = []
|
|
39
|
+
t1 = task(:t1 => [:t2, :t3]) { |t| runlist << t.name; 3321 }
|
|
40
|
+
t2 = task(:t2) { |t| runlist << t.name }
|
|
41
|
+
t3 = task(:t3) { |t| runlist << t.name }
|
|
42
|
+
assert_equal ["t2", "t3"], t1.prerequisites
|
|
43
|
+
t1.invoke
|
|
44
|
+
assert_equal ["t2", "t3", "t1"], runlist
|
|
45
|
+
end
|
|
46
|
+
|
|
47
|
+
def test_invoke_with_circular_dependencies
|
|
48
|
+
runlist = []
|
|
49
|
+
t1 = task(:t1 => [:t2]) { |t| runlist << t.name; 3321 }
|
|
50
|
+
t2 = task(:t2 => [:t1]) { |t| runlist << t.name }
|
|
51
|
+
assert_equal ["t2"], t1.prerequisites
|
|
52
|
+
assert_equal ["t1"], t2.prerequisites
|
|
53
|
+
ex = assert_exception RuntimeError do
|
|
54
|
+
t1.invoke
|
|
55
|
+
end
|
|
56
|
+
assert_match(/circular dependency/i, ex.message)
|
|
57
|
+
assert_match(/t1 => t2 => t1/, ex.message)
|
|
58
|
+
end
|
|
59
|
+
|
|
60
|
+
def test_dry_run_prevents_actions
|
|
61
|
+
Rake.application.options.dryrun = true
|
|
62
|
+
runlist = []
|
|
63
|
+
t1 = task(:t1) { |t| runlist << t.name; 3321 }
|
|
64
|
+
out = capture_stdout { t1.invoke }
|
|
65
|
+
assert_match(/execute .*t1/i, out)
|
|
66
|
+
assert_match(/dry run/i, out)
|
|
67
|
+
assert_no_match(/invoke/i, out)
|
|
68
|
+
assert_equal [], runlist
|
|
69
|
+
ensure
|
|
70
|
+
Rake.application.options.dryrun = false
|
|
71
|
+
end
|
|
72
|
+
|
|
73
|
+
def test_tasks_can_be_traced
|
|
74
|
+
Rake.application.options.trace = true
|
|
75
|
+
t1 = task(:t1)
|
|
76
|
+
out = capture_stdout {
|
|
77
|
+
t1.invoke
|
|
78
|
+
}
|
|
79
|
+
assert_match(/invoke t1/i, out)
|
|
80
|
+
assert_match(/execute t1/i, out)
|
|
81
|
+
ensure
|
|
82
|
+
Rake.application.options.trace = false
|
|
83
|
+
end
|
|
84
|
+
|
|
85
|
+
def test_no_double_invoke
|
|
86
|
+
runlist = []
|
|
87
|
+
t1 = task(:t1 => [:t2, :t3]) { |t| runlist << t.name; 3321 }
|
|
88
|
+
t2 = task(:t2 => [:t3]) { |t| runlist << t.name }
|
|
89
|
+
t3 = task(:t3) { |t| runlist << t.name }
|
|
90
|
+
t1.invoke
|
|
91
|
+
assert_equal ["t3", "t2", "t1"], runlist
|
|
92
|
+
end
|
|
93
|
+
|
|
94
|
+
def test_can_double_invoke_with_reenable
|
|
95
|
+
runlist = []
|
|
96
|
+
t1 = task(:t1) { |t| runlist << t.name }
|
|
97
|
+
t1.invoke
|
|
98
|
+
t1.reenable
|
|
99
|
+
t1.invoke
|
|
100
|
+
assert_equal ["t1", "t1"], runlist
|
|
101
|
+
end
|
|
102
|
+
|
|
103
|
+
def test_clear
|
|
104
|
+
t = task("t" => "a") { }
|
|
105
|
+
t.clear
|
|
106
|
+
assert t.prerequisites.empty?, "prerequisites should be empty"
|
|
107
|
+
assert t.actions.empty?, "actions should be empty"
|
|
108
|
+
end
|
|
109
|
+
|
|
110
|
+
def test_clear_prerequisites
|
|
111
|
+
t = task("t" => ["a", "b"])
|
|
112
|
+
assert_equal ['a', 'b'], t.prerequisites
|
|
113
|
+
t.clear_prerequisites
|
|
114
|
+
assert_equal [], t.prerequisites
|
|
115
|
+
end
|
|
116
|
+
|
|
117
|
+
def test_clear_actions
|
|
118
|
+
t = task("t") { }
|
|
119
|
+
t.clear_actions
|
|
120
|
+
assert t.actions.empty?, "actions should be empty"
|
|
121
|
+
end
|
|
122
|
+
|
|
123
|
+
def test_find
|
|
124
|
+
task :tfind
|
|
125
|
+
assert_equal "tfind", Task[:tfind].name
|
|
126
|
+
ex = assert_exception(RuntimeError) { Task[:leaves] }
|
|
127
|
+
assert_equal "Don't know how to build task 'leaves'", ex.message
|
|
128
|
+
end
|
|
129
|
+
|
|
130
|
+
def test_defined
|
|
131
|
+
assert ! Task.task_defined?(:a)
|
|
132
|
+
task :a
|
|
133
|
+
assert Task.task_defined?(:a)
|
|
134
|
+
end
|
|
135
|
+
|
|
136
|
+
def test_multi_invocations
|
|
137
|
+
runs = []
|
|
138
|
+
p = proc do |t| runs << t.name end
|
|
139
|
+
task({:t1=>[:t2,:t3]}, &p)
|
|
140
|
+
task({:t2=>[:t3]}, &p)
|
|
141
|
+
task(:t3, &p)
|
|
142
|
+
Task[:t1].invoke
|
|
143
|
+
assert_equal ["t1", "t2", "t3"], runs.sort
|
|
144
|
+
end
|
|
145
|
+
|
|
146
|
+
def test_task_list
|
|
147
|
+
task :t2
|
|
148
|
+
task :t1 => [:t2]
|
|
149
|
+
assert_equal ["t1", "t2"], Task.tasks.collect {|t| t.name}
|
|
150
|
+
end
|
|
151
|
+
|
|
152
|
+
def test_task_gives_name_on_to_s
|
|
153
|
+
task :abc
|
|
154
|
+
assert_equal "abc", Task[:abc].to_s
|
|
155
|
+
end
|
|
156
|
+
|
|
157
|
+
def test_symbols_can_be_prerequisites
|
|
158
|
+
task :a => :b
|
|
159
|
+
assert_equal ["b"], Task[:a].prerequisites
|
|
160
|
+
end
|
|
161
|
+
|
|
162
|
+
def test_strings_can_be_prerequisites
|
|
163
|
+
task :a => "b"
|
|
164
|
+
assert_equal ["b"], Task[:a].prerequisites
|
|
165
|
+
end
|
|
166
|
+
|
|
167
|
+
def test_arrays_can_be_prerequisites
|
|
168
|
+
task :a => ["b", "c"]
|
|
169
|
+
assert_equal ["b", "c"], Task[:a].prerequisites
|
|
170
|
+
end
|
|
171
|
+
|
|
172
|
+
def test_filelists_can_be_prerequisites
|
|
173
|
+
task :a => FileList.new.include("b", "c")
|
|
174
|
+
assert_equal ["b", "c"], Task[:a].prerequisites
|
|
175
|
+
end
|
|
176
|
+
|
|
177
|
+
def test_investigation_output
|
|
178
|
+
t1 = task(:t1 => [:t2, :t3]) { |t| runlist << t.name; 3321 }
|
|
179
|
+
task(:t2)
|
|
180
|
+
task(:t3)
|
|
181
|
+
out = t1.investigation
|
|
182
|
+
assert_match(/class:\s*Rake::Task/, out)
|
|
183
|
+
assert_match(/needed:\s*true/, out)
|
|
184
|
+
assert_match(/pre-requisites:\s*--t[23]/, out)
|
|
185
|
+
end
|
|
186
|
+
|
|
187
|
+
|
|
188
|
+
def test_extended_comments
|
|
189
|
+
desc %{
|
|
190
|
+
This is a comment.
|
|
191
|
+
|
|
192
|
+
And this is the extended comment.
|
|
193
|
+
name -- Name of task to execute.
|
|
194
|
+
rev -- Software revision to use.
|
|
195
|
+
}
|
|
196
|
+
t = task(:t, :name, :rev)
|
|
197
|
+
assert_equal "[name,rev]", t.arg_description
|
|
198
|
+
assert_equal "This is a comment.", t.comment
|
|
199
|
+
assert_match(/^\s*name -- Name/, t.full_comment)
|
|
200
|
+
assert_match(/^\s*rev -- Software/, t.full_comment)
|
|
201
|
+
assert_match(/\A\s*This is a comment\.$/, t.full_comment)
|
|
202
|
+
end
|
|
203
|
+
|
|
204
|
+
def test_multiple_comments
|
|
205
|
+
desc "line one"
|
|
206
|
+
t = task(:t)
|
|
207
|
+
desc "line two"
|
|
208
|
+
task(:t)
|
|
209
|
+
assert_equal "line one / line two", t.comment
|
|
210
|
+
end
|
|
211
|
+
|
|
212
|
+
def test_settable_comments
|
|
213
|
+
t = task(:t)
|
|
214
|
+
t.comment = "HI"
|
|
215
|
+
assert_equal "HI", t.comment
|
|
216
|
+
end
|
|
217
|
+
end
|
|
218
|
+
|
|
219
|
+
######################################################################
|
|
220
|
+
class TestTaskWithArguments < Test::Unit::TestCase
|
|
221
|
+
include CaptureStdout
|
|
222
|
+
include Rake
|
|
223
|
+
include TestMethods
|
|
224
|
+
|
|
225
|
+
def setup
|
|
226
|
+
Task.clear
|
|
227
|
+
end
|
|
228
|
+
|
|
229
|
+
def test_no_args_given
|
|
230
|
+
t = task :t
|
|
231
|
+
assert_equal [], t.arg_names
|
|
232
|
+
end
|
|
233
|
+
|
|
234
|
+
def test_args_given
|
|
235
|
+
t = task :t, :a, :b
|
|
236
|
+
assert_equal [:a, :b], t.arg_names
|
|
237
|
+
end
|
|
238
|
+
|
|
239
|
+
def test_name_and_needs
|
|
240
|
+
t = task(:t => [:pre])
|
|
241
|
+
assert_equal "t", t.name
|
|
242
|
+
assert_equal [], t.arg_names
|
|
243
|
+
assert_equal ["pre"], t.prerequisites
|
|
244
|
+
end
|
|
245
|
+
|
|
246
|
+
def test_name_and_explicit_needs
|
|
247
|
+
t = task(:t, :needs => [:pre])
|
|
248
|
+
assert_equal "t", t.name
|
|
249
|
+
assert_equal [], t.arg_names
|
|
250
|
+
assert_equal ["pre"], t.prerequisites
|
|
251
|
+
end
|
|
252
|
+
|
|
253
|
+
def test_name_args_and_explicit_needs
|
|
254
|
+
t = task(:t, :x, :y, :needs => [:pre])
|
|
255
|
+
assert_equal "t", t.name
|
|
256
|
+
assert_equal [:x, :y], t.arg_names
|
|
257
|
+
assert_equal ["pre"], t.prerequisites
|
|
258
|
+
end
|
|
259
|
+
|
|
260
|
+
def test_illegal_keys_in_task_name_hash
|
|
261
|
+
assert_exception RuntimeError do
|
|
262
|
+
t = task(:t, :x, :y => 1, :needs => [:pre])
|
|
263
|
+
end
|
|
264
|
+
end
|
|
265
|
+
|
|
266
|
+
def test_arg_list_is_empty_if_no_args_given
|
|
267
|
+
t = task(:t) { |tt, args| assert_equal({}, args.to_hash) }
|
|
268
|
+
t.invoke(1, 2, 3)
|
|
269
|
+
end
|
|
270
|
+
|
|
271
|
+
def test_tasks_can_access_arguments_as_hash
|
|
272
|
+
t = task :t, :a, :b, :c do |tt, args|
|
|
273
|
+
assert_equal({:a => 1, :b => 2, :c => 3}, args.to_hash)
|
|
274
|
+
assert_equal 1, args[:a]
|
|
275
|
+
assert_equal 2, args[:b]
|
|
276
|
+
assert_equal 3, args[:c]
|
|
277
|
+
assert_equal 1, args.a
|
|
278
|
+
assert_equal 2, args.b
|
|
279
|
+
assert_equal 3, args.c
|
|
280
|
+
end
|
|
281
|
+
t.invoke(1, 2, 3)
|
|
282
|
+
end
|
|
283
|
+
|
|
284
|
+
def test_actions_of_various_arity_are_ok_with_args
|
|
285
|
+
notes = []
|
|
286
|
+
t = task(:t, :x) do
|
|
287
|
+
notes << :a
|
|
288
|
+
end
|
|
289
|
+
t.enhance do | |
|
|
290
|
+
notes << :b
|
|
291
|
+
end
|
|
292
|
+
t.enhance do |task|
|
|
293
|
+
notes << :c
|
|
294
|
+
assert_kind_of Task, task
|
|
295
|
+
end
|
|
296
|
+
t.enhance do |t2, args|
|
|
297
|
+
notes << :d
|
|
298
|
+
assert_equal t, t2
|
|
299
|
+
assert_equal({:x => 1}, args.to_hash)
|
|
300
|
+
end
|
|
301
|
+
assert_nothing_raised do t.invoke(1) end
|
|
302
|
+
assert_equal [:a, :b, :c, :d], notes
|
|
303
|
+
end
|
|
304
|
+
|
|
305
|
+
def test_arguments_are_passed_to_block
|
|
306
|
+
t = task(:t, :a, :b) { |tt, args|
|
|
307
|
+
assert_equal( { :a => 1, :b => 2 }, args.to_hash )
|
|
308
|
+
}
|
|
309
|
+
t.invoke(1, 2)
|
|
310
|
+
end
|
|
311
|
+
|
|
312
|
+
def test_extra_parameters_are_ignored
|
|
313
|
+
t = task(:t, :a) { |tt, args|
|
|
314
|
+
assert_equal 1, args.a
|
|
315
|
+
assert_nil args.b
|
|
316
|
+
}
|
|
317
|
+
t.invoke(1, 2)
|
|
318
|
+
end
|
|
319
|
+
|
|
320
|
+
def test_arguments_are_passed_to_all_blocks
|
|
321
|
+
counter = 0
|
|
322
|
+
t = task :t, :a
|
|
323
|
+
task :t do |tt, args|
|
|
324
|
+
assert_equal 1, args.a
|
|
325
|
+
counter += 1
|
|
326
|
+
end
|
|
327
|
+
task :t do |tt, args|
|
|
328
|
+
assert_equal 1, args.a
|
|
329
|
+
counter += 1
|
|
330
|
+
end
|
|
331
|
+
t.invoke(1)
|
|
332
|
+
assert_equal 2, counter
|
|
333
|
+
end
|
|
334
|
+
|
|
335
|
+
def test_block_with_no_parameters_is_ok
|
|
336
|
+
t = task(:t) { }
|
|
337
|
+
t.invoke(1, 2)
|
|
338
|
+
end
|
|
339
|
+
|
|
340
|
+
def test_name_with_args
|
|
341
|
+
desc "T"
|
|
342
|
+
t = task(:tt, :a, :b)
|
|
343
|
+
assert_equal "tt", t.name
|
|
344
|
+
assert_equal "T", t.comment
|
|
345
|
+
assert_equal "[a,b]", t.arg_description
|
|
346
|
+
assert_equal "tt[a,b]", t.name_with_args
|
|
347
|
+
assert_equal [:a, :b],t.arg_names
|
|
348
|
+
end
|
|
349
|
+
|
|
350
|
+
def test_named_args_are_passed_to_prereqs
|
|
351
|
+
value = nil
|
|
352
|
+
pre = task(:pre, :rev) { |t, args| value = args.rev }
|
|
353
|
+
t = task(:t, :name, :rev, :needs => [:pre])
|
|
354
|
+
t.invoke("bill", "1.2")
|
|
355
|
+
assert_equal "1.2", value
|
|
356
|
+
end
|
|
357
|
+
|
|
358
|
+
def test_args_not_passed_if_no_prereq_names
|
|
359
|
+
pre = task(:pre) { |t, args|
|
|
360
|
+
assert_equal({}, args.to_hash)
|
|
361
|
+
assert_equal "bill", args.name
|
|
362
|
+
}
|
|
363
|
+
t = task(:t, :name, :rev, :needs => [:pre])
|
|
364
|
+
t.invoke("bill", "1.2")
|
|
365
|
+
end
|
|
366
|
+
|
|
367
|
+
def test_args_not_passed_if_no_arg_names
|
|
368
|
+
pre = task(:pre, :rev) { |t, args|
|
|
369
|
+
assert_equal({}, args.to_hash)
|
|
370
|
+
}
|
|
371
|
+
t = task(:t, :needs => [:pre])
|
|
372
|
+
t.invoke("bill", "1.2")
|
|
373
|
+
end
|
|
374
|
+
end
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
#!/usr/bin/env ruby
|
|
2
|
+
|
|
3
|
+
require 'test/unit'
|
|
4
|
+
require 'rake/testtask'
|
|
5
|
+
|
|
6
|
+
class TestTestTask < Test::Unit::TestCase
|
|
7
|
+
include Rake
|
|
8
|
+
include TestMethods
|
|
9
|
+
|
|
10
|
+
def setup
|
|
11
|
+
Task.clear
|
|
12
|
+
ENV.delete('TEST')
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
def teardown
|
|
16
|
+
FileUtils.rm_rf("testdata")
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
def test_no_task
|
|
20
|
+
assert ! Task.task_defined?(:test)
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
def test_defaults
|
|
24
|
+
tt = Rake::TestTask.new do |t| end
|
|
25
|
+
assert_not_nil tt
|
|
26
|
+
assert_equal :test, tt.name
|
|
27
|
+
assert_equal ['lib'], tt.libs
|
|
28
|
+
assert_equal 'test/test*.rb', tt.pattern
|
|
29
|
+
assert_equal false, tt.verbose
|
|
30
|
+
assert Task.task_defined?(:test)
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
def test_non_defaults
|
|
34
|
+
tt = Rake::TestTask.new(:example) do |t|
|
|
35
|
+
t.libs = ['src', 'ext']
|
|
36
|
+
t.pattern = 'test/tc_*.rb'
|
|
37
|
+
t.verbose = true
|
|
38
|
+
end
|
|
39
|
+
assert_not_nil tt
|
|
40
|
+
assert_equal :example, tt.name
|
|
41
|
+
assert_equal ['src', 'ext'], tt.libs
|
|
42
|
+
assert_equal 'test/tc_*.rb', tt.pattern
|
|
43
|
+
assert_equal true, tt.verbose
|
|
44
|
+
assert Task.task_defined?(:example)
|
|
45
|
+
end
|
|
46
|
+
|
|
47
|
+
def test_pattern
|
|
48
|
+
tt = Rake::TestTask.new do |t|
|
|
49
|
+
t.pattern = '*.rb'
|
|
50
|
+
end
|
|
51
|
+
assert_equal ['install.rb'], tt.file_list.to_a
|
|
52
|
+
end
|
|
53
|
+
|
|
54
|
+
def test_env_test
|
|
55
|
+
ENV['TEST'] = 'testfile.rb'
|
|
56
|
+
tt = Rake::TestTask.new do |t|
|
|
57
|
+
t.pattern = '*'
|
|
58
|
+
end
|
|
59
|
+
assert_equal ["testfile.rb"], tt.file_list.to_a
|
|
60
|
+
end
|
|
61
|
+
|
|
62
|
+
def test_test_files
|
|
63
|
+
tt = Rake::TestTask.new do |t|
|
|
64
|
+
t.test_files = FileList['a.rb', 'b.rb']
|
|
65
|
+
end
|
|
66
|
+
assert_equal ["a.rb", 'b.rb'], tt.file_list.to_a
|
|
67
|
+
end
|
|
68
|
+
|
|
69
|
+
def test_both_pattern_and_test_files
|
|
70
|
+
tt = Rake::TestTask.new do |t|
|
|
71
|
+
t.test_files = FileList['a.rb', 'b.rb']
|
|
72
|
+
t.pattern = '*.rb'
|
|
73
|
+
end
|
|
74
|
+
assert_equal ['a.rb', 'b.rb', 'install.rb'], tt.file_list.to_a
|
|
75
|
+
end
|
|
76
|
+
|
|
77
|
+
end
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
#!/usr/bin/env ruby
|
|
2
|
+
|
|
3
|
+
begin
|
|
4
|
+
require 'rubygems'
|
|
5
|
+
rescue LoadError
|
|
6
|
+
# got no gems
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
require 'test/unit'
|
|
10
|
+
require 'flexmock/test_unit'
|
|
11
|
+
require 'test/capture_stdout'
|
|
12
|
+
require 'test/rake_test_setup'
|
|
13
|
+
require 'rake'
|
|
14
|
+
|
|
15
|
+
class TestTopLevelFunctions < Test::Unit::TestCase
|
|
16
|
+
include CaptureStdout
|
|
17
|
+
include TestMethods
|
|
18
|
+
|
|
19
|
+
def setup
|
|
20
|
+
super
|
|
21
|
+
@app = Rake.application
|
|
22
|
+
Rake.application = flexmock("app")
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
def teardown
|
|
26
|
+
Rake.application = @app
|
|
27
|
+
super
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
def test_namespace
|
|
31
|
+
Rake.application.should_receive(:in_namespace).with("xyz", any).once
|
|
32
|
+
namespace "xyz" do end
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
def test_import
|
|
36
|
+
Rake.application.should_receive(:add_import).with("x").once.ordered
|
|
37
|
+
Rake.application.should_receive(:add_import).with("y").once.ordered
|
|
38
|
+
Rake.application.should_receive(:add_import).with("z").once.ordered
|
|
39
|
+
import('x', 'y', 'z')
|
|
40
|
+
end
|
|
41
|
+
|
|
42
|
+
def test_when_writing
|
|
43
|
+
out = capture_stdout do
|
|
44
|
+
when_writing("NOTWRITING") do
|
|
45
|
+
puts "WRITING"
|
|
46
|
+
end
|
|
47
|
+
end
|
|
48
|
+
assert_equal "WRITING\n", out
|
|
49
|
+
end
|
|
50
|
+
|
|
51
|
+
def test_when_not_writing
|
|
52
|
+
RakeFileUtils.nowrite_flag = true
|
|
53
|
+
out = capture_stdout do
|
|
54
|
+
when_writing("NOTWRITING") do
|
|
55
|
+
puts "WRITING"
|
|
56
|
+
end
|
|
57
|
+
end
|
|
58
|
+
assert_equal "DRYRUN: NOTWRITING\n", out
|
|
59
|
+
ensure
|
|
60
|
+
RakeFileUtils.nowrite_flag = false
|
|
61
|
+
end
|
|
62
|
+
|
|
63
|
+
def test_missing_constants_task
|
|
64
|
+
Rake.application.should_receive(:const_warning).with(:Task).once
|
|
65
|
+
Object.const_missing(:Task)
|
|
66
|
+
end
|
|
67
|
+
|
|
68
|
+
def test_missing_constants_file_task
|
|
69
|
+
Rake.application.should_receive(:const_warning).with(:FileTask).once
|
|
70
|
+
Object.const_missing(:FileTask)
|
|
71
|
+
end
|
|
72
|
+
|
|
73
|
+
def test_missing_constants_file_creation_task
|
|
74
|
+
Rake.application.should_receive(:const_warning).with(:FileCreationTask).once
|
|
75
|
+
Object.const_missing(:FileCreationTask)
|
|
76
|
+
end
|
|
77
|
+
|
|
78
|
+
def test_missing_constants_rake_app
|
|
79
|
+
Rake.application.should_receive(:const_warning).with(:RakeApp).once
|
|
80
|
+
Object.const_missing(:RakeApp)
|
|
81
|
+
end
|
|
82
|
+
|
|
83
|
+
def test_missing_other_constant
|
|
84
|
+
assert_exception(NameError) do Object.const_missing(:Xyz) end
|
|
85
|
+
end
|
|
86
|
+
end
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
#!/usr/bin/env ruby
|
|
2
|
+
|
|
3
|
+
require 'test/unit'
|
|
4
|
+
require 'test/rake_test_setup'
|
|
5
|
+
require 'test/in_environment'
|
|
6
|
+
|
|
7
|
+
require 'rake'
|
|
8
|
+
|
|
9
|
+
class TestWin32 < Test::Unit::TestCase
|
|
10
|
+
include InEnvironment
|
|
11
|
+
include TestMethods
|
|
12
|
+
|
|
13
|
+
Win32 = Rake::Win32
|
|
14
|
+
|
|
15
|
+
def test_win32_system_dir_uses_home_if_defined
|
|
16
|
+
in_environment('RAKE_SYSTEM' => nil, 'HOME' => 'C:\\HP') do
|
|
17
|
+
assert_equal "C:/HP/Rake", Win32.win32_system_dir
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
def test_win32_system_dir_uses_homedrive_homepath_when_no_home_defined
|
|
22
|
+
in_environment(
|
|
23
|
+
'RAKE_SYSTEM' => nil,
|
|
24
|
+
'HOME' => nil,
|
|
25
|
+
'HOMEDRIVE' => "C:",
|
|
26
|
+
'HOMEPATH' => "\\HP"
|
|
27
|
+
) do
|
|
28
|
+
assert_equal "C:/HP/Rake", Win32.win32_system_dir
|
|
29
|
+
end
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
def test_win32_system_dir_uses_appdata_when_no_home_or_home_combo
|
|
33
|
+
in_environment(
|
|
34
|
+
'RAKE_SYSTEM' => nil,
|
|
35
|
+
'HOME' => nil,
|
|
36
|
+
'HOMEDRIVE' => nil,
|
|
37
|
+
'HOMEPATH' => nil,
|
|
38
|
+
'APPDATA' => "C:\\Documents and Settings\\HP\\Application Data"
|
|
39
|
+
) do
|
|
40
|
+
assert_equal "C:/Documents and Settings/HP/Application Data/Rake", Win32.win32_system_dir
|
|
41
|
+
end
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
def test_win32_system_dir_fallback_to_userprofile_otherwise
|
|
45
|
+
in_environment(
|
|
46
|
+
'RAKE_SYSTEM' => nil,
|
|
47
|
+
'HOME' => nil,
|
|
48
|
+
'HOMEDRIVE' => nil,
|
|
49
|
+
'HOMEPATH' => nil,
|
|
50
|
+
'APPDATA' => nil,
|
|
51
|
+
'USERPROFILE' => "C:\\Documents and Settings\\HP"
|
|
52
|
+
) do
|
|
53
|
+
assert_equal "C:/Documents and Settings/HP/Rake", Win32.win32_system_dir
|
|
54
|
+
end
|
|
55
|
+
end
|
|
56
|
+
|
|
57
|
+
def test_win32_system_dir_nil_of_no_env_vars
|
|
58
|
+
in_environment(
|
|
59
|
+
'RAKE_SYSTEM' => nil,
|
|
60
|
+
'HOME' => nil,
|
|
61
|
+
'HOMEDRIVE' => nil,
|
|
62
|
+
"HOMEPATH" => nil,
|
|
63
|
+
'APPDATA' => nil,
|
|
64
|
+
"USERPROFILE" => nil
|
|
65
|
+
) do
|
|
66
|
+
assert_exception(Rake::Win32::Win32HomeError) do
|
|
67
|
+
Win32.win32_system_dir
|
|
68
|
+
end
|
|
69
|
+
end
|
|
70
|
+
end
|
|
71
|
+
|
|
72
|
+
end
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
# -*- encoding: utf-8 -*-
|
|
2
|
+
|
|
3
|
+
Gem::Specification.new do |s|
|
|
4
|
+
s.name = %q{configuration}
|
|
5
|
+
s.version = "1.1.0"
|
|
6
|
+
|
|
7
|
+
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
|
8
|
+
s.authors = ["Ara T. Howard"]
|
|
9
|
+
s.date = %q{2009-09-23}
|
|
10
|
+
s.email = %q{ara.t.howard@gmail.com}
|
|
11
|
+
s.files = ["config", "config/a.rb", "config/b.rb", "config/c.rb", "config/d.rb", "config/e.rb", "configuration.gemspec", "lib", "lib/configuration.rb", "Rakefile", "README", "README.erb", "samples", "samples/a.rb", "samples/b.rb", "samples/c.rb", "samples/d.rb", "samples/e.rb"]
|
|
12
|
+
s.homepage = %q{http://github.com/ahoward/configuration/tree/master}
|
|
13
|
+
s.require_paths = ["lib"]
|
|
14
|
+
s.rubyforge_project = %q{codeforpeople}
|
|
15
|
+
s.rubygems_version = %q{1.3.7}
|
|
16
|
+
s.summary = %q{configuration}
|
|
17
|
+
|
|
18
|
+
if s.respond_to? :specification_version then
|
|
19
|
+
current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
|
|
20
|
+
s.specification_version = 2
|
|
21
|
+
|
|
22
|
+
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
|
|
23
|
+
else
|
|
24
|
+
end
|
|
25
|
+
else
|
|
26
|
+
end
|
|
27
|
+
end
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
# -*- encoding: utf-8 -*-
|
|
2
|
+
|
|
3
|
+
Gem::Specification.new do |s|
|
|
4
|
+
s.name = %q{launchy}
|
|
5
|
+
s.version = "0.3.7"
|
|
6
|
+
|
|
7
|
+
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
|
8
|
+
s.authors = ["Jeremy Hinegardner"]
|
|
9
|
+
s.date = %q{2010-07-19}
|
|
10
|
+
s.default_executable = %q{launchy}
|
|
11
|
+
s.description = %q{Launchy is helper class for launching cross-platform applications in a
|
|
12
|
+
fire and forget manner.
|
|
13
|
+
|
|
14
|
+
There are application concepts (browser, email client, etc) that are
|
|
15
|
+
common across all platforms, and they may be launched differently on
|
|
16
|
+
each platform. Launchy is here to make a common approach to launching
|
|
17
|
+
external application from within ruby programs.}
|
|
18
|
+
s.email = %q{jeremy@copiousfreetime.org}
|
|
19
|
+
s.executables = ["launchy"]
|
|
20
|
+
s.extra_rdoc_files = ["README", "HISTORY", "LICENSE", "lib/launchy/application.rb", "lib/launchy/browser.rb", "lib/launchy/command_line.rb", "lib/launchy/paths.rb", "lib/launchy/version.rb", "lib/launchy.rb"]
|
|
21
|
+
s.files = ["bin/launchy", "lib/launchy/application.rb", "lib/launchy/browser.rb", "lib/launchy/command_line.rb", "lib/launchy/paths.rb", "lib/launchy/version.rb", "lib/launchy.rb", "spec/application_spec.rb", "spec/browser_spec.rb", "spec/launchy_spec.rb", "spec/paths_spec.rb", "spec/spec_helper.rb", "spec/version_spec.rb", "spec/tattle-host-os.yml", "README", "HISTORY", "LICENSE", "tasks/announce.rake", "tasks/distribution.rake", "tasks/documentation.rake", "tasks/rspec.rake", "tasks/rubyforge.rake", "tasks/config.rb", "tasks/utils.rb", "Rakefile", "gemspec.rb"]
|
|
22
|
+
s.homepage = %q{http://copiousfreetime.rubyforge.org/launchy/}
|
|
23
|
+
s.rdoc_options = ["--line-numbers", "--inline-source", "--main", "README"]
|
|
24
|
+
s.require_paths = ["lib"]
|
|
25
|
+
s.rubyforge_project = %q{copiousfreetime}
|
|
26
|
+
s.rubygems_version = %q{1.3.7}
|
|
27
|
+
s.summary = %q{Launchy is helper class for launching cross-platform applications in a fire and forget manner}
|
|
28
|
+
|
|
29
|
+
if s.respond_to? :specification_version then
|
|
30
|
+
current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
|
|
31
|
+
s.specification_version = 3
|
|
32
|
+
|
|
33
|
+
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
|
|
34
|
+
s.add_runtime_dependency(%q<rake>, [">= 0.8.1"])
|
|
35
|
+
s.add_runtime_dependency(%q<configuration>, [">= 0.0.5"])
|
|
36
|
+
else
|
|
37
|
+
s.add_dependency(%q<rake>, [">= 0.8.1"])
|
|
38
|
+
s.add_dependency(%q<configuration>, [">= 0.0.5"])
|
|
39
|
+
end
|
|
40
|
+
else
|
|
41
|
+
s.add_dependency(%q<rake>, [">= 0.8.1"])
|
|
42
|
+
s.add_dependency(%q<configuration>, [">= 0.0.5"])
|
|
43
|
+
end
|
|
44
|
+
end
|