albacore 0.2.6 → 0.2.7

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.
Files changed (46) hide show
  1. data/Gemfile +7 -7
  2. data/README.markdown +0 -33
  3. data/VERSION +1 -1
  4. metadata +84 -91
  5. data/spec/albacoremodel_spec.rb +0 -53
  6. data/spec/assemblyinfo_spec.rb +0 -541
  7. data/spec/attrmethods_spec.rb +0 -136
  8. data/spec/config_spec.rb +0 -34
  9. data/spec/createtask_spec.rb +0 -236
  10. data/spec/csc_spec.rb +0 -253
  11. data/spec/docu_spec.rb +0 -109
  12. data/spec/exec_spec.rb +0 -45
  13. data/spec/fluentmigratorrunner_spec.rb +0 -254
  14. data/spec/msbuild_spec.rb +0 -215
  15. data/spec/mspec_spec.rb +0 -28
  16. data/spec/mstesttestrunner_spec.rb +0 -142
  17. data/spec/nant_spec.rb +0 -110
  18. data/spec/nchurn_spec.rb +0 -75
  19. data/spec/ncoverconsole_spec.rb +0 -353
  20. data/spec/ncoverreport_spec.rb +0 -619
  21. data/spec/ndepend_spec.rb +0 -72
  22. data/spec/nunittestrunner_spec.rb +0 -122
  23. data/spec/nuspec_spec.rb +0 -78
  24. data/spec/output_spec.rb +0 -117
  25. data/spec/patches/docu_patch.rb +0 -13
  26. data/spec/patches/fail_patch.rb +0 -9
  27. data/spec/patches/system_patch.rb +0 -20
  28. data/spec/plink_spec.rb +0 -62
  29. data/spec/runcommand_spec.rb +0 -94
  30. data/spec/spec_helper.rb +0 -17
  31. data/spec/specflowreport_spec.rb +0 -146
  32. data/spec/sqlcmd_spec.rb +0 -334
  33. data/spec/support/assemblyinfotester.rb +0 -51
  34. data/spec/support/ironruby_validator.rb +0 -26
  35. data/spec/support/msbuildtestdata.rb +0 -32
  36. data/spec/support/nanttestdata.rb +0 -33
  37. data/spec/support/ncoverconsoletestdata.rb +0 -20
  38. data/spec/support/ncoverreporttestdata.rb +0 -26
  39. data/spec/support/nokogiri_validator.rb +0 -15
  40. data/spec/support/outputtestdata.rb +0 -13
  41. data/spec/support/ziptestdata.rb +0 -13
  42. data/spec/unzip_spec.rb +0 -15
  43. data/spec/xbuild_spec.rb +0 -15
  44. data/spec/xunit_spec.rb +0 -168
  45. data/spec/yamlconfig_spec.rb +0 -49
  46. data/spec/zip_spec.rb +0 -104
