bozo-scripts 0.16.2 → 0.16.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,15 +1,7 @@
1
1
  ---
2
- !binary "U0hBMQ==":
3
- metadata.gz: !binary |-
4
- OGM5Zjc4ZmY2MDJhZDM3NjJiMDg5ZjcyZGZkZGZhNWQ0ZDQ1NmNkNw==
5
- data.tar.gz: !binary |-
6
- OGNmYzk2N2I1NDlhOWEzMzFjNTIwNGE1ZTM2MTcxNzE0NTAwYWM5Mw==
2
+ SHA1:
3
+ metadata.gz: 0fa74ab1e4ec750e0ffb547ca60ce3e9077be5fa
4
+ data.tar.gz: aa04617af059df6346f5517b1abdefbaa866c050
7
5
  SHA512:
8
- metadata.gz: !binary |-
9
- NDAyM2YyNjUyZjZhMTUxMzEyZGI3NjQ2MjBhYWVjOTZjMGFiNTAwN2I5ZTRm
10
- ZmQ2NTU2MjE2NmMyMjYyMWU2YWZhYjcwMmQ4MmMxYWUyZjc5MjVmODhmNmE4
11
- ZmM5M2EyNTAxYzcwMDM1MTFkMjU4YzcxNmIzZDZkOGMzYTFjMDQ=
12
- data.tar.gz: !binary |-
13
- OGEzMWE5ODIzNzE5NmEzNGU0MTBjMDAyZWY0MGU3ZjI5MWNiN2YwNjZjODVm
14
- YTFlN2VhYzYwMTg1NTU3ODQ0YmU3YWQwMzFkNmQ1MjJiNDU5MzZkZDNmZjQx
15
- YmM2Njc4ZDZmYjJhMzQwYjVmOWI1ZjM5YmNlZjAyYzRkNDU3MjQ=
6
+ metadata.gz: ed3d719987d2c8cedce195be7602fe4dfdd071af8acc64b5d8a1702b4af0a8a91f0ac7a91b06c2b85fcc97b67306eaaab43a02f54103a00e53227a6d374cbc9c
7
+ data.tar.gz: 201b5f297ab98c4cdb2b9a635fcac17596a44276231271e2bc3d71c8f09d208e44da5127b76db3512774af8e803d1b346d434245fffeb7911eabb0b80b40d17e
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.16.2
1
+ 0.16.3
@@ -0,0 +1,99 @@
1
+ module Bozo::TestRunners
2
+
3
+ # A TestRunner for MSpec
4
+ class Mspec
5
+
6
+ def initialize
7
+ @projects = []
8
+ end
9
+
10
+ def platform(platform)
11
+ @platform = platform
12
+ end
13
+
14
+ def project(path)
15
+ @projects << path
16
+ end
17
+
18
+ def report_path(path)
19
+ @report_path = path
20
+ end
21
+
22
+ def agents(agents)
23
+ @agents = agents
24
+ end
25
+
26
+ def to_s
27
+ "Run tests with mspec against projects #{@projects}"
28
+ end
29
+
30
+ # Returns the path to the runner's executable.
31
+ #
32
+ # @returns [String]
33
+ def runner_path
34
+ exe_name = 'mspec-clr4.exe'
35
+
36
+ mspec_runners = expand_and_glob('packages', 'Machine.Specifications*', 'tools', exe_name)
37
+ raise mspec_runner_not_found if mspec_runners.empty?
38
+ raise multiple_runners_found if mspec_runners.size > 1
39
+
40
+ mspec_runner = mspec_runners.first
41
+
42
+ log_debug "Found runner at #{mspec_runner}"
43
+
44
+ mspec_runner
45
+ end
46
+
47
+ # Returns the arguments required for the runner's executable.
48
+ #
49
+ # @returns [Array]
50
+ def runner_args
51
+ args = []
52
+
53
+ @projects.each do |project|
54
+ expand_and_glob('temp', 'msbuild', project, '**', "#{project}.dll").each do |test_dll|
55
+ args << "\"#{test_dll}\""
56
+ end
57
+ end
58
+
59
+ # If @agents is defined and not 0
60
+ if @agents.to_i > 0
61
+ args << "--agents=#{@agents}"
62
+ end
63
+
64
+ report_path = @report_path
65
+ report_path = expand_path('temp', 'mspec', "#{Time.now.to_i}-mspec-report.xml") unless report_path
66
+
67
+ # Ensure the directory is there because mspec won't make it
68
+ FileUtils.mkdir_p File.dirname(report_path)
69
+
70
+ args << "--xml \"#{report_path}\""
71
+
72
+ args
73
+ end
74
+
75
+ def execute
76
+ execute_command :mspec, [runner_path] << runner_args
77
+ end
78
+
79
+ private
80
+
81
+ def mspec_runner_not_found
82
+ Bozo::ConfigurationError.new 'No MSpec runners found. You must install one via nuget.'
83
+ end
84
+
85
+ def multiple_runners_found
86
+ Bozo::ConfigurationError.new 'Multiple MSpec runners found. There should only be one.'
87
+ end
88
+
89
+ def expand_path(*args)
90
+ File.expand_path(File.join(args))
91
+ end
92
+
93
+ def expand_and_glob(*args)
94
+ Dir[expand_path(*args)]
95
+ end
96
+
97
+ end
98
+
99
+ end
data/lib/bozo_scripts.rb CHANGED
@@ -29,6 +29,7 @@ require 'bozo/test_runners/dotcover'
29
29
  require 'bozo/test_runners/opencover'
30
30
  require 'bozo/test_runners/nunit'
31
31
  require 'bozo/test_runners/nunit3'
32
+ require 'bozo/test_runners/mspec'
32
33
  require 'bozo/test_runners/runit'
33
34
  require 'bozo/configuration'
34
35
  require 'bozo/erubis_templating_coordinator'
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bozo-scripts
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.16.2
4
+ version: 0.16.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Garry Shutler
@@ -9,76 +9,76 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2017-01-17 00:00:00.000000000 Z
12
+ date: 2017-03-02 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: nokogiri
16
16
  requirement: !ruby/object:Gem::Requirement
17
17
  requirements:
18
- - - ~>
18
+ - - "~>"
19
19
  - !ruby/object:Gem::Version
20
20
  version: 1.6.7
21
21
  type: :runtime
22
22
  prerelease: false
23
23
  version_requirements: !ruby/object:Gem::Requirement
24
24
  requirements:
25
- - - ~>
25
+ - - "~>"
26
26
  - !ruby/object:Gem::Version
27
27
  version: 1.6.7
28
28
  - !ruby/object:Gem::Dependency
29
29
  name: erubis
30
30
  requirement: !ruby/object:Gem::Requirement
31
31
  requirements:
32
- - - ~>
32
+ - - "~>"
33
33
  - !ruby/object:Gem::Version
34
34
  version: 2.7.0
35
35
  type: :runtime
36
36
  prerelease: false
37
37
  version_requirements: !ruby/object:Gem::Requirement
38
38
  requirements:
39
- - - ~>
39
+ - - "~>"
40
40
  - !ruby/object:Gem::Version
41
41
  version: 2.7.0
42
42
  - !ruby/object:Gem::Dependency
43
43
  name: test-unit
44
44
  requirement: !ruby/object:Gem::Requirement
45
45
  requirements:
46
- - - ~>
46
+ - - "~>"
47
47
  - !ruby/object:Gem::Version
48
48
  version: 2.4.8
49
49
  type: :runtime
50
50
  prerelease: false
51
51
  version_requirements: !ruby/object:Gem::Requirement
52
52
  requirements:
53
- - - ~>
53
+ - - "~>"
54
54
  - !ruby/object:Gem::Version
55
55
  version: 2.4.8
56
56
  - !ruby/object:Gem::Dependency
57
57
  name: bozo
58
58
  requirement: !ruby/object:Gem::Requirement
59
59
  requirements:
60
- - - ~>
60
+ - - "~>"
61
61
  - !ruby/object:Gem::Version
62
62
  version: 0.5.0
63
63
  type: :runtime
64
64
  prerelease: false
65
65
  version_requirements: !ruby/object:Gem::Requirement
66
66
  requirements:
67
- - - ~>
67
+ - - "~>"
68
68
  - !ruby/object:Gem::Version
69
69
  version: 0.5.0
70
70
  - !ruby/object:Gem::Dependency
71
71
  name: zip
72
72
  requirement: !ruby/object:Gem::Requirement
73
73
  requirements:
74
- - - ~>
74
+ - - "~>"
75
75
  - !ruby/object:Gem::Version
76
76
  version: 2.0.2
77
77
  type: :runtime
78
78
  prerelease: false
79
79
  version_requirements: !ruby/object:Gem::Requirement
80
80
  requirements:
81
- - - ~>
81
+ - - "~>"
82
82
  - !ruby/object:Gem::Version
83
83
  version: 2.0.2
84
84
  description: Zopa build system scripts
@@ -115,6 +115,7 @@ files:
115
115
  - lib/bozo/publishers/nuget.rb
116
116
  - lib/bozo/publishers/rubygems.rb
117
117
  - lib/bozo/test_runners/dotcover.rb
118
+ - lib/bozo/test_runners/mspec.rb
118
119
  - lib/bozo/test_runners/nunit.rb
119
120
  - lib/bozo/test_runners/nunit3.rb
120
121
  - lib/bozo/test_runners/opencover.rb
@@ -133,17 +134,17 @@ require_paths:
133
134
  - lib
134
135
  required_ruby_version: !ruby/object:Gem::Requirement
135
136
  requirements:
136
- - - ! '>='
137
+ - - ">="
137
138
  - !ruby/object:Gem::Version
138
139
  version: '0'
139
140
  required_rubygems_version: !ruby/object:Gem::Requirement
140
141
  requirements:
141
- - - ! '>='
142
+ - - ">="
142
143
  - !ruby/object:Gem::Version
143
144
  version: '0'
144
145
  requirements: []
145
146
  rubyforge_project: bozo-scripts
146
- rubygems_version: 2.6.2
147
+ rubygems_version: 2.5.2
147
148
  signing_key:
148
149
  specification_version: 4
149
150
  summary: Zopa build system scripts