cuke4nuke-aslakjo 0.3.2

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/Rakefile ADDED
@@ -0,0 +1,36 @@
1
+ require 'rubygems'
2
+ require 'rake'
3
+
4
+ begin
5
+ require 'jeweler'
6
+ Jeweler::Tasks.new do |gem|
7
+ gem.name = "cuke4nuke-aslakjo"
8
+ gem.summary = %Q{Cucumber for .NET}
9
+ gem.description = %Q{Runs Cucumber with .NET step definitions.}
10
+ gem.email = "aslakjo@gmail.com"
11
+ gem.homepage = "http://github.com/richardlawrence/Cuke4Nuke"
12
+ gem.authors = ["Richard Lawrence"]
13
+ gem.executables = ["cuke4nuke"]
14
+
15
+ gem.add_dependency "cucumber", ">=0.5.2"
16
+ gem.add_dependency "win32-process", ">=0.6.1"
17
+ gem.add_dependency "systemu", ">=1.2.0"
18
+ gem.add_dependency "json", ">=1.2.0"
19
+ gem.add_dependency "win32console", ">=1.2.0"
20
+
21
+ gem.files += FileList['dotnet/*.{dll,exe,config}']
22
+ gem.test_files = []
23
+ end
24
+ Jeweler::GemcutterTasks.new
25
+ rescue LoadError
26
+ puts "Jeweler (or a dependency) not available. Install it with: sudo gem install jeweler"
27
+ end
28
+
29
+ task :gemspec => :copy_binaries
30
+
31
+ desc "Copy Cuke4Nuke binaries to the dotnet directory"
32
+ task :copy_binaries do
33
+ Dir[File.dirname(__FILE__) + '/../Cuke4Nuke/Server/bin/Release/*.{pdb,dll,exe,config}'].each do |file|
34
+ cp file, 'dotnet' unless file =~ /vshost/
35
+ end
36
+ end
data/VERSION ADDED
@@ -0,0 +1 @@
1
+ 0.3.2
data/bin/cuke4nuke ADDED
@@ -0,0 +1,6 @@
1
+ #!/usr/bin/env ruby
2
+ $:.unshift(File.dirname(__FILE__) + '/../lib') unless $:.include?(File.dirname(__FILE__) + '/../lib')
3
+
4
+ require 'cuke4nuke/main'
5
+
6
+ Cuke4Nuke::Main.new.run(ARGV.dup)
data/cuke4nuke.gemspec ADDED
@@ -0,0 +1,66 @@
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.3.2"
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{2010-02-23}
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/.gitignore",
23
+ "dotnet/Castle.Core.dll",
24
+ "dotnet/Castle.MicroKernel.dll",
25
+ "dotnet/Cuke4Nuke.Core.dll",
26
+ "dotnet/Cuke4Nuke.Framework.dll",
27
+ "dotnet/Cuke4Nuke.Server.exe",
28
+ "dotnet/Cuke4Nuke.Server.exe.config",
29
+ "dotnet/Cuke4Nuke.TestStepDefinitions.dll",
30
+ "dotnet/NDesk.Options.dll",
31
+ "dotnet/Newtonsoft.Json.dll",
32
+ "dotnet/log4net.dll",
33
+ "lib/cuke4nuke/main.rb"
34
+ ]
35
+ s.homepage = %q{http://github.com/richardlawrence/Cuke4Nuke}
36
+ s.rdoc_options = ["--charset=UTF-8"]
37
+ s.require_paths = ["lib"]
38
+ s.rubygems_version = %q{1.3.5}
39
+ s.summary = %q{Cucumber for .NET}
40
+
41
+ if s.respond_to? :specification_version then
42
+ current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
43
+ s.specification_version = 3
44
+
45
+ if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
46
+ s.add_runtime_dependency(%q<cucumber>, [">= 0.5.2"])
47
+ s.add_runtime_dependency(%q<win32-process>, [">= 0.6.1"])
48
+ s.add_runtime_dependency(%q<systemu>, [">= 1.2.0"])
49
+ s.add_runtime_dependency(%q<json>, [">= 1.2.0"])
50
+ s.add_runtime_dependency(%q<win32console>, [">= 1.2.0"])
51
+ else
52
+ s.add_dependency(%q<cucumber>, [">= 0.5.2"])
53
+ s.add_dependency(%q<win32-process>, [">= 0.6.1"])
54
+ s.add_dependency(%q<systemu>, [">= 1.2.0"])
55
+ s.add_dependency(%q<json>, [">= 1.2.0"])
56
+ s.add_dependency(%q<win32console>, [">= 1.2.0"])
57
+ end
58
+ else
59
+ s.add_dependency(%q<cucumber>, [">= 0.5.2"])
60
+ s.add_dependency(%q<win32-process>, [">= 0.6.1"])
61
+ s.add_dependency(%q<systemu>, [">= 1.2.0"])
62
+ s.add_dependency(%q<json>, [">= 1.2.0"])
63
+ s.add_dependency(%q<win32console>, [">= 1.2.0"])
64
+ end
65
+ end
66
+
data/dotnet/.gitignore ADDED
@@ -0,0 +1,5 @@
1
+ *.dll
2
+ *.exe
3
+ *.txt
4
+ *.config
5
+ *.pdb
Binary file
Binary file
Binary file
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
@@ -0,0 +1,59 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require 'rubygems'
4
+ require 'systemu'
5
+ require 'win32/process'
6
+
7
+ module Cuke4Nuke
8
+ class Main
9
+ def run(args)
10
+ if args.empty? || ['-h', '-?', '/?', '--help'].include?(args[0])
11
+ show_usage
12
+ else
13
+ step_definitions_dll_path = File.expand_path(args.shift)
14
+
15
+ if !File.file?(step_definitions_dll_path)
16
+ puts %{"#{step_definitions_dll_path}" is not a valid file path.\n\n}
17
+ show_usage
18
+ exit 1
19
+ end
20
+
21
+ launch_cuke4nuke_process(step_definitions_dll_path)
22
+
23
+ @exit_status = 1
24
+ begin
25
+ cucumber_status = launch_cucumber(args)
26
+ @exit_status = cucumber_status.exitstatus
27
+ ensure
28
+ kill_cuke4nuke_process
29
+ end
30
+ exit @exit_status
31
+ end
32
+ end
33
+
34
+ def launch_cuke4nuke_process(step_definitions_dll_path)
35
+ cuke4nuke_server_exe = File.expand_path(File.join(File.dirname(__FILE__), '../../dotnet/Cuke4Nuke.Server.exe'))
36
+ command = %{"#{cuke4nuke_server_exe}" -a "#{step_definitions_dll_path}"}
37
+ process = IO.popen(command, 'r')
38
+ @cuke4nuke_server_pid = process.pid
39
+ end
40
+
41
+ def kill_cuke4nuke_process
42
+ Process.kill(9, @cuke4nuke_server_pid)
43
+ end
44
+
45
+ def launch_cucumber(args)
46
+ command = "cucumber #{args.join(' ')} 2>&1"
47
+ status, stdout, stderr = systemu(command)
48
+ puts stdout
49
+ status
50
+ end
51
+
52
+ def show_usage
53
+ puts "Usage: cuke4nuke STEP_DEFINITION_DLL_PATH [CUCUMBER_ARGUMENTS]\n\n"
54
+ puts "The following is Cucumber's help. Anything after the cucumber command can be"
55
+ puts "passed in the CUCUMBER_ARGUMENTS argument for cuke4nuke:\n\n"
56
+ launch_cucumber(['--help'])
57
+ end
58
+ end
59
+ end
metadata ADDED
@@ -0,0 +1,119 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: cuke4nuke-aslakjo
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.3.2
5
+ platform: ruby
6
+ authors:
7
+ - Richard Lawrence
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+
12
+ date: 2010-02-23 00:00:00 +01: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.5.2
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
+ - !ruby/object:Gem::Dependency
46
+ name: json
47
+ type: :runtime
48
+ version_requirement:
49
+ version_requirements: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - ">="
52
+ - !ruby/object:Gem::Version
53
+ version: 1.2.0
54
+ version:
55
+ - !ruby/object:Gem::Dependency
56
+ name: win32console
57
+ type: :runtime
58
+ version_requirement:
59
+ version_requirements: !ruby/object:Gem::Requirement
60
+ requirements:
61
+ - - ">="
62
+ - !ruby/object:Gem::Version
63
+ version: 1.2.0
64
+ version:
65
+ description: Runs Cucumber with .NET step definitions.
66
+ email: aslakjo@gmail.com
67
+ executables:
68
+ - cuke4nuke
69
+ extensions: []
70
+
71
+ extra_rdoc_files: []
72
+
73
+ files:
74
+ - Rakefile
75
+ - VERSION
76
+ - bin/cuke4nuke
77
+ - cuke4nuke.gemspec
78
+ - dotnet/.gitignore
79
+ - dotnet/Castle.Core.dll
80
+ - dotnet/Castle.MicroKernel.dll
81
+ - dotnet/Cuke4Nuke.Core.dll
82
+ - dotnet/Cuke4Nuke.Framework.dll
83
+ - dotnet/Cuke4Nuke.Server.exe
84
+ - dotnet/Cuke4Nuke.Server.exe.config
85
+ - dotnet/Cuke4Nuke.TestStepDefinitions.dll
86
+ - dotnet/NDesk.Options.dll
87
+ - dotnet/Newtonsoft.Json.dll
88
+ - dotnet/log4net.dll
89
+ - lib/cuke4nuke/main.rb
90
+ has_rdoc: true
91
+ homepage: http://github.com/richardlawrence/Cuke4Nuke
92
+ licenses: []
93
+
94
+ post_install_message:
95
+ rdoc_options:
96
+ - --charset=UTF-8
97
+ require_paths:
98
+ - lib
99
+ required_ruby_version: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ">="
102
+ - !ruby/object:Gem::Version
103
+ version: "0"
104
+ version:
105
+ required_rubygems_version: !ruby/object:Gem::Requirement
106
+ requirements:
107
+ - - ">="
108
+ - !ruby/object:Gem::Version
109
+ version: "0"
110
+ version:
111
+ requirements: []
112
+
113
+ rubyforge_project:
114
+ rubygems_version: 1.3.5
115
+ signing_key:
116
+ specification_version: 3
117
+ summary: Cucumber for .NET
118
+ test_files: []
119
+