learn-test 2.1.1 → 2.1.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 4d8e6eb7a48f5fe1b9c4506cd41db28f23ca8a09
4
- data.tar.gz: 8b43a51699975858494ef64ef0a282e4422ccb31
3
+ metadata.gz: 22f9cd2d94ca4a2c6ec3873b0f7d987d97b1b999
4
+ data.tar.gz: 6229e931abeff21fa587d6a7aa2b5d7e50cff20f
5
5
  SHA512:
6
- metadata.gz: 180f0bf382c18299922e7797e6b63c27d0a919619ad8da028ae481dc2bec04aeb9cea14677fd85b22eb2d9fdab42da225fd5b9821c7b816d587a4423c1b1d610
7
- data.tar.gz: f5874d0523b0a31bfdf2326ed5972e4d675b6e833bbef53213f5d523225e59b825edc135214c65caaf45d6a69dde8e478988c66cd56f27d4ef30a3694ae59841
6
+ metadata.gz: 9dca729a3f59d934e3aa3fc37db8518e053398badaf08510eb6c8207fe984fc40612825af4971ba4394092520c7c6c5dd569169cf3cff58c48eba46089f9a2ae
7
+ data.tar.gz: 26b739b566f583226ca98e917442c3dda8b400a5796a89ffdc8f807f897327b45a3661ea3b51c93360237033d7d46da20c634bf7a687e39559d7f154b8ff7bc2
data/learn-test.gemspec CHANGED
@@ -27,5 +27,8 @@ Gem::Specification.new do |spec|
27
27
  spec.add_runtime_dependency "crack"
28
28
  spec.add_runtime_dependency "jasmine"
29
29
  spec.add_runtime_dependency "colorize"
30
+ spec.add_runtime_dependency "webrick", "~> 1.3.1"
31
+ spec.add_runtime_dependency "rainbow", "= 1.99.2"
32
+ spec.add_runtime_dependency "selenium-webdriver", "~> 2.52.0"
30
33
  end
31
34
 
@@ -21,6 +21,11 @@ module LearnTest
21
21
  end
22
22
  end
23
23
 
24
+ def die(message)
25
+ puts message
26
+ exit
27
+ end
28
+
24
29
  private
25
30
 
26
31
  def brew_installed?
@@ -0,0 +1,26 @@
1
+ require 'selenium-webdriver'
2
+
3
+ module LearnTest
4
+ module Dependencies
5
+ class Firefox < LearnTest::Dependency
6
+ def missing?
7
+ begin
8
+ Selenium::WebDriver::Firefox::Binary.path
9
+
10
+ false
11
+ rescue Selenium::WebDriver::Error::WebDriverError
12
+ true
13
+ end
14
+ end
15
+
16
+ def install
17
+ die('Please download and install Firefox: https://www.mozilla.org/en-US/firefox'.red)
18
+ end
19
+
20
+ def die(message)
21
+ puts message
22
+ exit
23
+ end
24
+ end
25
+ end
26
+ end
@@ -0,0 +1,14 @@
1
+ module LearnTest
2
+ module Dependencies
3
+ class GreenOnion < LearnTest::Dependency
4
+ def missing?
5
+ `gem list | grep green_onion`.empty?
6
+ end
7
+
8
+ def install
9
+ print_installing('green_onion')
10
+ run_install('gem install green_onion -v 0.1.4')
11
+ end
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,30 @@
1
+ module LearnTest
2
+ module Dependencies
3
+ class Imagemagick < LearnTest::Dependency
4
+ def missing?
5
+ if win?
6
+ convert = `where convert`
7
+ else
8
+ convert = `which convert`
9
+ end
10
+
11
+ convert.empty? || convert.match(/not found/i)
12
+ end
13
+
14
+ def install
15
+ if win?
16
+ brew = false
17
+ else
18
+ brew = `which brew`
19
+ end
20
+
21
+ if brew.empty? || brew.match(/not found/i)
22
+ die('Please install ImageMagick'.red)
23
+ else
24
+ print_installing('ImageMagick')
25
+ run_install('brew install imagemagick')
26
+ end
27
+ end
28
+ end
29
+ end
30
+ end
@@ -12,6 +12,11 @@ module LearnTest
12
12
  def install
13
13
  die('Please install Java')
14
14
  end
15
+
16
+ def die(message)
17
+ puts message
18
+ exit
19
+ end
15
20
  end
16
21
  end
17
22
  end
@@ -0,0 +1,35 @@
1
+ module LearnTest
2
+ module Dependencies
3
+ class SeleniumServer < LearnTest::Dependency
4
+ def missing?
5
+ if win?
6
+ selenium = `where selenium-server`
7
+ else
8
+ selenium = `which selenium-server`
9
+ end
10
+
11
+ selenium.empty? || selenium.match(/not found/i)
12
+ end
13
+
14
+ def install
15
+ if win?
16
+ brew = false
17
+ else
18
+ brew = `which brew`
19
+ end
20
+
21
+ if brew.empty? || brew.match(/not found/i)
22
+ die('Please install Selenium Server Standalone'.red)
23
+ else
24
+ print_installing('Selenium Server Standalone')
25
+ run_install('brew install selenium-server-standalone')
26
+ end
27
+ end
28
+
29
+ def die(message)
30
+ puts message
31
+ exit
32
+ end
33
+ end
34
+ end
35
+ end
@@ -42,6 +42,7 @@ module LearnTest
42
42
  def strategies
43
43
  [
44
44
  LearnTest::Strategies::Jasmine,
45
+ LearnTest::Strategies::GreenOnion,
45
46
  LearnTest::Strategies::Rspec,
46
47
  LearnTest::Strategies::Karma,
47
48
  LearnTest::Strategies::Protractor,
@@ -0,0 +1,57 @@
1
+ module LearnTest
2
+ module Strategies
3
+ class GreenOnion < LearnTest::Strategy
4
+ attr_reader :rspec_runner
5
+
6
+ def initialize(runner)
7
+ @rspec_runner = Strategies::Rspec.new(runner)
8
+ super
9
+ end
10
+
11
+ def service_endpoint
12
+ '/e/flatiron_rspec'
13
+ end
14
+
15
+ def detect
16
+ runner.files.include?('.learn') && green_onion_lab?
17
+ end
18
+
19
+ def configure
20
+ rspec_runner.configure
21
+ end
22
+
23
+ def check_dependencies
24
+ Dependencies::Imagemagick.new.execute
25
+ Dependencies::SeleniumServer.new.execute
26
+ Dependencies::GreenOnion.new.execute
27
+ Dependencies::Firefox.new.execute
28
+ end
29
+
30
+ def run
31
+ rspec_runner.run
32
+ end
33
+
34
+ def output
35
+ rspec_runner.output
36
+ end
37
+
38
+ def results
39
+ rspec_runner.results
40
+ end
41
+
42
+ def cleanup
43
+ rspec_runner.cleanup
44
+ end
45
+
46
+ private
47
+
48
+ def green_onion_lab?
49
+ yaml['tests'] && yaml['tests'].include?('green_onion')
50
+ end
51
+
52
+ def yaml
53
+ @yaml ||= YAML.load(File.read('.learn'))
54
+ end
55
+ end
56
+ end
57
+ end
@@ -1,3 +1,3 @@
1
1
  module LearnTest
2
- VERSION = '2.1.1'
2
+ VERSION = '2.1.2'
3
3
  end
data/lib/learn_test.rb CHANGED
@@ -19,6 +19,10 @@ require_relative 'learn_test/dependencies/karma'
19
19
  require_relative 'learn_test/dependencies/protractor'
20
20
  require_relative 'learn_test/dependencies/java'
21
21
  require_relative 'learn_test/dependencies/ant'
22
+ require_relative 'learn_test/dependencies/imagemagick'
23
+ require_relative 'learn_test/dependencies/selenium_server'
24
+ require_relative 'learn_test/dependencies/firefox'
25
+ require_relative 'learn_test/dependencies/green_onion'
22
26
 
23
27
  require_relative 'learn_test/strategy'
24
28
  require_relative 'learn_test/strategies/jasmine'
@@ -28,6 +32,7 @@ require_relative 'learn_test/strategies/karma'
28
32
  require_relative 'learn_test/strategies/protractor'
29
33
  require_relative 'learn_test/strategies/java_junit'
30
34
  require_relative 'learn_test/strategies/mocha'
35
+ require_relative 'learn_test/strategies/green_onion'
31
36
 
32
37
  module LearnTest
33
38
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: learn-test
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.1.1
4
+ version: 2.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Flatiron School
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-03-11 00:00:00.000000000 Z
11
+ date: 2016-03-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -150,6 +150,48 @@ dependencies:
150
150
  - - ">="
151
151
  - !ruby/object:Gem::Version
152
152
  version: '0'
153
+ - !ruby/object:Gem::Dependency
154
+ name: webrick
155
+ requirement: !ruby/object:Gem::Requirement
156
+ requirements:
157
+ - - "~>"
158
+ - !ruby/object:Gem::Version
159
+ version: 1.3.1
160
+ type: :runtime
161
+ prerelease: false
162
+ version_requirements: !ruby/object:Gem::Requirement
163
+ requirements:
164
+ - - "~>"
165
+ - !ruby/object:Gem::Version
166
+ version: 1.3.1
167
+ - !ruby/object:Gem::Dependency
168
+ name: rainbow
169
+ requirement: !ruby/object:Gem::Requirement
170
+ requirements:
171
+ - - '='
172
+ - !ruby/object:Gem::Version
173
+ version: 1.99.2
174
+ type: :runtime
175
+ prerelease: false
176
+ version_requirements: !ruby/object:Gem::Requirement
177
+ requirements:
178
+ - - '='
179
+ - !ruby/object:Gem::Version
180
+ version: 1.99.2
181
+ - !ruby/object:Gem::Dependency
182
+ name: selenium-webdriver
183
+ requirement: !ruby/object:Gem::Requirement
184
+ requirements:
185
+ - - "~>"
186
+ - !ruby/object:Gem::Version
187
+ version: 2.52.0
188
+ type: :runtime
189
+ prerelease: false
190
+ version_requirements: !ruby/object:Gem::Requirement
191
+ requirements:
192
+ - - "~>"
193
+ - !ruby/object:Gem::Version
194
+ version: 2.52.0
153
195
  description:
154
196
  email:
155
197
  - learn@flatironschool.com
@@ -168,17 +210,22 @@ files:
168
210
  - learn-test.gemspec
169
211
  - lib/learn_test.rb
170
212
  - lib/learn_test/dependencies/ant.rb
213
+ - lib/learn_test/dependencies/firefox.rb
214
+ - lib/learn_test/dependencies/green_onion.rb
215
+ - lib/learn_test/dependencies/imagemagick.rb
171
216
  - lib/learn_test/dependencies/java.rb
172
217
  - lib/learn_test/dependencies/karma.rb
173
218
  - lib/learn_test/dependencies/nodejs.rb
174
219
  - lib/learn_test/dependencies/phantomjs.rb
175
220
  - lib/learn_test/dependencies/protractor.rb
221
+ - lib/learn_test/dependencies/selenium_server.rb
176
222
  - lib/learn_test/dependency.rb
177
223
  - lib/learn_test/file_finder.rb
178
224
  - lib/learn_test/github_interactor.rb
179
225
  - lib/learn_test/netrc_interactor.rb
180
226
  - lib/learn_test/repo_parser.rb
181
227
  - lib/learn_test/runner.rb
228
+ - lib/learn_test/strategies/green_onion.rb
182
229
  - lib/learn_test/strategies/jasmine.rb
183
230
  - lib/learn_test/strategies/jasmine/boot.js
184
231
  - lib/learn_test/strategies/jasmine/console.js
@@ -249,7 +296,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
249
296
  version: '0'
250
297
  requirements: []
251
298
  rubyforge_project:
252
- rubygems_version: 2.4.5
299
+ rubygems_version: 2.4.8
253
300
  signing_key:
254
301
  specification_version: 4
255
302
  summary: Runs RSpec, Jasmine, and Python Unit Test builds and pushes JSON output to
@@ -266,4 +313,3 @@ test_files:
266
313
  - spec/fixtures/rspec-unit-spec/spec/spec_helper.rb
267
314
  - spec/repo_parser_spec.rb
268
315
  - spec/spec_helper.rb
269
- has_rdoc: