mendicantx-rubicant 0.0.4 → 0.0.5

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.
@@ -1,34 +1,34 @@
1
- require 'configatron'
2
- require 'win32/registry'
3
-
4
- module Rubicant::DotNet
5
-
6
- class Frameworks
7
- def self.get_framework()
8
- ENV['framework'] = 'net35' if ENV['framework'].nil?
9
- configatron.configure_from_yaml(File.dirname(__FILE__) + '/frameworks.yml') if configatron.frameworks.nil?
10
- frameworkConfiguration = configatron.frameworks.retrieve(ENV['framework'])
11
- fail('Requested framework does not exist in configuration') if frameworkConfiguration.nil?
12
- return Framework.new(frameworkConfiguration)
13
- end
14
-
15
- end
16
-
17
- class Framework
18
- attr_reader :framework_dir, :sdk_dir
19
-
20
- def initialize(frameworkConfig)
21
- framework_key = Win32::Registry::HKEY_LOCAL_MACHINE.open(frameworkConfig.framework_registry_path)
22
- framework_sdk_key = Win32::Registry::HKEY_LOCAL_MACHINE.open(frameworkConfig.framework_sdk_registry_path)
23
- begin
24
- @framework_dir = framework_key.read_s(frameworkConfig.framework_registry_key) + "\\#{frameworkConfig.framework_version}"
25
- @sdk_dir = framework_sdk_key.read_s(frameworkConfig.framework_sdk_registry_key)
26
- rescue Win32::Registry::Error
27
- puts "Either the Framework or the SDK is not installed for #{ENV['framework']}"
28
- end
29
- end
30
-
31
- end
32
-
33
-
1
+ require 'configatron'
2
+ require 'win32/registry'
3
+
4
+ module Rubicant::DotNet
5
+
6
+ class Frameworks
7
+ def self.get_framework()
8
+ ENV['framework'] = 'net35' if ENV['framework'].nil?
9
+ configatron.configure_from_yaml(File.dirname(__FILE__) + '/frameworks.yml') if configatron.frameworks.nil?
10
+ frameworkConfiguration = configatron.frameworks.retrieve(ENV['framework'])
11
+ fail('Requested framework does not exist in configuration') if frameworkConfiguration.nil?
12
+ return Framework.new(frameworkConfiguration)
13
+ end
14
+
15
+ end
16
+
17
+ class Framework
18
+ attr_reader :framework_dir, :sdk_dir
19
+
20
+ def initialize(frameworkConfig)
21
+ framework_key = Win32::Registry::HKEY_LOCAL_MACHINE.open(frameworkConfig.framework_registry_path)
22
+ framework_sdk_key = Win32::Registry::HKEY_LOCAL_MACHINE.open(frameworkConfig.framework_sdk_registry_path)
23
+ begin
24
+ @framework_dir = framework_key.read_s(frameworkConfig.framework_registry_key) + "\\#{frameworkConfig.framework_version}"
25
+ @sdk_dir = framework_sdk_key.read_s(frameworkConfig.framework_sdk_registry_key)
26
+ rescue Win32::Registry::Error
27
+ puts "Either the Framework or the SDK is not installed for #{ENV['framework']}"
28
+ end
29
+ end
30
+
31
+ end
32
+
33
+
34
34
  end
@@ -1,14 +1,14 @@
1
- frameworks:
2
- net20:
3
- framework_registry_path: SOFTWARE\Microsoft\.NETFramework
4
- framework_sdk_registry_path: SOFTWARE\Microsoft\.NETFramework
5
- framework_registry_key: InstallRoot
6
- framework_sdk_registry_key: sdkInstallRootv2.0
7
- framework_version: v2.0.50727
8
- net35:
9
- framework_registry_path: SOFTWARE\Microsoft\.NETFramework
10
- framework_sdk_registry_path: SOFTWARE\Microsoft\Microsoft SDKs\Windows\v6.0A\WinSDKNetFxTools
11
- framework_registry_key: InstallRoot
12
- framework_sdk_registry_key: InstallationFolder
13
- framework_version: v3.5
1
+ frameworks:
2
+ net20:
3
+ framework_registry_path: SOFTWARE\Microsoft\.NETFramework
4
+ framework_sdk_registry_path: SOFTWARE\Microsoft\.NETFramework
5
+ framework_registry_key: InstallRoot
6
+ framework_sdk_registry_key: sdkInstallRootv2.0
7
+ framework_version: v2.0.50727
8
+ net35:
9
+ framework_registry_path: SOFTWARE\Microsoft\.NETFramework
10
+ framework_sdk_registry_path: SOFTWARE\Microsoft\Microsoft SDKs\Windows\v6.0A\WinSDKNetFxTools
11
+ framework_registry_key: InstallRoot
12
+ framework_sdk_registry_key: InstallationFolder
13
+ framework_version: v3.5
14
14
 
@@ -1,40 +1,40 @@
1
- require 'rake'
2
-
3
- module Rubicant
4
-
5
- class Runner
6
- def self.run(command)
7
- puts command unless ENV['debug'].nil?
8
- sh command
9
- end
10
-
11
- def self.exec(program, opts={})
12
- fail("program is required") if program.nil? || program.length == 0
13
- command = ""
14
- command << opts[:program_dir] unless opts[:program_dir].nil?
15
- command << "/" if command.length > 0 && command.rindex("/") != command.length - 1
16
- command << program + " "
17
- command << opts[:args].join(" ") unless opts[:args].nil?
18
-
19
- working_dir = Dir.pwd
20
- working_dir = opts[:working_dir] unless opts[:working_dir].nil?
21
-
22
- Dir.chdir(working_dir) do |path|
23
- Runner.run(command)
24
- end
25
- end
26
-
27
-
28
- end
29
-
30
- class Files
31
- def self.copy(src, dest, opts={})
32
- cp src, dest, opts
33
- end
34
-
35
- def self.remove(list, options={})
36
- rm list, options
37
- end
38
- end
39
-
1
+ require 'rake'
2
+
3
+ module Rubicant
4
+
5
+ class Runner
6
+ def self.run(command)
7
+ puts command unless ENV['debug'].nil?
8
+ sh command
9
+ end
10
+
11
+ def self.exec(program, opts={})
12
+ fail("program is required") if program.nil? || program.length == 0
13
+ command = ""
14
+ command << opts[:program_dir] unless opts[:program_dir].nil?
15
+ command << "/" if command.length > 0 && command.rindex("/") != command.length - 1
16
+ command << program + " "
17
+ command << opts[:args].join(" ") unless opts[:args].nil?
18
+
19
+ working_dir = Dir.pwd
20
+ working_dir = opts[:working_dir] unless opts[:working_dir].nil?
21
+
22
+ Dir.chdir(working_dir) do |path|
23
+ Runner.run(command)
24
+ end
25
+ end
26
+
27
+
28
+ end
29
+
30
+ class Files
31
+ def self.copy(src, dest, opts={})
32
+ cp src, dest, opts
33
+ end
34
+
35
+ def self.remove(list, options={})
36
+ rm list, options
37
+ end
38
+ end
39
+
40
40
  end
@@ -1,24 +1,24 @@
1
- require File.dirname(__FILE__) + '/runners/compiler_runners'
2
- require File.dirname(__FILE__) + '/runners/build_runners'
3
- require File.dirname(__FILE__) + '/runners/test_runners'
4
- require File.dirname(__FILE__) + '/runners/file_tasks'
5
- require File.dirname(__FILE__) + '/dotnet/framework'
6
- require File.dirname(__FILE__) + '/facades'
7
- require 'erb'
8
-
9
- module Rubicant
10
- include Rubicant::DotNet
11
- include Rubicant::Runners
12
-
13
- def expand_template(template, output_file)
14
- template_string = ""
15
- File.open(template).each do |line|
16
- template_string << line
17
- end
18
-
19
- output = File.open(output_file, "w")
20
- output.puts(ERB.new(template_string).result)
21
- output.close
22
- end
23
-
1
+ require File.dirname(__FILE__) + '/runners/compiler_runners'
2
+ require File.dirname(__FILE__) + '/runners/build_runners'
3
+ require File.dirname(__FILE__) + '/runners/test_runners'
4
+ require File.dirname(__FILE__) + '/runners/file_tasks'
5
+ require File.dirname(__FILE__) + '/dotnet/framework'
6
+ require File.dirname(__FILE__) + '/facades'
7
+ require 'erb'
8
+
9
+ module Rubicant
10
+ include Rubicant::DotNet
11
+ include Rubicant::Runners
12
+
13
+ def expand_template(template, output_file)
14
+ template_string = ""
15
+ File.open(template).each do |line|
16
+ template_string << line
17
+ end
18
+
19
+ output = File.open(output_file, "w")
20
+ output.puts(ERB.new(template_string).result)
21
+ output.close
22
+ end
23
+
24
24
  end
@@ -55,7 +55,7 @@ private
55
55
 
56
56
  unless (@settings[:properties].nil?)
57
57
  properties_strings = []
58
- @settings[:properties].each do |key, value|
58
+ @settings[:properties].sort.each do |key, value|
59
59
  properties_strings << "#{key}=#{value}"
60
60
  end
61
61
  file.puts(" /property:#{properties_strings.join(';')}") unless properties_strings.length == 0
@@ -63,7 +63,7 @@ private
63
63
 
64
64
  unless (@settings[:file_logger_parameters].nil?)
65
65
  file_logger_parameters_strings = []
66
- @settings[:file_logger_parameters].each do |key, value|
66
+ @settings[:file_logger_parameters].sort.each do |key, value|
67
67
  file_logger_parameters_strings << "#{key}=#{value}"
68
68
  end
69
69
  file.puts(" /fileloggerparameters:#{file_logger_parameters_strings.join(';')}") unless file_logger_parameters_strings.length == 0
