fitnesse-ruby 0.1.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/CHANGES ADDED
@@ -0,0 +1,2 @@
1
+ 0.1.0
2
+ - Using Fitnesse v. 20070619
@@ -0,0 +1,6 @@
1
+ Fitnesse-ruby packages the [Fitnesse](http://fitnesse.org/) server jar
2
+ into a convenient gem.
3
+
4
+ To execute, run `fitnesse -p <server port> -r <wiki root dir>`
5
+
6
+ You can find the source at [http://github.com/pivotal/fitnesse-ruby](http://github.com/pivotal/fitnesse-ruby)
@@ -0,0 +1,8 @@
1
+ require "spec/rake/spectask"
2
+
3
+ task :default => [:spec]
4
+
5
+ desc "Run all specs"
6
+ Spec::Rake::SpecTask.new do |t|
7
+ t.spec_files = FileList['spec/**/*_spec.rb']
8
+ end
@@ -0,0 +1,8 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ dir = File.dirname(__FILE__)
4
+ $:.unshift(File.expand_path("#{dir}/../lib"))
5
+ require "fitnesse"
6
+ require "optparse"
7
+
8
+ Fitnesse.new(ARGV).start
Binary file
@@ -0,0 +1,21 @@
1
+ Gem::Specification.new do |s|
2
+ s.name = "fitnesse-ruby"
3
+ s.version = "0.1.0"
4
+ s.date = "2008-05-18"
5
+ s.summary = "The fitnesse server packaged as a convenient gem (version 20070619)."
6
+ s.email = "opensource@pivotallabs.com"
7
+ s.homepage = "http://github.com/pivotal/fitnesse-ruby"
8
+ s.description = "The fitnesse server packaged as a convenient gem."
9
+ s.has_rdoc = true
10
+ s.authors = ["Brian Takita"]
11
+ files = [
12
+ "README.markdown", "Rakefile", "fitnesse-ruby.gemspec", "bin/fitnesse",
13
+ "lib/fitnesse.rb", "core/fitnesse.jar", "spec/example_wiki_root",
14
+ "spec/functional/spec_helper.rb", "spec/functional/fitnesse_spec.rb"
15
+ ]
16
+ s.files = files
17
+ s.executables = ['fitnesse']
18
+ s.test_files = ["spec/functional/fitnesse_spec.rb"]
19
+ s.rdoc_options = ["--main", "README.markdown"]
20
+ s.extra_rdoc_files = ["CHANGES", "README.markdown"]
21
+ end
@@ -0,0 +1,15 @@
1
+ class Fitnesse
2
+ attr_reader :argv
3
+ def initialize(argv)
4
+ @argv = argv
5
+ end
6
+
7
+ def start
8
+ system "java -cp #{jar_path} fitnesse.FitNesse #{argv.join(' ')}"
9
+ end
10
+
11
+ def jar_path
12
+ dir = File.dirname(__FILE__)
13
+ File.expand_path("#{dir}/../core/fitnesse.jar")
14
+ end
15
+ end
@@ -0,0 +1,51 @@
1
+ require File.expand_path("#{dir = File.dirname(__FILE__)}/spec_helper")
2
+
3
+ describe "A Fitnesse server" do
4
+ attr_reader :port
5
+ before do
6
+ @port = 8081
7
+ stop_server
8
+ end
9
+
10
+ after do
11
+ stop_server
12
+ end
13
+
14
+ it "starts a Fitnesse server" do
15
+ start_server
16
+ agent = WWW::Mechanize.new
17
+ page = agent.get("http://localhost:#{port}")
18
+
19
+ page.body.should include("Welcome to the Wonderful World of FitNesse!")
20
+ end
21
+
22
+ def wait_for
23
+ Timeout.timeout(5) do
24
+ loop do
25
+ break if yield
26
+ sleep 0.25
27
+ end
28
+ end
29
+ end
30
+
31
+ def start_server
32
+ dir = File.dirname(__FILE__)
33
+ Thread.start do
34
+ Fitnesse.new(['-p', port, '-r', "spec/example_wiki_root"]).start
35
+ end
36
+
37
+ wait_for do
38
+ Lsof.running?(port)
39
+ end
40
+ end
41
+
42
+ def stop_server
43
+ if Lsof.running?(port)
44
+ Lsof.kill(port)
45
+
46
+ wait_for do
47
+ !Lsof.running?(port)
48
+ end
49
+ end
50
+ end
51
+ end
@@ -0,0 +1,14 @@
1
+ dir = File.dirname(__FILE__)
2
+ $LOAD_PATH.unshift(File.expand_path("#{dir}/../../lib"))
3
+ require "fitnesse"
4
+
5
+ require "rubygems"
6
+ require "spec"
7
+ require "lsof"
8
+ require "timeout"
9
+ require "mechanize"
10
+
11
+ Spec::Runner.configure do |config|
12
+ config.mock_with :rr
13
+ end
14
+
metadata ADDED
@@ -0,0 +1,64 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: fitnesse-ruby
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - Brian Takita
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+
12
+ date: 2008-05-18 00:00:00 -07:00
13
+ default_executable:
14
+ dependencies: []
15
+
16
+ description: The fitnesse server packaged as a convenient gem.
17
+ email: opensource@pivotallabs.com
18
+ executables:
19
+ - fitnesse
20
+ extensions: []
21
+
22
+ extra_rdoc_files:
23
+ - CHANGES
24
+ - README.markdown
25
+ files:
26
+ - README.markdown
27
+ - Rakefile
28
+ - fitnesse-ruby.gemspec
29
+ - bin/fitnesse
30
+ - lib/fitnesse.rb
31
+ - core/fitnesse.jar
32
+ - spec/example_wiki_root
33
+ - spec/functional/spec_helper.rb
34
+ - spec/functional/fitnesse_spec.rb
35
+ - CHANGES
36
+ has_rdoc: true
37
+ homepage: http://github.com/pivotal/fitnesse-ruby
38
+ post_install_message:
39
+ rdoc_options:
40
+ - --main
41
+ - README.markdown
42
+ require_paths:
43
+ - lib
44
+ required_ruby_version: !ruby/object:Gem::Requirement
45
+ requirements:
46
+ - - ">="
47
+ - !ruby/object:Gem::Version
48
+ version: "0"
49
+ version:
50
+ required_rubygems_version: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: "0"
55
+ version:
56
+ requirements: []
57
+
58
+ rubyforge_project:
59
+ rubygems_version: 1.1.0
60
+ signing_key:
61
+ specification_version: 2
62
+ summary: The fitnesse server packaged as a convenient gem (version 20070619).
63
+ test_files:
64
+ - spec/functional/fitnesse_spec.rb