geordi 6.0.0 → 6.0.1

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
  SHA256:
3
- metadata.gz: 972d947bfb273cec9f5bb3a586ab1ead5021b63466b4322a42b047947c846c45
4
- data.tar.gz: fd796ff8f25567d340e24012929ffda3a54eafba1f3b98c718ccdfab4c7b213b
3
+ metadata.gz: 57407a29854dbd2b1b1d854d652377db25791fd36353cfdcbd56a2dfbddb5a1d
4
+ data.tar.gz: 27f83bb707fc85575e348b6f83ce74b86baffe1d224a6fe3794ee19a3ed7ff00
5
5
  SHA512:
6
- metadata.gz: 889947c5d0139c9cc1fe4b7cc95ae7b08e83a0966696fce6e800db777c214544a6b8879b478e2999073c863405ff8e98a33c15ec4ad5ac73c92ab35f6084d1ae
7
- data.tar.gz: c2771b0ca090e9d68557a6f8e9e1539a7b573f78caa7f66e6bdecc441710a4617fe390735a8f0b97304d10b5583d85b63dec13e7a0d74df421d41820262cd604
6
+ metadata.gz: 6e3cfe2af06cde2485cd95d1e2b48743bc37e7b7987bf5f1f337d60f919de6014c719d472875940c8f8b5b53da1453e0e7f923e28e1b31d671c4a105531f3f78
7
+ data.tar.gz: 49317f106b384e010f9c7854691f298f9e8909531c956a3a57989d496bb9cc324c9ed388818697d0ca55f8522b2c3ae7af369c774d854049e0b5ed7fd157c8a3
data/CHANGELOG.md CHANGED
@@ -6,19 +6,31 @@ This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html
6
6
  ## Unreleased
7
7
 
8
8
  ### Compatible changes
9
- * Removed support for serial execution of scenarios tagged with @solo.
10
-
11
9
  ### Breaking changes
12
10
 