@@ -1,51 +0,0 @@
1
- require 'albacore/assemblyinfo'
2
-
3
- class AssemblyInfoTester < AssemblyInfo
4
-
5
- attr_accessor :assemblyinfo_file
6
-
7
- def initialize(lang_engine = nil)
8
- @version = "0.0.0.1"
9
- @title = "some assembly title"
10
- @description = "some assembly description goes here."
11
- @copyright = "some copyright info goes here"
12
- @com_visible = false
13
- @com_guid = "dbabb27c-a536-4b5b-91f1-2226b6e3655c"
14
- @company_name = "some company name"
15
- @product_name = "my product, yo."
16
- @file_version = "1.0.0.0"
17
- @trademark = "some trademark info goes here"
18
-
19
- @input_file = nil
20
- end
21
-
22
- def setup_assemblyinfo_file
23
- @lang_engine = CSharpEngine.new unless check_lang_engine
24
-
25
- @assemblyinfo_file = File.join(File.dirname(__FILE__), "AssemblyInfo", "AssemblyInfo.test")
26
- File.delete @assemblyinfo_file if File.exist? @assemblyinfo_file
27
- end
28
-
29
- def use_input_file
30
- @input_file = File.join(File.dirname(__FILE__), "AssemblyInfo", "AssemblyInfoInput.test")
31
- end
32
-
33
- def build_and_read_assemblyinfo_file(assemblyinfo)
34
- setup_assemblyinfo_file
35
-
36
- assemblyinfo.input_file = @input_file unless @input_file.nil?
37
- assemblyinfo.output_file = @assemblyinfo_file
38
- assemblyinfo.execute
39
-
40
- contents = ''
41
- File.open(@assemblyinfo_file, "r") do |f|
42
- contents = f.read
43
- end
44
- contents
45
- end
46
-
47
- def yaml_file
48
- return File.join(File.dirname(__FILE__), "AssemblyInfo", "assemblyinfo.yml")
49
- end
50
-
51
- end
@@ -1,26 +0,0 @@
1
- class XmlValidator
2
- require 'System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'
3
- require 'System.Xml, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'
4
-
5
- include System::Xml
6
- include System::Xml::Schema
7
-
8
- def self.validate(xml_file, xsd_file)
9
- xml = File.read(xml_file)
10
-
11
- settings = XmlReaderSettings.new
12
- settings.validation_type = ValidationType.Schema;
13
- settings.schemas.add(nil, xsd_file)
14
-
15
- is_valid = true
16
- settings.validation_event_handler { |s, e|
17
- is_valid = false if e.severity == XmlSeverityType.error
18
- }
19
-
20
- reader = XmlReader.create(System::IO::StringReader.new(xml), settings)
21
- while reader.read
22
- end
23
-
24
- return is_valid
25
- end
26
- end
@@ -1,32 +0,0 @@
1
- require 'albacore/msbuild'
2
-
3
- class MSBuildTestData
4
-
5
- attr_accessor :msbuild_path, :solution_path, :config_mode, :output_path
6
-
7
- def initialize(config_mode='Debug')
8
- @solution_path = File.join(File.dirname(__FILE__), "../", "support", "TestSolution", "TestSolution.sln")
9
- @msbuild_path = "C:\\Windows/Microsoft.NET/Framework/v4.0.30319/MSBuild.exe"
10
- @config_mode = config_mode
11
-
12
- setup_output
13
- end
14
-
15
- def setup_output
16
- @output_path = File.join(File.dirname(__FILE__), "../", "support", "TestSolution", "TestSolution", "bin", "#{@config_mode}", "TestSolution.dll")
17
- File.delete @output_path if File.exist? @output_path
18
- end
19
-
20
- def msbuild(path_to_msbuild=nil)
21
- @msbuild = MSBuild.new
22
-
23
- if (path_to_msbuild)
24
- @msbuild_path = path_to_msbuild
25
- @msbuild.command = path_to_msbuild
26
- end
27
-
28
- @msbuild.extend(SystemPatch)
29
- @msbuild
30
- end
31
-
32
- end
@@ -1,33 +0,0 @@
1
- require 'albacore/nant'
2
-
3
- class NAntTestData
4
-
5
- attr_accessor :nant_path, :build_file_path, :output_path
6
-
7
- def initialize(config_mode='Debug',version='0.0.1')
8
- @config_mode = config_mode
9
- @version = version
10
-
11
- @nant_path = File.join(File.dirname(__FILE__), "Tools", "NAnt-0.85", "bin", "NAnt.exe")
12
- @build_file_path = File.join(File.dirname(__FILE__), "TestSolution", "TestSolution.build")
13
- setup_output
14
- end
15
-
16
- def setup_output
17
- @output_root = File.join(File.dirname(__FILE__), "TestSolution", "out")
18
- @output_path = File.join(@output_root, "#{@version}", "#{@config_mode}")
19
- clean_output
20
- end
21
-
22
- def clean_output
23
- FileUtils.rm_rf @output_root
24
- end
25
-
26
- def nant
27
- @nant = NAnt.new
28
-
29
- @nant.extend(SystemPatch)
30
- @nant
31
- end
32
-
33
- end
@@ -1,20 +0,0 @@
1
- class NCoverConsoleTestData
2
- attr_accessor :ncoverpath, :nunitpath, :xml_coverage_output, :html_coverage_output, :working_directory
3
- attr_accessor :test_assembly, :failing_test_assembly, :mspecpath, :mspec_html_output, :mspec_test_assembly
4
- attr_accessor :test_assembly_with_spaces
5
-
6
- def initialize
7
- @ncoverpath = File.join(File.dirname(__FILE__), '..', 'support', 'Tools', 'NCover-v3.3', 'NCover.Console.exe')
8
- @nunitpath = File.join(File.dirname(__FILE__), '..', 'support', 'Tools', 'NUnit-v2.5', 'nunit-console-x86.exe')
9
- @xml_coverage_output = File.join(File.expand_path(File.dirname(__FILE__)), '..', 'support', 'CodeCoverage', 'nunit', 'test-coverage.xml')
10
- @html_coverage_output = File.join(File.expand_path(File.dirname(__FILE__)), '..', 'support', 'CodeCoverage', 'nunit', 'html', 'test-coverage.html')
11
- @working_directory = File.join(File.expand_path(File.dirname(__FILE__)), '..', 'support', 'CodeCoverage', 'nunit')
12
- @test_assembly = File.join(File.expand_path(File.dirname(__FILE__)), '..', 'support', 'CodeCoverage', 'nunit', 'assemblies', 'TestSolution.Tests.dll')
13
- @test_assembly_with_spaces = File.join(File.expand_path(File.dirname(__FILE__)), '..', 'support', 'CodeCoverage', 'nunit', 'assemblies/with spaces/', 'TestSolution.Tests.dll')
14
- @failing_test_assembly = File.join(File.expand_path(File.dirname(__FILE__)), '..', 'support', 'CodeCoverage', 'nunit', 'failing_assemblies', 'TestSolution.FailingTests.dll')
15
-
16
- @mspecpath = File.join(File.dirname(__FILE__), '..', 'support', 'Tools', 'Machine.Specification-v0.2', 'Machine.Specifications.ConsoleRunner.exe')
17
- @mspec_html_output = File.join(File.expand_path(File.dirname(__FILE__)), '..', 'support', 'CodeCoverage', 'mspec', 'html')
18
- @mspec_test_assembly = File.join(File.expand_path(File.dirname(__FILE__)), '..', 'support', 'CodeCoverage', 'mspec', 'assemblies', 'TestSolution.MSpecTests.dll')
19
- end
20
- end
@@ -1,26 +0,0 @@
1
- class NCoverReportTestData
2
- @filedir = File.dirname(__FILE__)
3
- @output_folder = File.expand_path(File.join(@filedir, "CodeCoverage", "report", "output"))
4
-
5
- def self.command
6
- File.expand_path(File.join(@filedir, "Tools", "NCover-v3.3", "NCover.Reporting.exe"))
7
- end
8
-
9
- def self.coverage_file
10
- File.expand_path(File.join(@filedir, "CodeCoverage", "report", "coverage.xml"))
11
- end
12
-
13
- def self.output_folder
14
- @output_folder
15
- end
16
-
17
- def self.clean_output_folder
18
- FileUtils.rmtree(@output_folder)
19
- Dir.mkdir(@output_folder) unless File.exist?(@output_folder)
20
- sleep(3) # this is a hack to work around the slow hard drive in my laptop, which caused failing tests w/ write-through-cache.
21
- end
22
-
23
- def self.summary_output_file
24
- File.join(NCoverReportTestData.output_folder, "summary.html")
25
- end
26
- end
@@ -1,15 +0,0 @@
1
- require 'nokogiri'
2
-
3
- class XmlValidator
4
- def self.validate(xml_file, schema_file)
5
- schema = Nokogiri::XML::Schema(File.read(schema_file))
6
- doc = Nokogiri::XML::Document.parse(File.read(xml_file))
7
-
8
- validation = schema.validate(doc)
9
- validation.each do |error|
10
- raise error.message
11
- end
12
-
13
- return validation.length == 0
14
- end
15
- end
@@ -1,13 +0,0 @@
1
- class OutputTestData
2
-
3
- @@from = File.expand_path(File.join(File.dirname(__FILE__), 'src'))
4
- @@to = File.expand_path(File.join(File.dirname(__FILE__), 'out'))
5
-
6
- def self.from
7
- @@from
8
- end
9
-
10
- def self.to
11
- @@to
12
- end
13
- end
@@ -1,13 +0,0 @@
1
- class ZipTestData
2
-
3
- @@folder = File.expand_path(File.join(File.dirname(__FILE__), 'zip'))
4
- @@output_folder = File.expand_path(File.join(File.dirname(__FILE__), 'zip_output'))
5
-
6
- def self.folder
7
- @@folder
8
- end
9
-
10
- def self.output_folder
11
- @@output_folder
12
- end
13
- end
@@ -1,15 +0,0 @@
1
- require 'spec_helper'
2
- require 'albacore/unzip'
3
-
4
- describe Unzip, "when providing configuration" do
5
- let :uz do
6
- Albacore.configure do |config|
7
- config.unzip.file = "configured"
8
- end
9
- uz = Unzip.new
10
- end
11
-
12
- it "should use the configured values" do
13
- uz.file.should == "configured"
14
- end
15
- end
@@ -1,15 +0,0 @@
1
- require 'spec_helper'
2
- require 'albacore/xbuild'
3
-
4
- describe XBuild, "when providing configuration values" do
5
- let :xbuild do
6
- Albacore.configure do |config|
7
- config.xbuild.command = "configured"
8
- end
9
- xbuild = XBuild.new
10
- end
11
-
12
- it "should use the configured values" do
13
- xbuild.command.should == "configured"
14
- end
15
- end
@@ -1,168 +0,0 @@
1
- require 'spec_helper'
2
- require 'albacore/xunittestrunner'
3
-
4
- shared_examples_for "xunit paths" do
5
- before :all do
6
- @xunitpath = File.join(File.dirname(__FILE__), 'support', 'Tools', 'XUnit-v1.5', 'xunit.console.exe')
7
- @test_assembly = File.join(File.expand_path(File.dirname(__FILE__)), 'support', 'CodeCoverage', 'xunit', 'assemblies', 'TestSolution.XUnitTests.dll')
8
- @output_option = "/out=xunit.results.html"
9
- @working_dir =File.join(File.dirname(__FILE__), 'support','xunit')
10
- @html_output = File.join(@working_dir,'TestSolution.XUnitTests.dll.html')
11
- end
12
- end
13
-
14
- describe XUnitTestRunner, "the command parameters for an xunit runner" do
15
- it_should_behave_like "xunit paths"
16
- before :all do
17
- xunit = XUnitTestRunner.new(@xunitpath)
18
- xunit.assembly = @test_assembly
19
- xunit.options @output_option
20
-
21
- @command_parameters = xunit.get_command_parameters
22
- end
23
-
24
- it "should not include the path to the command" do
25
- @command_parameters.should_not include(@xunitpath)
26
- end
27
-
28
- it "should include the list of options" do
29
- @command_parameters.should include(@output_option)
30
- end
31
- end
32
-
33
- describe XUnitTestRunner, "the command line string for an xunit runner" do
34
- it_should_behave_like "xunit paths"
35
- before :all do
36
- xunit = XUnitTestRunner.new(@xunitpath)
37
- xunit.assembly = @test_assembly
38
- xunit.options @output_option
39
-
40
- @command_line = xunit.get_command_line
41
- @command_parameters = xunit.get_command_parameters.join(" ")
42
- end
43
-
44
- it "should start with the path to the command" do
45
- @command_line.split(" ").first.should == @xunitpath
46
- end
47
-
48
- it "should include the command parameters" do
49
- @command_line.should include(@command_parameters)
50
- end
51
- end
52
-
53
- describe XUnitTestRunner, "when configured correctly" do
54
- it_should_behave_like "xunit paths"
55
- before :all do
56
- xunit = XUnitTestRunner.new(@xunitpath)
57
- xunit.assembly = @test_assembly
58
- xunit.options '/noshadow'
59
- xunit.extend(FailPatch)
60
- xunit.log_level = :verbose
61
-
62
- xunit.execute
63
- end
64
-
65
- it "should execute" do
66
- $task_failed.should be_false
67
- end
68
- end
69
-
70
- describe XUnitTestRunner, "when multiple assemblies are passed to xunit runner" do
71
- it_should_behave_like "xunit paths"
72
- before :all do
73
- xunit = XUnitTestRunner.new(@xunitpath)
74
- xunit.assemblies = @test_assembly, @test_assembly
75
- xunit.options '/noshadow'
76
- xunit.extend(FailPatch)
77
- xunit.log_level = :verbose
78
-
79
- xunit.execute
80
- end
81
-
82
- it "should execute" do
83
- $task_failed.should be_false
84
- end
85
- end
86
-
87
- describe XUnitTestRunner, "when zero assemblies are passed to xunit runner" do
88
- it_should_behave_like "xunit paths"
89
- before :all do
90
- xunit = XUnitTestRunner.new(@xunitpath)
91
- xunit.options '/noshadow'
92
- xunit.extend(FailPatch)
93
-
94
- xunit.execute
95
- end
96
-
97
- it "should fail" do
98
- $task_failed.should be_true
99
- end
100
- end
101
-
102
- describe XUnitTestRunner, "when html_output is specified" do
103
- it_should_behave_like "xunit paths"
104
- before :each do
105
- FileUtils.mkdir @working_dir unless File.exist?(@working_dir)
106
- xunit = XUnitTestRunner.new(@xunitpath)
107
- xunit.assembly = @test_assembly
108
- xunit.html_output = File.dirname(@html_output)
109
- xunit.extend(FailPatch)
110
-
111
- xunit.execute
112
- end
113
-
114
- it "should execute" do
115
- $task_failed.should be_false
116
- end
117
-
118
- it "should write output html" do
119
- sleep(2)
120
- File.exist?(@html_output).should be_true
121
- end
122
-
123
- after:each do
124
- FileUtils.rm_r @working_dir if File.exist? @working_dir
125
- end
126
- end
127
-
128
- describe XUnitTestRunner, "when html_output is not a directory" do
129
- it_should_behave_like "xunit paths"
130
- before :each do
131
- FileUtils.mkdir @working_dir unless File.exist?(@working_dir)
132
- strio = StringIO.new
133
- xunit = XUnitTestRunner.new(@xunitpath)
134
- xunit.log_level = :verbose
135
- xunit.log_device = strio
136
- xunit.assembly = @test_assembly
137
- xunit.html_output = @html_output
138
- xunit.extend(FailPatch)
139
-
140
- xunit.execute
141
- @log_data = strio.string
142
- end
143
-
144
- it "should fail" do
145
- $task_failed.should be_true
146
- end
147
-
148
- it "should log a message" do
149
- @log_data.should include('Directory is required for html_output')
150
- end
151
-
152
- after:each do
153
- FileUtils.rm_r @working_dir if File.exist? @working_dir
154
- end
155
- end
156
-
157
- describe XUnitTestRunner, "when providing configuration" do
158
- let :xunit do
159
- Albacore.configure do |config|
160
- config.xunit.command = "configured"
161
- end
162
- xunit = XUnitTestRunner.new
163
- end
164
-
165
- it "should use the configured values" do
166
- xunit.command.should == "configured"
167
- end
168
- end
@@ -1,49 +0,0 @@
1
- require 'spec_helper'
2
- require 'albacore/albacoretask'
3
-
4
- class ::YamlTest
5
- include Albacore::Task
6
- attr_accessor :some_name, :another_name, :a_hash, :what_ever
7
- end
8
-
9
- describe "when configuring with yaml" do
10
- before :all do
11
- @yml = YamlTest.new
12
- @yml.configure File.join(File.dirname(__FILE__), 'support', 'test.yml')
13
- end
14
-
15
- it "should set the value of some_name" do
16
- @yml.some_name.should == "some value"
17
- end
18
-
19
- it "should create and set the value of another_name" do
20
- @yml.another_name.should == "another value"
21
- end
22
-
23
- it "should allow hash tables" do
24
- @yml.a_hash.length.should == 2
25
- @yml.a_hash['name'].should == "value"
26
- @yml.a_hash['foo'].should == "bar"
27
- end
28
-
29
- it "should allow symbols" do
30
- @yml.what_ever.should == :a_symbol
31
- end
32
- end
33
-
34
- describe "when specifying a yaml config folder and configuring" do
35
- class ::YAML_AutoConfig_Test
36
- include Albacore::Task
37
- attr_accessor :some_attribute
38
- end
39
-
40
- before :all do
41
- Albacore.configure.yaml_config_folder = File.join(File.dirname(__FILE__), 'support', 'yamlconfig')
42
- @yamltest = YAML_AutoConfig_Test.new
43
- @yamltest.load_config_by_task_name("yaml_autoconfig_test")
44
- end
45
-
46
- it "should automatically configure the class from the yaml file in the specified folder" do
47
- @yamltest.some_attribute.should == "this value was loaded from a folder, specified by Albacore.configure.yaml_config_folder"
48
- end
49
- end