@@ -1,43 +1,76 @@
1
- require 'rake'
2
- require 'rake/tasklib'
3
- require File.dirname(__FILE__) + '/../facades'
4
- require File.dirname(__FILE__) + '/../dotnet/framework'
5
-
6
- module Rubicant::Runners
7
- class CscRunner
8
-
9
- attr_accessor :settings
10
-
11
- def initialize(settings = {})
12
- @settings = settings
13
- @csc = "#{Rubicant::DotNet::Frameworks.get_framework.framework_dir}\\csc.exe"
14
- end
15
-
16
- def run
17
- fail('Debug can only be true or nil') if (@settings[:debug].nil? == false && !@settings[:debug])
18
- Rubicant::Runner.run "#{build_command}"
19
- end
20
-
21
- private
22
- def build_command
23
- build_rsp
24
- command = "#{@csc} @#{ENV['TEMP']}/csc.rsp"
25
- command
26
- end
27
-
28
- def build_rsp
29
- file = File.new("#{ENV['TEMP']}/csc.rsp", "w")
30
-
31
- file.puts " /target:#{@settings[:target]}" unless @settings[:target].nil?
32
- file.puts " /reference:#{@settings[:references].join(';')}" unless @settings[:references].nil?
33
- file.puts " /out:#{@settings[:out]}" unless @settings[:out].nil?
34
- file.puts " /debug:full" unless @settings[:debug].nil?
35
- file.puts " #{@settings[:files].to_a.join(' ')}".gsub(/\//, "\\") unless @settings[:files].nil?
36
- file.close
37
-
38
- end
39
-
40
- end
41
-
42
- end
43
-
1
+ require 'rake'
2
+ require 'rake/tasklib'
3
+ require File.dirname(__FILE__) + '/../facades'
4
+ require File.dirname(__FILE__) + '/../dotnet/framework'
5
+
6
+ module Rubicant::Runners
7
+ class CscRunner
8
+
9
+ attr_accessor :settings
10
+
11
+ def initialize(settings = {})
12
+ @settings = settings
13
+ @csc = "#{Rubicant::DotNet::Frameworks.get_framework.framework_dir}\\csc.exe"
14
+ end
15
+
16
+ def run
17
+ fail('Debug can only be true or nil') if (@settings[:debug].nil? == false && !@settings[:debug])
18
+ Rubicant::Runner.run "#{build_command}"
19
+ end
20
+
21
+ private
22
+ def build_command
23
+ build_rsp
24
+ command = "#{@csc} @#{ENV['TEMP']}/csc.rsp"
25
+ command
26
+ end
27
+
28
+ def build_rsp
29
+ file = File.new("#{ENV['TEMP']}/csc.rsp", "w")
30
+
31
+ file.puts " /target:#{@settings[:target]}" unless @settings[:target].nil?
32
+ file.puts " /reference:#{@settings[:references].join(';')}" unless @settings[:references].nil?
33
+ file.puts " /out:#{@settings[:out]}" unless @settings[:out].nil?
34
+ file.puts " /debug:full" unless @settings[:debug].nil?
35
+ file.puts " #{@settings[:files].to_a.join(' ')}".gsub(/\//, "\\") unless @settings[:files].nil?
36
+ file.close
37
+
38
+ end
39
+
40
+ end
41
+
42
+ def generate_assembly_info(opts)
43
+
44
+ opts[:cls_compliant] = true if opts[:cls_compliant].nil?
45
+ fail('File is required for assembly info generation') if opts[:path].nil?
46
+
47
+ assembly_info = "using System;
48
+ using System.Reflection;
49
+ using System.Runtime.CompilerServices;
50
+ using System.Runtime.InteropServices;
51
+
52
+ [assembly: CLSCompliantAttribute(#{opts[:cls_compliant]})]
53
+ [assembly: ComVisibleAttribute(false)]
54
+ [assembly: AssemblyTitleAttribute(\"#{opts[:title]}\")]
55
+ [assembly: AssemblyDescriptionAttribute(\"#{opts[:description]}\")]
56
+ [assembly: AssemblyCompanyAttribute(\"#{opts[:company]}\")]
57
+ [assembly: AssemblyProductAttribute(\"#{opts[:product]}\")]
58
+ [assembly: AssemblyCopyrightAttribute(\"#{opts[:copyright]}\")]
59
+ [assembly: AssemblyVersionAttribute(\"#{opts[:version]}\")]
60
+ [assembly: AssemblyInformationalVersionAttribute(\"#{opts[:version]}\")]
61
+ [assembly: AssemblyFileVersionAttribute(\"#{opts[:version]}\")]
62
+ [assembly: AssemblyDelaySignAttribute(false)]
63
+ "
64
+ puts "Generating assembly info file in: #{opts[:path]}"
65
+
66
+ mkdir_p opts[:path]
67
+ asm_file = File.new("#{opts[:file]}\\AssemblyInfo.cs", "w")
68
+
69
+ asm_file.puts(assembly_info)
70
+
71
+ asm_file.close
72
+
73
+ end
74
+
75
+ end
76
+
@@ -1,51 +1,51 @@
1
- require 'rake'
2
- require 'fileutils'
3
-
4
- module Rubicant::Runners
5
- class CopyFiles
6
-
7
- attr_accessor :settings
8
-
9
- def initialize(settings = {})
10
- @settings = settings
11
- end
12
-
13
- def run
14
- fail "Target directory must be defined (:target_dir)" if @settings[:target_dir].nil?
15
- fail "Source files must be defined (:file_globs)" if @settings[:file_globs].nil?
16
- fail "Base directory must be defined (:base_dir)" if @settings[:base_dir].nil?
17
- @settings[:excludes] = [] if @settings[:excludes].nil?
18
-
19
- mkdir @settings[:target_dir] unless (File.exists?(@settings[:target_dir]))
20
-
21
- files = FileList.new
22
- @settings[:file_globs].each do |glob|
23
- files.include("#{@settings[:base_dir]}/#{glob}")
24
- end
25
-
26
- @settings[:excludes].each do |exclude|
27
- files.exclude(exclude)
28
- end
29
-
30
- files.each do |filename|
31
- target_dir_suffix = get_target_dir_suffix(filename)
32
- target_name = File.join(@settings[:target_dir], target_dir_suffix)
33
- if (File.directory?(filename))
34
- mkdir_p target_name
35
- else
36
- puts "copying from #{filename} to #{target_name}"
37
- cp filename, target_name
38
- end
39
- end
40
- end
41
-
42
- end
43
-
44
- def get_target_dir_suffix(file)
45
- suffix = file[@settings[:base_dir].length..file.length-1]
46
- puts "FileName is #{file}"
47
- puts "Base dir is #{@settings[:base_dir]}"
48
- puts "Suffix is #{suffix}"
49
- return suffix
50
- end
1
+ require 'rake'
2
+ require 'fileutils'
3
+
4
+ module Rubicant::Runners
5
+ class CopyFiles
6
+
7
+ attr_accessor :settings
8
+
9
+ def initialize(settings = {})
10
+ @settings = settings
11
+ end
12
+
13
+ def run
14
+ fail "Target directory must be defined (:target_dir)" if @settings[:target_dir].nil?
15
+ fail "Source files must be defined (:file_globs)" if @settings[:file_globs].nil?
16
+ fail "Base directory must be defined (:base_dir)" if @settings[:base_dir].nil?
17
+ @settings[:excludes] = [] if @settings[:excludes].nil?
18
+
19
+ mkdir @settings[:target_dir] unless (File.exists?(@settings[:target_dir]))
20
+
21
+ files = FileList.new
22
+ @settings[:file_globs].each do |glob|
23
+ files.include("#{@settings[:base_dir]}/#{glob}")
24
+ end
25
+
26
+ @settings[:excludes].each do |exclude|
27
+ files.exclude(exclude)
28
+ end
29
+
30
+ files.each do |filename|
31
+ target_dir_suffix = get_target_dir_suffix(filename)
32
+ target_name = File.join(@settings[:target_dir], target_dir_suffix)
33
+ if (File.directory?(filename))
34
+ mkdir_p target_name
35
+ else
36
+ puts "copying from #{filename} to #{target_name}"
37
+ cp filename, target_name
38
+ end
39
+ end
40
+ end
41
+
42
+ end
43
+
44
+ def get_target_dir_suffix(file)
45
+ suffix = file[@settings[:base_dir].length..file.length-1]
46
+ puts "FileName is #{file}"
47
+ puts "Base dir is #{@settings[:base_dir]}"
48
+ puts "Suffix is #{suffix}"
49
+ return suffix
50
+ end
51
51
  end
@@ -1,34 +1,34 @@
1
- require 'rake'
2
- require 'rubygems'
3
- require 'rake/testtask'
4
- require 'rake/rdoctask'
5
- require 'lib/rubicant'
6
- require 'rake/gempackagetask'
7
-
8
- task :test do
9
- require 'rake/runtest'
10
- Rake.run_tests 'test/**/*.rb'
11
- end
12
-
13
- spec = Gem::Specification.new do |s|
14
- s.name = "Rubicant"
15
- s.version = "0.0.4"
16
- s.author = "mendicant"
17
- s.email = "mendicant@beigesunshine.com"
18
- s.homepage = "http://blog.beigesunshine.com"
19
- s.platform = Gem::Platform::RUBY
20
- s.summary = ".Net Build Framework in Ruby"
21
- s.files = FileList["lib/**/*"].to_a
22
- s.require_path = "lib"
23
- s.autorequire = "rubicant"
24
- s.test_files = FileList["test/**/when*.rb"].to_a
25
- s.has_rdoc = false
26
- s.extra_rdoc_files = []
27
- s.add_dependency("configatron", ">= 2.1.6")
28
- s.add_dependency("rake", ">= 0.8.3")
29
- end
30
-
31
- Rake::GemPackageTask.new(spec) do |pkg|
32
- pkg.need_zip = true
33
- pkg.need_tar = true
34
- end
1
+ require 'rake'
2
+ require 'rubygems'
3
+ require 'rake/testtask'
4
+ require 'rake/rdoctask'
5
+ require 'lib/rubicant'
6
+ require 'rake/gempackagetask'
7
+
8
+ task :test do
9
+ require 'rake/runtest'
10
+ Rake.run_tests 'test/**/*.rb'
11
+ end
12
+
13
+ spec = Gem::Specification.new do |s|
14
+ s.name = "Rubicant"
15
+ s.version = "0.0.5"
16
+ s.author = "mendicant"
17
+ s.email = "mendicant@beigesunshine.com"
18
+ s.homepage = "http://blog.beigesunshine.com"
19
+ s.platform = Gem::Platform::RUBY
20
+ s.summary = ".Net Build Framework in Ruby"
21
+ s.files = FileList["lib/**/*"].to_a
22
+ s.require_path = "lib"
23
+ s.autorequire = "rubicant"
24
+ s.test_files = FileList["test/**/when*.rb"].to_a
25
+ s.has_rdoc = false
26
+ s.extra_rdoc_files = []
27
+ s.add_dependency("configatron", ">= 2.1.6")
28
+ s.add_dependency("rake", ">= 0.8.3")
29
+ end
30
+
31
+ Rake::GemPackageTask.new(spec) do |pkg|
32
+ pkg.need_zip = true
33
+ pkg.need_tar = true
34
+ end
@@ -1,34 +1,35 @@
1
- Gem::Specification.new do |s|
2
- s.name = "rubicant"
3
- s.version = "0.0.4"
4
- s.author = "mendicant"
5
- s.email = "mendicant@beigesunshine.com"
6
- s.homepage = "http://blog.beigesunshine.com"
7
- s.summary = ".Net Build Framework in Ruby"
8
- s.files = ["lib/facades.rb",
9
- "lib/dotnet",
10
- "lib/dotnet/frameworks.yml",
11
- "lib/dotnet/framework.rb",
12
- "lib/runners",
13
- "lib/runners/test_runners.rb",
14
- "lib/runners/compiler_runners.rb",
15
- "lib/runners/build_runners.rb",
16
- "lib/runners/file_tasks.rb",
17
- "lib/rubicant.rb",
18
- "rubicant.gemspec",
19
- "rakefile.rb"]
20
- s.require_path = "lib"
21
- s.test_files = ["test/unit",
22
- "test/unit/dotnet",
23
- "test/unit/dotnet/when_creating_new_framework.rb",
24
- "test/unit/dotnet/when_getting_framework_information.rb",
25
- "test/unit/runners",
26
- "test/unit/runners/when_calling_csc_runner.rb",
27
- "test/unit/runners/when_calling_mb_unit_runner.rb",
28
- "test/unit/runners/when_calling_copyfiles_task.rb",
29
- "test/unit/runners/when_calling_ms_build_runner.rb",
30
- "test/unit/runners/when_calling_ms_build_runner_with_incorrect_parameters.rb"]
31
- s.has_rdoc = false
32
- s.add_dependency("configatron", ">= 2.1.6")
33
- s.add_dependency("rake", ">= 0.8.3")
34
- end
1
+ Gem::Specification.new do |s|
2
+ s.name = "rubicant"
3
+ s.version = "0.0.5"
4
+ s.author = "mendicant"
5
+ s.email = "mendicant@beigesunshine.com"
6
+ s.homepage = "http://blog.beigesunshine.com"
7
+ s.summary = ".Net Build Framework in Ruby"
8
+ s.files = ["lib/facades.rb",
9
+ "lib/dotnet",
10
+ "lib/dotnet/frameworks.yml",
11
+ "lib/dotnet/framework.rb",
12
+ "lib/runners",
13
+ "lib/runners/test_runners.rb",
14
+ "lib/runners/compiler_runners.rb",
15
+ "lib/runners/build_runners.rb",
16
+ "lib/runners/file_tasks.rb",
17
+ "lib/rubicant.rb",
18
+ "rubicant.gemspec",
19
+ "rakefile.rb"]
20
+ s.require_path = "lib"
21
+ s.test_files = ["test/unit",
22
+ "test/unit/dotnet",
23
+ "test/unit/dotnet/when_creating_new_framework.rb",
24
+ "test/unit/dotnet/when_getting_framework_information.rb",
25
+ "test/unit/runners",
26
+ "test/unit/runners/when_calling_csc_runner.rb",
27
+ "test/unit/runners/when_calling_mb_unit_runner.rb",
28
+ "test/unit/runners/when_calling_copyfiles_task.rb",
29
+ "test/unit/runners/when_calling_ms_build_runner.rb",
30
+ "test/unit/runners/when_calling_ms_build_runner_with_incorrect_parameters.rb"]
31
+ s.has_rdoc = false
32
+ s.add_dependency("configatron", ">= 2.1.6")
33
+ s.add_dependency("rake", ">= 0.8.3")
34
+
35
+ end
@@ -1,60 +1,60 @@
1
- require "test/unit"
2
-
3
- class WhenCreatingNewFramework < Test::Unit::TestCase
4
-
5
- def setup
6
- @framework_path = 'framework_path'
7
- @framework_sdk_path = 'framework_sdk_path'
8
- @framework_version = 'framework_version'
9
- @framework_key = 'framework_key'
10
- @framework_sdk_key = 'framework_sdk_key'
11
- @framework_config = StubbedFrameworkConfig.new(@framework_path, @framework_sdk_path, @framework_key, @framework_sdk_key, @framework_version)
12
- @framework_dir = 'framework_dir'
13
- @framework_sdk_dir = 'framework_sdk_dir'
14
- @reg_path = mock()
15
- end
16
-
17
- def test_should_load_framework_dir_from_registry
18
-
19
- Win32::Registry::HKEY_LOCAL_MACHINE.expects(:open).with(@framework_path).returns(@reg_path)
20
- Win32::Registry::HKEY_LOCAL_MACHINE.stubs(:open).with(@framework_sdk_path).returns(@reg_path)
21
- @reg_path.expects(:read_s).with(@framework_key).returns(@framework_key)
22
- @reg_path.stubs(:read_s).with(@framework_sdk_key).returns(@framework_sdk_key)
23
-
24
- Rubicant::DotNet::Framework.new(@framework_config)
25
- end
26
-
27
- def test_should_load_framework_sdk_dir_from_registry
28
-
29
- Win32::Registry::HKEY_LOCAL_MACHINE.expects(:open).with(@framework_path).returns(@reg_path)
30
- Win32::Registry::HKEY_LOCAL_MACHINE.stubs(:open).with(@framework_sdk_path).returns(@reg_path)
31
- @reg_path.stubs(:read_s).with(@framework_key).returns(@framework_key)
32
- @reg_path.expects(:read_s).with(@framework_sdk_key).returns(@framework_sdk_key)
33
-
34
- Rubicant::DotNet::Framework.new(@framework_config)
35
- end
36
-
37
- def test_should_get_values_loaded_from_registry_from_created_framework
38
- Win32::Registry::HKEY_LOCAL_MACHINE.stubs(:open).with(@framework_path).returns(@reg_path)
39
- Win32::Registry::HKEY_LOCAL_MACHINE.stubs(:open).with(@framework_sdk_path).returns(@reg_path)
40
- @reg_path.stubs(:read_s).with(@framework_key).returns(@framework_dir)
41
- @reg_path.stubs(:read_s).with(@framework_sdk_key).returns(@framework_sdk_dir)
42
-
43
- result = Rubicant::DotNet::Framework.new(@framework_config)
44
- assert_equal "#{@framework_dir}\\#{@framework_version}", result.framework_dir
45
- assert_equal @framework_sdk_dir, result.sdk_dir
46
- end
47
-
48
- end
49
-
50
- class StubbedFrameworkConfig
51
- attr_reader :framework_registry_key, :framework_sdk_registry_key, :framework_registry_path, :framework_sdk_registry_path, :framework_version
52
-
53
- def initialize(framework_registry_path, framework_sdk_registry_path, framework_key, framework_sdk_key, framework_version)
54
- @framework_registry_path = framework_registry_path
55
- @framework_sdk_registry_path = framework_sdk_registry_path
56
- @framework_registry_key = framework_key
57
- @framework_sdk_registry_key = framework_sdk_key
58
- @framework_version = framework_version
59
- end
60
- end
1
+ require "test/unit"
2
+
3
+ class WhenCreatingNewFramework < Test::Unit::TestCase
4
+
5
+ def setup
6
+ @framework_path = 'framework_path'
7
+ @framework_sdk_path = 'framework_sdk_path'
8
+ @framework_version = 'framework_version'
9
+ @framework_key = 'framework_key'
10
+ @framework_sdk_key = 'framework_sdk_key'
11
+ @framework_config = StubbedFrameworkConfig.new(@framework_path, @framework_sdk_path, @framework_key, @framework_sdk_key, @framework_version)
12
+ @framework_dir = 'framework_dir'
13
+ @framework_sdk_dir = 'framework_sdk_dir'
14
+ @reg_path = mock()
15
+ end
16
+
17
+ def test_should_load_framework_dir_from_registry
18
+
19
+ Win32::Registry::HKEY_LOCAL_MACHINE.expects(:open).with(@framework_path).returns(@reg_path)
20
+ Win32::Registry::HKEY_LOCAL_MACHINE.stubs(:open).with(@framework_sdk_path).returns(@reg_path)
21
+ @reg_path.expects(:read_s).with(@framework_key).returns(@framework_key)
22
+ @reg_path.stubs(:read_s).with(@framework_sdk_key).returns(@framework_sdk_key)
23
+
24
+ Rubicant::DotNet::Framework.new(@framework_config)
25
+ end
26
+
27
+ def test_should_load_framework_sdk_dir_from_registry
28
+
29
+ Win32::Registry::HKEY_LOCAL_MACHINE.expects(:open).with(@framework_path).returns(@reg_path)
30
+ Win32::Registry::HKEY_LOCAL_MACHINE.stubs(:open).with(@framework_sdk_path).returns(@reg_path)
31
+ @reg_path.stubs(:read_s).with(@framework_key).returns(@framework_key)
32
+ @reg_path.expects(:read_s).with(@framework_sdk_key).returns(@framework_sdk_key)
33
+
34
+ Rubicant::DotNet::Framework.new(@framework_config)
35
+ end
36
+
37
+ def test_should_get_values_loaded_from_registry_from_created_framework
38
+ Win32::Registry::HKEY_LOCAL_MACHINE.stubs(:open).with(@framework_path).returns(@reg_path)
39
+ Win32::Registry::HKEY_LOCAL_MACHINE.stubs(:open).with(@framework_sdk_path).returns(@reg_path)
40
+ @reg_path.stubs(:read_s).with(@framework_key).returns(@framework_dir)
41
+ @reg_path.stubs(:read_s).with(@framework_sdk_key).returns(@framework_sdk_dir)
42
+
43
+ result = Rubicant::DotNet::Framework.new(@framework_config)
44
+ assert_equal "#{@framework_dir}\\#{@framework_version}", result.framework_dir
45
+ assert_equal @framework_sdk_dir, result.sdk_dir
46
+ end
47
+
48
+ end
49
+
50
+ class StubbedFrameworkConfig
51
+ attr_reader :framework_registry_key, :framework_sdk_registry_key, :framework_registry_path, :framework_sdk_registry_path, :framework_version
52
+
53
+ def initialize(framework_registry_path, framework_sdk_registry_path, framework_key, framework_sdk_key, framework_version)
54
+ @framework_registry_path = framework_registry_path
55
+ @framework_sdk_registry_path = framework_sdk_registry_path
56
+ @framework_registry_key = framework_key
57
+ @framework_sdk_registry_key = framework_sdk_key
58
+ @framework_version = framework_version
59
+ end
60
+ end
@@ -1,64 +1,64 @@
1
- require File.dirname(__FILE__) + '/../../../lib/dotnet/framework'
2
- require 'test/unit'
3
- require 'mocha'
4
-
5
- class WhenGettingFrameworkInformation < Test::Unit::TestCase
6
-
7
- def test_should_load_frameworks_if_not_already_loaded
8
- framework = 'framework'
9
- ENV['framework'] = framework
10
- configatron.frameworks.stubs(:nil?).returns(true)
11
- configatron.expects(:configure_from_yaml)
12
- configatron.frameworks.stubs(:retrieve).with(framework).returns({framework => {}})
13
- Rubicant::DotNet::Framework.stubs(:new).returns(mock())
14
-
15
- Rubicant::DotNet::Frameworks.get_framework()
16
-
17
- end
18
-
19
- def test_should_fail_if_requested_framework_is_not_in_configuration
20
- begin
21
- framework = 'framework'
22
- ENV['framework'] = framework
23
- configatron.frameworks.stubs(:nil?).returns(false)
24
- configatron.frameworks.stubs(:retrieve).with(framework).returns(nil)
25
-
26
- Rubicant::DotNet::Frameworks.get_framework()
27
-
28
- fail('I wanted a runtime error to be thrown')
29
- rescue RuntimeError => re
30
- assert_equal(re.message, 'Requested framework does not exist in configuration')
31
- end
32
-
33
- end
34
-
35
- def test_should_get_back_framework_if_exists_in_configuration
36
- framework = mock()
37
- frameworkName = 'framework'
38
- ENV['framework'] = frameworkName
39
- frameworkConfiguration = {frameworkName => {}}
40
-
41
- configatron.frameworks.stubs(:nil?).returns(false)
42
- configatron.frameworks.stubs(:retrieve).with(frameworkName).returns(frameworkConfiguration)
43
-
44
- Rubicant::DotNet::Framework.expects(:new).with(frameworkConfiguration).returns(framework)
45
-
46
- result = Rubicant::DotNet::Frameworks.get_framework()
47
- assert_equal framework, result
48
-
49
- end
50
-
51
- def test_should_default_to_net35_if_no_framework_specified
52
- framework = mock()
53
- ENV['framework'] = nil
54
- frameworkConfiguration = {'net35' => {}}
55
-
56
- configatron.frameworks.stubs(:nil?).returns(false)
57
- configatron.frameworks.expects(:retrieve).with('net35').returns(frameworkConfiguration)
58
- frameworkConfiguration.stubs(:nil?).returns(false)
59
- Rubicant::DotNet::Framework.stubs(:new).with(frameworkConfiguration).returns(framework)
60
-
61
- Rubicant::DotNet::Frameworks.get_framework()
62
- end
63
-
1
+ require File.dirname(__FILE__) + '/../../../lib/dotnet/framework'
2
+ require 'test/unit'
3
+ require 'mocha'
4
+
5
+ class WhenGettingFrameworkInformation < Test::Unit::TestCase
6
+
7
+ def test_should_load_frameworks_if_not_already_loaded
8
+ framework = 'framework'
9
+ ENV['framework'] = framework
10
+ configatron.frameworks.stubs(:nil?).returns(true)
11
+ configatron.expects(:configure_from_yaml)
12
+ configatron.frameworks.stubs(:retrieve).with(framework).returns({framework => {}})
13
+ Rubicant::DotNet::Framework.stubs(:new).returns(mock())
14
+
15
+ Rubicant::DotNet::Frameworks.get_framework()
16
+
17
+ end
18
+
19
+ def test_should_fail_if_requested_framework_is_not_in_configuration
20
+ begin
21
+ framework = 'framework'
22
+ ENV['framework'] = framework
23
+ configatron.frameworks.stubs(:nil?).returns(false)
24
+ configatron.frameworks.stubs(:retrieve).with(framework).returns(nil)
25
+
26
+ Rubicant::DotNet::Frameworks.get_framework()
27
+
28
+ fail('I wanted a runtime error to be thrown')
29
+ rescue RuntimeError => re
30
+ assert_equal(re.message, 'Requested framework does not exist in configuration')
31
+ end
32
+
33
+ end
34
+
35
+ def test_should_get_back_framework_if_exists_in_configuration
36
+ framework = mock()
37
+ frameworkName = 'framework'
38
+ ENV['framework'] = frameworkName
39
+ frameworkConfiguration = {frameworkName => {}}
40
+
41
+ configatron.frameworks.stubs(:nil?).returns(false)
42
+ configatron.frameworks.stubs(:retrieve).with(frameworkName).returns(frameworkConfiguration)
43
+
44
+ Rubicant::DotNet::Framework.expects(:new).with(frameworkConfiguration).returns(framework)
45
+
46
+ result = Rubicant::DotNet::Frameworks.get_framework()
47
+ assert_equal framework, result
48
+
49
+ end
50
+
51
+ def test_should_default_to_net35_if_no_framework_specified
52
+ framework = mock()
53
+ ENV['framework'] = nil
54
+ frameworkConfiguration = {'net35' => {}}
55
+
56
+ configatron.frameworks.stubs(:nil?).returns(false)
57
+ configatron.frameworks.expects(:retrieve).with('net35').returns(frameworkConfiguration)
58
+ frameworkConfiguration.stubs(:nil?).returns(false)
59
+ Rubicant::DotNet::Framework.stubs(:new).with(frameworkConfiguration).returns(framework)
60
+
61
+ Rubicant::DotNet::Frameworks.get_framework()
62
+ end
63
+
64
64
  end
@@ -1,48 +1,48 @@
1
- require File.dirname(__FILE__) + '/../../../lib/runners/file_tasks'
2
- require 'test/unit'
3
- require 'mocha'
4
- require 'rake'
5
-
6
- class WhenCallingCopyFilesTask < Test::Unit::TestCase
7
-
8
- def test_should_fail_when_calling_copyfiles_without_target_dir_parameter
9
- begin
10
- cf = Rubicant::Runners::CopyFiles.new
11
- cf.run
12
-
13
- assert.fail('Should get RuntimeError requiring target')
14
-
15
- rescue RuntimeError => re
16
- assert_equal('Target directory must be defined (:target_dir)', re.message)
17
- end
18
- end
19
-
20
- def test_should_fail_when_calling_copyfiles_without_file_globs_parameter
21
- begin
22
- cf =Rubicant::Runners::CopyFiles.new
23
- cf.settings[:target_dir] = "target_dir"
24
- cf.run
25
-
26
- assert.fail('Should get RuntimeError requiring target')
27
-
28
- rescue RuntimeError => re
29
- assert_equal('Source files must be defined (:file_globs)', re.message)
30
- end
31
- end
32
-
33
- def test_should_fail_when_calling_copyfiles_without_base_dir_parameter
34
- begin
35
- cf = Rubicant::Runners::CopyFiles.new
36
- cf.settings[:target_dir] = "target_dir"
37
- cf.settings[:file_globs] = "**/*"
38
- cf.run
39
-
40
- assert.fail('Should get RuntimeError requiring target')
41
-
42
- rescue RuntimeError => re
43
- assert_equal('Base directory must be defined (:base_dir)', re.message)
44
- end
45
- end
46
-
47
-
1
+ require File.dirname(__FILE__) + '/../../../lib/runners/file_tasks'
2
+ require 'test/unit'
3
+ require 'mocha'
4
+ require 'rake'
5
+
6
+ class WhenCallingCopyFilesTask < Test::Unit::TestCase
7
+
8
+ def test_should_fail_when_calling_copyfiles_without_target_dir_parameter
9
+ begin
10
+ cf = Rubicant::Runners::CopyFiles.new
11
+ cf.run
12
+
13
+ assert.fail('Should get RuntimeError requiring target')
14
+
15
+ rescue RuntimeError => re
16
+ assert_equal('Target directory must be defined (:target_dir)', re.message)
17
+ end
18
+ end
19
+
20
+ def test_should_fail_when_calling_copyfiles_without_file_globs_parameter
21
+ begin
22
+ cf =Rubicant::Runners::CopyFiles.new
23
+ cf.settings[:target_dir] = "target_dir"
24
+ cf.run
25
+
26
+ assert.fail('Should get RuntimeError requiring target')
27
+
28
+ rescue RuntimeError => re
29
+ assert_equal('Source files must be defined (:file_globs)', re.message)
30
+ end
31
+ end
32
+
33
+ def test_should_fail_when_calling_copyfiles_without_base_dir_parameter
34
+ begin
35
+ cf = Rubicant::Runners::CopyFiles.new
36
+ cf.settings[:target_dir] = "target_dir"
37
+ cf.settings[:file_globs] = "**/*"
38
+ cf.run
39
+
40
+ assert.fail('Should get RuntimeError requiring target')
41
+
42
+ rescue RuntimeError => re
43
+ assert_equal('Base directory must be defined (:base_dir)', re.message)
44
+ end
45
+ end
46
+
47
+
48
48
  end
@@ -1,75 +1,75 @@
1
- require File.dirname(__FILE__) + '/../../../lib/runners/compiler_runners'
2
- require 'test/unit'
3
- require 'mocha'
4
- require File.dirname(__FILE__) + '/../../../lib/facades'
5
-
6
- class WhenCallingCscRunner < Test::Unit::TestCase
7
-
8
-
9
- def setup
10
- @framework_dir = 'frameworkDir'
11
- @framework = mock()
12
- @framework.stubs(:framework_dir).returns(@framework_dir)
13
- Rubicant::DotNet::Frameworks.expects(:get_framework).returns(@framework)
14
- @rsp_file = "@#{ENV['TEMP']}/csc.rsp"
15
- Rubicant::Runner.expects(:sh).with("frameworkDir\\csc.exe #{@rsp_file}")
16
-
17
- @mock_file = mock()
18
- File.stubs(:new).with("#{ENV['TEMP']}/csc.rsp", "w").returns(@mock_file)
19
- @mock_file.stubs(:close)
20
- end
21
-
22
- def test_should_call_csc_with_rsp_file_even_with_no_parameters
23
-
24
- csc = Rubicant::Runners::CscRunner.new
25
- csc.run
26
- end
27
-
28
- def test_should_call_csc_with_target_parameter
29
- target = 'library'
30
-
31
- @mock_file.expects(:puts).with(" /target:#{target}")
32
- csc = Rubicant::Runners::CscRunner.new
33
- csc.settings[:target] = target
34
- csc.run
35
- end
36
-
37
- def test_should_call_csc_with_reference_parameter
38
- foo = 'foo.dll'
39
- bar = 'bar.dll'
40
-
41
- @mock_file.expects(:puts).with(" /reference:#{foo};#{bar}")
42
-
43
- csc = Rubicant::Runners::CscRunner.new
44
- csc.settings[:references] = [foo, bar]
45
- csc.run
46
- end
47
-
48
- def test_should_call_csc_with_out_parameter
49
- out = "outfile.dll"
50
-
51
- @mock_file.expects(:puts).with(" /out:#{out}")
52
- csc = Rubicant::Runners::CscRunner.new
53
- csc.settings[:out] = out
54
- csc.run
55
- end
56
-
57
- def test_should_call_csc_with_files
58
- foo = 'foo.cs'
59
- bar = 'bar.cs'
60
- @mock_file.expects(:puts).with(" #{foo} #{bar}")
61
- csc = Rubicant::Runners::CscRunner.new
62
- csc.settings[:files] = [foo, bar]
63
- csc.run
64
- end
65
-
66
- def test_should_call_csc_with_debug
67
-
68
- @mock_file.expects(:puts).with(" /debug:full")
69
- csc = Rubicant::Runners::CscRunner.new
70
- csc.settings[:debug] = true
71
- csc.run
72
- end
73
-
74
- end
75
-
1
+ require File.dirname(__FILE__) + '/../../../lib/runners/compiler_runners'
2
+ require 'test/unit'
3
+ require 'mocha'
4
+ require File.dirname(__FILE__) + '/../../../lib/facades'
5
+
6
+ class WhenCallingCscRunner < Test::Unit::TestCase
7
+
8
+
9
+ def setup
10
+ @framework_dir = 'frameworkDir'
11
+ @framework = mock()
12
+ @framework.stubs(:framework_dir).returns(@framework_dir)
13
+ Rubicant::DotNet::Frameworks.expects(:get_framework).returns(@framework)
14
+ @rsp_file = "@#{ENV['TEMP']}/csc.rsp"
15
+ Rubicant::Runner.expects(:sh).with("frameworkDir\\csc.exe #{@rsp_file}")
16
+
17
+ @mock_file = mock()
18
+ File.stubs(:new).with("#{ENV['TEMP']}/csc.rsp", "w").returns(@mock_file)
19
+ @mock_file.stubs(:close)
20
+ end
21
+
22
+ def test_should_call_csc_with_rsp_file_even_with_no_parameters
23
+
24
+ csc = Rubicant::Runners::CscRunner.new
25
+ csc.run
26
+ end
27
+
28
+ def test_should_call_csc_with_target_parameter
29
+ target = 'library'
30
+
31
+ @mock_file.expects(:puts).with(" /target:#{target}")
32
+ csc = Rubicant::Runners::CscRunner.new
33
+ csc.settings[:target] = target
34
+ csc.run
35
+ end
36
+
37
+ def test_should_call_csc_with_reference_parameter
38
+ foo = 'foo.dll'
39
+ bar = 'bar.dll'
40
+
41
+ @mock_file.expects(:puts).with(" /reference:#{foo};#{bar}")
42
+
43
+ csc = Rubicant::Runners::CscRunner.new
44
+ csc.settings[:references] = [foo, bar]
45
+ csc.run
46
+ end
47
+
48
+ def test_should_call_csc_with_out_parameter
49
+ out = "outfile.dll"
50
+
51
+ @mock_file.expects(:puts).with(" /out:#{out}")
52
+ csc = Rubicant::Runners::CscRunner.new
53
+ csc.settings[:out] = out
54
+ csc.run
55
+ end
56
+
57
+ def test_should_call_csc_with_files
58
+ foo = 'foo.cs'
59
+ bar = 'bar.cs'
60
+ @mock_file.expects(:puts).with(" #{foo} #{bar}")
61
+ csc = Rubicant::Runners::CscRunner.new
62
+ csc.settings[:files] = [foo, bar]
63
+ csc.run
64
+ end
65
+
66
+ def test_should_call_csc_with_debug
67
+
68
+ @mock_file.expects(:puts).with(" /debug:full")
69
+ csc = Rubicant::Runners::CscRunner.new
70
+ csc.settings[:debug] = true
71
+ csc.run
72
+ end
73
+
74
+ end
75
+
@@ -104,7 +104,7 @@ class WhenCallingMsBuildRunner < Test::Unit::TestCase
104
104
  end
105
105
 
106
106
  def test_should_set_properties
107
- properties = { :key1 => "val1", :key2 => "val2"}
107
+ properties = { 'key1' => "val1", 'key2' => "val2"}
108
108
  @mock_file.expects(:puts).with(" /property:key1=val1;key2=val2")
109
109
 
110
110
  msb = Rubicant::Runners::MsBuildRunner.new
@@ -181,7 +181,7 @@ class WhenCallingMsBuildRunner < Test::Unit::TestCase
181
181
  end
182
182
 
183
183
  def test_should_set_file_logger_parameters
184
- file_logger_parameters = { :key1 => "val1", :key2 => "val2"}
184
+ file_logger_parameters = { 'key1' => "val1", 'key2' => "val2"}
185
185
  @mock_file.expects(:puts).with(" /fileloggerparameters:key1=val1;key2=val2")
186
186
 
187
187
  msb = Rubicant::Runners::MsBuildRunner.new
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mendicantx-rubicant
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.4
4
+ version: 0.0.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - mendicant