cuke4nuke 0.2.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.
@@ -0,0 +1,21 @@
1
+ require 'rubygems'
2
+ require 'rake'
3
+
4
+ begin
5
+ require 'jeweler'
6
+ Jeweler::Tasks.new do |gem|
7
+ gem.name = "cuke4nuke"
8
+ gem.summary = %Q{Cucumber for .NET}
9
+ gem.description = %Q{Runs Cucumber with .NET step definitions.}
10
+ gem.email = "richard@humanizingwork.com"
11
+ gem.homepage = "http://github.com/richardlawrence/Cuke4Nuke"
12
+ gem.authors = ["Richard Lawrence"]
13
+
14
+ gem.add_dependency "cucumber", "0.4.3"
15
+ gem.add_dependency "win32-process", "0.6.1"
16
+ gem.add_dependency "systemu", "1.2.0"
17
+ end
18
+ rescue LoadError
19
+ puts "Jeweler (or a dependency) not available. Install it with: sudo gem install jeweler"
20
+ end
21
+
data/VERSION ADDED
@@ -0,0 +1 @@
1
+ 0.2.0
@@ -0,0 +1,54 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require 'rubygems'
4
+ require 'systemu'
5
+ require 'win32/process'
6
+
7
+ def launch_cuke4nuke_process(step_definitions_dll_path)
8
+ cuke4nuke_server_exe = File.expand_path(File.join(File.dirname(__FILE__), '../dotnet/Cuke4Nuke.Server.exe'))
9
+ command = %{"#{cuke4nuke_server_exe}" -a "#{step_definitions_dll_path}"}
10
+ process = IO.popen(command, 'r')
11
+ @cuke4nuke_server_pid = process.pid
12
+ end
13
+
14
+ def kill_cuke4nuke_process
15
+ Process.kill(9, @cuke4nuke_server_pid)
16
+ end
17
+
18
+ def launch_cucumber(args)
19
+ command = "cucumber #{args.join(' ')} 2>&1"
20
+ status, stdout, stderr = systemu(command)
21
+ puts stdout
22
+ status
23
+ end
24
+
25
+ def show_usage
26
+ puts "Usage: cuke4nuke STEP_DEFINITION_DLL_PATH [CUCUMBER_ARGUMENTS]\n\n"
27
+ puts "The following is Cucumber's help. Anything after the cucumber command can be"
28
+ puts "passed in the CUCUMBER_ARGUMENTS argument for cuke4nuke:\n\n"
29
+ launch_cucumber(['--help'])
30
+ end
31
+
32
+ if ARGV.empty? || ['-h', '-?', '/?', '--help'].include?(ARGV[0])
33
+ show_usage
34
+ else
35
+ args = ARGV.clone
36
+ step_definitions_dll_path = File.expand_path(args.shift)
37
+
38
+ if !File.exists?(step_definitions_dll_path)
39
+ puts %{"#{step_definitions_dll_path}" is not a valid file path.\n\n}
40
+ show_usage
41
+ exit 1
42
+ end
43
+
44
+ launch_cuke4nuke_process(step_definitions_dll_path)
45
+
46
+ @exit_status = 1
47
+ begin
48
+ cucumber_status = launch_cucumber(args)
49
+ @exit_status = cucumber_status.exitstatus
50
+ ensure
51
+ kill_cuke4nuke_process
52
+ end
53
+ exit @exit_status
54
+ end
@@ -0,0 +1,58 @@
1
+ # Generated by jeweler
2
+ # DO NOT EDIT THIS FILE DIRECTLY
3
+ # Instead, edit Jeweler::Tasks in rakefile, and run the gemspec command
4
+ # -*- encoding: utf-8 -*-
5
+
6
+ Gem::Specification.new do |s|
7
+ s.name = %q{cuke4nuke}
8
+ s.version = "0.2.0"
9
+
10
+ s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
+ s.authors = ["Richard Lawrence"]
12
+ s.date = %q{2009-11-06}
13
+ s.default_executable = %q{cuke4nuke}
14
+ s.description = %q{Runs Cucumber with .NET step definitions.}
15
+ s.email = %q{richard@humanizingwork.com}
16
+ s.executables = ["cuke4nuke"]
17
+ s.files = [
18
+ "Rakefile",
19
+ "VERSION",
20
+ "bin/cuke4nuke",
21
+ "cuke4nuke.gemspec",
22
+ "dotnet/Castle.Core.dll",
23
+ "dotnet/Castle.MicroKernel.dll",
24
+ "dotnet/Cuke4Nuke.Core.dll",
25
+ "dotnet/Cuke4Nuke.Framework.dll",
26
+ "dotnet/Cuke4Nuke.Server.exe",
27
+ "dotnet/Cuke4Nuke.Server.exe.config",
28
+ "dotnet/Cuke4Nuke.TestStepDefinitions.dll",
29
+ "dotnet/LitJson.dll",
30
+ "dotnet/NDesk.Options.dll",
31
+ "dotnet/log4net.dll"
32
+ ]
33
+ s.homepage = %q{http://github.com/richardlawrence/Cuke4Nuke}
34
+ s.rdoc_options = ["--charset=UTF-8"]
35
+ s.require_paths = ["lib"]
36
+ s.rubygems_version = %q{1.3.5}
37
+ s.summary = %q{Cucumber for .NET}
38
+
39
+ if s.respond_to? :specification_version then
40
+ current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
41
+ s.specification_version = 3
42
+
43
+ if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
44
+ s.add_runtime_dependency(%q<cucumber>, ["= 0.4.3"])
45
+ s.add_runtime_dependency(%q<win32-process>, ["= 0.6.1"])
46
+ s.add_runtime_dependency(%q<systemu>, ["= 1.2.0"])
47
+ else
48
+ s.add_dependency(%q<cucumber>, ["= 0.4.3"])
49
+ s.add_dependency(%q<win32-process>, ["= 0.6.1"])
50
+ s.add_dependency(%q<systemu>, ["= 1.2.0"])
51
+ end
52
+ else
53
+ s.add_dependency(%q<cucumber>, ["= 0.4.3"])
54
+ s.add_dependency(%q<win32-process>, ["= 0.6.1"])
55
+ s.add_dependency(%q<systemu>, ["= 1.2.0"])
56
+ end
57
+ end
58
+
Binary file
Binary file
@@ -0,0 +1,24 @@
1
+ <?xml version="1.0" encoding="utf-8" ?>
2
+ <configuration>
3
+ <configSections>
4
+ <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
5
+ </configSections>
6
+ <log4net>
7
+ <root>
8
+ <level value="ALL" />
9
+ <appender-ref ref="LogFileAppender" />
10
+ </root>
11
+ <appender name="LogFileAppender" type="log4net.Appender.RollingFileAppender,log4net">
12
+ <param name="File" value="Cuke4NukeLog.txt" />
13
+ <param name="AppendToFile" value="true" />
14
+ <rollingStyle value="Size" />
15
+ <maxSizeRollBackups value="2" />
16
+ <maximumFileSize value="100KB" />
17
+ <staticLogFileName value="true" />
18
+ <datePattern value="yyyyMMdd" />
19
+ <layout type="log4net.Layout.PatternLayout">
20
+ <conversionPattern value="%date [%thread] %-5level %logger - %message%newline" />
21
+ </layout>
22
+ </appender>
23
+ </log4net>
24
+ </configuration>
Binary file
Binary file
Binary file
metadata ADDED
@@ -0,0 +1,97 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: cuke4nuke
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.2.0
5
+ platform: ruby
6
+ authors:
7
+ - Richard Lawrence
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+
12
+ date: 2009-11-06 00:00:00 -07:00
13
+ default_executable: cuke4nuke
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: cucumber
17
+ type: :runtime
18
+ version_requirement:
19
+ version_requirements: !ruby/object:Gem::Requirement
20
+ requirements:
21
+ - - "="
22
+ - !ruby/object:Gem::Version
23
+ version: 0.4.3
24
+ version:
25
+ - !ruby/object:Gem::Dependency
26
+ name: win32-process
27
+ type: :runtime
28
+ version_requirement:
29
+ version_requirements: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "="
32
+ - !ruby/object:Gem::Version
33
+ version: 0.6.1
34
+ version:
35
+ - !ruby/object:Gem::Dependency
36
+ name: systemu
37
+ type: :runtime
38
+ version_requirement:
39
+ version_requirements: !ruby/object:Gem::Requirement
40
+ requirements:
41
+ - - "="
42
+ - !ruby/object:Gem::Version
43
+ version: 1.2.0
44
+ version:
45
+ description: Runs Cucumber with .NET step definitions.
46
+ email: richard@humanizingwork.com
47
+ executables:
48
+ - cuke4nuke
49
+ extensions: []
50
+
51
+ extra_rdoc_files: []
52
+
53
+ files:
54
+ - Rakefile
55
+ - VERSION
56
+ - bin/cuke4nuke
57
+ - cuke4nuke.gemspec
58
+ - dotnet/Castle.Core.dll
59
+ - dotnet/Castle.MicroKernel.dll
60
+ - dotnet/Cuke4Nuke.Core.dll
61
+ - dotnet/Cuke4Nuke.Framework.dll
62
+ - dotnet/Cuke4Nuke.Server.exe
63
+ - dotnet/Cuke4Nuke.Server.exe.config
64
+ - dotnet/Cuke4Nuke.TestStepDefinitions.dll
65
+ - dotnet/LitJson.dll
66
+ - dotnet/NDesk.Options.dll
67
+ - dotnet/log4net.dll
68
+ has_rdoc: true
69
+ homepage: http://github.com/richardlawrence/Cuke4Nuke
70
+ licenses: []
71
+
72
+ post_install_message:
73
+ rdoc_options:
74
+ - --charset=UTF-8
75
+ require_paths:
76
+ - lib
77
+ required_ruby_version: !ruby/object:Gem::Requirement
78
+ requirements:
79
+ - - ">="
80
+ - !ruby/object:Gem::Version
81
+ version: "0"
82
+ version:
83
+ required_rubygems_version: !ruby/object:Gem::Requirement
84
+ requirements:
85
+ - - ">="
86
+ - !ruby/object:Gem::Version
87
+ version: "0"
88
+ version:
89
+ requirements: []
90
+
91
+ rubyforge_project:
92
+ rubygems_version: 1.3.5
93
+ signing_key:
94
+ specification_version: 3
95
+ summary: Cucumber for .NET
96
+ test_files: []
97
+