13
- ## 6.0.0 2021-04-06
11
+
12
+ ## 6.1.0 2021-07-15
13
+
14
+ ### Compatible changes
15
+ * Improve parsing of Capistrano files ([#162](https://github.com/makandra/geordi/issues/162))
16
+ * `geordi tests` now takes test files as arguments and passes them to either RSpec or Cucumber ([#152](https://github.com/makandra/geordi/issues/152))
17
+
18
+
19
+ ## 6.0.0 2021-06-02
14
20
 
15
21
  ### Compatible changes
16
22
  * `geordi commit` will continue even if one of the given projects is inaccessible. It will only fail if no stories could be found at all.
17
23
 
18
24
  ### Breaking changes
19
- * Removed VNC test browser support for integration tests.
25
+ * Removed VNC test browser support for integration tests – Headless Chrome has
26
+ matured and is almost a drop-in replacement. Also, key binding issues have
27
+ increased with VNC and recent Linux.
20
28
  * Please use a headless Chrome setup <https://makandracards.com/makandra/492109-capybara-running-tests-with-headless-chrome>.
21
29
  * You might also want to get rid of your local VNC server `sudo apt remove tightvncserver`.
30
+ * Removed support for serial execution of scenarios tagged with @solo. Serial
31
+ execution is not needed with Headless Chrome, as Headless instances cannot
32
+ interfere (like, stealing focus).
33
+
22
34
 
23
35
  ## 5.4.0 2021-02-01
24
36
 
data/Gemfile CHANGED
@@ -9,5 +9,5 @@ gem 'rspec'
9
9
  gem 'highline'
10
10
  gem 'parallel_tests'
11
11
  gem 'launchy'
12
- gem 'pry'
12
+ gem 'byebug'
13
13
  gem 'tracker_api'
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- geordi (6.0.0)
4
+ geordi (6.0.1)
5
5
  thor (~> 1)
6
6
 
7
7
  GEM
@@ -22,9 +22,9 @@ GEM
22
22
  thread_safe (~> 0.3, >= 0.3.1)
23
23
  backports (3.18.2)
24
24
  builder (3.2.4)
25
+ byebug (10.0.2)
25
26
  childprocess (1.0.1)
26
27
  rake (< 13.0)
27
- coderay (1.1.3)
28
28
  coercible (1.0.0)
29
29
  descendants_tracker (~> 0.0.1)
30
30
  contracts (0.16.0)
@@ -61,7 +61,6 @@ GEM
61
61
  ice_nine (0.11.2)
62
62
  launchy (2.4.3)
63
63
  addressable (~> 2.3)
64
- method_source (1.0.0)
65
64
  mimemagic (0.3.9)
66
65
  nokogiri (~> 1)
67
66
  rake
@@ -74,9 +73,6 @@ GEM
74
73
  parallel (1.19.2)
75
74
  parallel_tests (2.32.0)
76
75
  parallel
77
- pry (0.13.1)
78
- coderay (~> 1.1)
79
- method_source (~> 1.0)
80
76
  public_suffix (3.1.1)
81
77
  rake (12.3.3)
82
78
  representable (3.0.4)
@@ -120,11 +116,11 @@ PLATFORMS
120
116
 
121
117
  DEPENDENCIES
122
118
  aruba (< 1)
119
+ byebug
123
120
  geordi!
124
121
  highline
125
122
  launchy
126
123
  parallel_tests
127
- pry
128
124
  rake (< 13)
129
125
  rspec
130
126
  tracker_api
data/README.md CHANGED
@@ -342,9 +342,15 @@ servers. When passed a number, directly connects to the selected server.
342
342
  - `-s, [--select-server=[SERVER_NUMBER]]`: Select a server to connect to
343
343
 
344
344
 
345
- ### `geordi tests`
345
+ ### `geordi tests [FILES]`
346
346
  Run all employed tests.
347
347
 
348
+ When running `geordi tests` without any arguments, all unit tests, rspec specs
349
+ and cucumber features will be run.
350
+
351
+ When passing arguments, Geordi will forward them to either `rspec` or `cucumber`,
352
+ depending on what the first argument indicates.
353
+
348
354
 
349
355
  ### `geordi unit`
350
356
  Run Test::Unit.
@@ -11,7 +11,7 @@ module Geordi
11
11
 
12
12
  def user(server)
13
13
  cap2user = deploy_info[/^\s*set\s*:user,\s*['"](.*?)['"]/, 1]
14
- cap2user || deploy_info[/^\s*server\s*['"]#{server}['"],.*user.{1,4}['"](.*?)['"]/m, 1]
14
+ cap2user || deploy_info[/^\s*server\s*['"]#{server}['"],.*user.{1,4}['"](.*?)['"]/, 1]
15
15
  end
16
16
 
17
17
  def servers
@@ -42,14 +42,23 @@ module Geordi
42
42
  attr_accessor :deploy_info, :stage
43
43
 
44
44
  def load_deploy_info
45
+ lines = []
45
46
  self.deploy_info = ''
46
47
 
47
48
  if stage
48
- deploy_info << File.read(File.join(root, "config/deploy/#{stage}.rb"))
49
- deploy_info << "\n"
49
+ lines += File.readlines(File.join(root, "config/deploy/#{stage}.rb"))
50
50
  end
51
51
 
52
- deploy_info << File.read(File.join(root, 'config/deploy.rb'))
52
+ lines += File.readlines(File.join(root, 'config/deploy.rb'))
53
+
54
+ lines.each do |line|
55
+ next if line =~ /^\s*#/ # Omit comment lines
56
+ line.chomp! if line =~ /[\\,]\s*$/ # Join wrapped lines
57
+
58
+ deploy_info << line
59
+ end
60
+
61
+ deploy_info
53
62
  end
54
63
 
55
64
  def find_project_root!
@@ -1,14 +1,38 @@
1
- desc 'tests', 'Run all employed tests'
2
- def tests
3
- rake_result = invoke_geordi 'with_rake'
4
-
5
- # Since `rake` usually is configured to run all tests, only run them if `rake`
6
- # did not perform
7
- if rake_result == :did_not_perform
8
- invoke_geordi 'unit'
9
- invoke_geordi 'rspec'
10
- invoke_geordi 'cucumber'
11
- end
1
+ desc 'tests [FILES]', 'Run all employed tests'
2
+ long_desc <<-LONGDESC
3
+ When running `geordi tests` without any arguments, all unit tests, rspec specs
4
+ and cucumber features will be run.
5
+
6
+ When passing arguments, Geordi will forward them to either `rspec` or `cucumber`,
7
+ depending on what the first argument indicates.
8
+ LONGDESC
9
+
10
+ def tests(*args)
11
+ if args.any?
12
+ args, opts = Thor::Options.split(args)
13
+ error_message = "When passing arguments, the first argument must be either an RSpec or a Cucumber path."
14
+
15
+ if args.empty?
16
+ Interaction.fail error_message
17
+ elsif args.first.start_with? 'spec'
18
+ invoke 'rspec', args, opts
19
+ elsif args.first.start_with? 'features'
20
+ invoke 'cucumber', args, opts
21
+ else
22
+ Interaction.fail error_message
23
+ end
12
24
 
13
- Interaction.success 'Successfully ran tests.'
25
+ else
26
+ rake_result = invoke_geordi 'with_rake'
27
+
28
+ # Since `rake` usually is configured to run all tests, only run them if `rake`
29
+ # did not perform
30
+ if rake_result == :did_not_perform
31
+ invoke_geordi 'unit'
32
+ invoke_geordi 'rspec'
33
+ invoke_geordi 'cucumber'
34
+ end
35
+
36
+ Interaction.success 'Successfully ran tests.'
37
+ end
14
38
  end
@@ -1,3 +1,3 @@
1
1
  module Geordi
2
- VERSION = '6.0.0'.freeze
2
+ VERSION = '6.0.1'.freeze
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: geordi
3
3
  version: !ruby/object:Gem::Version
4
- version: 6.0.0
4
+ version: 6.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Henning Koch
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2021-06-02 00:00:00.000000000 Z
11
+ date: 2021-07-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: thor
@@ -102,7 +102,7 @@ metadata: {}
102
102
  post_install_message: 'Support for sequential running of integration tests tagged
103
103
  with @solo has been dropped.
104
104
 
105
- '
105
+ '
106
106
  rdoc_options: []
107
107
  require_paths:
108
108
  - lib