learn-test 2.1.1 → 2.1.2

Sign up to get free protection for your applications and to get access to all the features.
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: