spec_tracker 1.2.2 → 1.2.3

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
  SHA256:
3
- metadata.gz: cec58205a9875b8f7cdc29b7f65b16bf7ab4fe47415b688c9cb1c4aadceb422d
4
- data.tar.gz: 367eae94daf3a6a461c484a64272e1705f4129fb1cf31b10fe625411e0426e3f
3
+ metadata.gz: dede340a91a64acc4d75fe0f2f6858cfad681baf7fee0e557443bf05ae098f79
4
+ data.tar.gz: 63f9b500669c51090a6c43bf3ff322b7be6029ceb8003469716f39252c4af469
5
5
  SHA512:
6
- metadata.gz: 4878af9aa0bac92118b3cafe5e34a1aac2cef2a42ed2142641cf0488407023e06c1cecf7d7459e7d133694d3bd81c1b42ff6714531156d304f353a68634fc290
7
- data.tar.gz: f426a2c84f59bcf2169e4575d40f2c95368da982af63be89bc93dadd504fd326134f99da80bf876cb52502817ff278bd45e680fa53970b319cc607dcda9d9084
6
+ metadata.gz: f53175d200da9e48e53ddc6e03901958c5050a158fcbb47842b976a6c74fb126db73f9c0f3ffa2a069058233a80a6bbb4c253b682616049c4e42e5afa190d29b
7
+ data.tar.gz: 919f2481178a3e7b5383310ee637ad0adc75cb23589d6da4a8242f43b9ac3edfff906f97df86bb651340aee849ffe1a7965507163658aedef65079837fdd2b0f
data/.gitignore CHANGED
@@ -8,3 +8,4 @@
8
8
  /tmp/
9
9
  .byebug_history
10
10
  .idea
11
+ Gemfile.lock
data/CHANGELOG.md CHANGED
@@ -4,6 +4,25 @@ All notable changes to this project will be documented in this file.
4
4
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
5
5
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
6
6
 
7
+ ## [1.2.3] - 2019-02-13
8
+ ### Changed
9
+ - Lower nokogiri requirement to 1.1
10
+ - Remove Gemfile.lock
11
+ - Update license in gemspec
12
+ - Left align Scenario IDs in report display
13
+ - Add the skipped test status, cli command for old projects and CLI parameters in README
14
+ - Fix progression computation when there is no scenarios
15
+ - remove some dead code
16
+
17
+ ## [1.2.2] - 2019-02-13
18
+ ### Changed
19
+ - Update license in gemspec
20
+
21
+ ## [1.2.1] - 2019-02-13
22
+ ### Changed
23
+ - Update repository link in contributing README section (use applidium repository)
24
+ - Update homepage in gemspec (use applidium repository)
25
+
7
26
  ## [1.2.0] - 2019-02-13
8
27
  ### Added
9
28
  - dependency to cucumber
data/README.md CHANGED
@@ -1,6 +1,7 @@
1
1
  # SpecTracker
2
2
 
3
- Parse CSV specifications, match them with JUnit reports and print the corresponding traceability matrix in the terminal.
3
+ The principle of the spec tracker is simple.
4
+ Parse specifications, match them with JUnit reports then display the corresponding traceability matrix.
4
5
 
5
6
  ## Installation
6
7
 
@@ -22,15 +23,15 @@ Or install it yourself as:
22
23
 
23
24
  ### Configuration
24
25
 
25
- | Parameter | Default value | Description |
26
- | --------- | ----- | ------- |
27
- | `spec_path` | 'specifications' | Path to the specification file(s). Expects a relative path to a file or a director |
28
- | `spec_type` | 'csv' | Type of specification files. Available values : csv, gherkin |
29
- | `scenario_id_header` | 'Scenario ID' | Header of the CSV column that contains the scenario names |
30
- | `scenario_name_header` | 'Name/Rule' | Header of the CSV column that contains the scenario IDs |
31
- | `scenario_id_regex` | `/\[([a-zA-Z\-]+)\]/` | Regexp to find scenario IDs in the test names. Default is kebab-case words |
32
- | `test_report_path` | 'test/reports' | Path to the test reports. Expects a relative path to a file or a directory |
33
- | `locale` | 'fr' | Locale for text output. Available values : fr, en |
26
+ | Parameter | CLI Parameter | Default value | Description |
27
+ | --------- | --------- | ----- | ------- |
28
+ | `spec_path` | `spec-path` | specifications | Path to the specification file(s). Expects a relative path to a file or a director |
29
+ | `spec_type` | `spec-type` | csv | Type of specification files. Available values : csv, gherkin |
30
+ | `scenario_id_header` | `scenario-id-header` | Scenario ID | Header of the CSV column that contains the scenario names |
31
+ | `scenario_name_header` | `scenario-name-header` | Name/Rule | Header of the CSV column that contains the scenario IDs |
32
+ | `scenario_id_regex` | `scenario-id-regex` | `\[([a-zA-Z\-]+)\]` | Regexp to find scenario IDs in the test names. Default is kebab-case words |
33
+ | `test_report_path` | `test-report-path` | test/reports | Path to the test reports. Expects a relative path to a file or a directory |
34
+ | `locale` | `locale` | fr | Locale for text output. Available values : fr, en |
34
35
 
35
36
  ### Test result symbols
36
37
 
@@ -39,6 +40,7 @@ Or install it yourself as:
39
40
  | ✅ | There is a test for this scenario and it PASSES |
40
41
  | 😶 | No tests were found for this scenario |
41
42
  | ❌ | There is a test for this scenario and if FAILS |
43
+ | ⏩ | There is a SKIPPED test for this scenario |
42
44
 
43
45
  ### CLI
44
46
 
@@ -66,8 +68,10 @@ Or install it yourself as:
66
68
  +---------------------------+-------------------------------------+----------------+
67
69
 
68
70
 
71
+ 💡 v0.1.0 users can still print reports with the following command :
72
+ `spec_tracker report --scenario_id_regex="#((\d\.?)*\d)" --scenario-id-header="#Scenario"`
69
73
 
70
- Help to configure the report command :
74
+ Display `report` help :
71
75
 
72
76
 
73
77
  $ spec_tracker help report
@@ -12,12 +12,10 @@ module SpecTracker
12
12
 
13
13
  protected
14
14
 
15
- def view_models(report_data)
16
-
15
+ def displayable_progression(report)
16
+ "#{report.progression}%" if report.progression
17
17
  end
18
18
 
19
- private
20
-
21
19
  attr_reader :ui_mapper
22
20
  end
23
21
  end
@@ -9,6 +9,7 @@ module SpecTracker
9
9
  end
10
10
 
11
11
  def progression
12
+ return unless data.size.positive?
12
13
  success_count = data.select {|report_datum| report_datum.status.success?}.size
13
14
  (success_count.to_f / data.size.to_f * 100).round(1)
14
15
  end
@@ -16,10 +16,10 @@ module SpecTracker
16
16
  ]
17
17
  t.rows = ui_mapper.map(report)
18
18
  t.add_separator
19
- t.add_row [SpecTracker.configuration.wording[:progression], nil, "#{report.progression}%"]
19
+ t.add_row [SpecTracker.configuration.wording[:progression], nil, displayable_progression(report)]
20
20
  end
21
21
  terminal_table.align_column(2, :center)
22
- terminal_table.align_column(0, :center)
22
+ terminal_table.align_column(0, :left)
23
23
  puts terminal_table
24
24
  end
25
25
  end
@@ -1,3 +1,3 @@
1
1
  module SpecTracker
2
- VERSION = "1.2.2"
2
+ VERSION = "1.2.3"
3
3
  end
data/spec_tracker.gemspec CHANGED
@@ -23,13 +23,13 @@ Gem::Specification.new do |spec|
23
23
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
24
24
  spec.require_paths = ["lib"]
25
25
 
26
- spec.add_development_dependency "bundler", "~> 1.17"
26
+ spec.add_development_dependency "bundler", ">= 1.17"
27
27
  spec.add_development_dependency "rake", "~> 10.0"
28
28
  spec.add_development_dependency "minitest", "~> 5.0"
29
29
  spec.add_development_dependency "byebug", '~> 9.0'
30
30
  spec.add_development_dependency "minitest-reporters", '~> 1.3'
31
31
  spec.add_development_dependency "activesupport", '>= 3.0', '< 6.0'
32
- spec.add_dependency 'nokogiri', '~> 1.10'
32
+ spec.add_dependency 'nokogiri', '~> 1.1'
33
33
  spec.add_dependency 'terminal-table', '~> 1.8'
34
34
  spec.add_dependency 'gemoji', '~> 3.0'
35
35
  spec.add_dependency 'thor', '~> 0.20'
metadata CHANGED
@@ -1,27 +1,27 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: spec_tracker
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.2
4
+ version: 1.2.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Joanna Vigné
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-02-13 00:00:00.000000000 Z
11
+ date: 2019-03-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - "~>"
17
+ - - ">="
18
18
  - !ruby/object:Gem::Version
19
19
  version: '1.17'
20
20
  type: :development
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - "~>"
24
+ - - ">="
25
25
  - !ruby/object:Gem::Version
26
26
  version: '1.17'
27
27
  - !ruby/object:Gem::Dependency
@@ -106,14 +106,14 @@ dependencies:
106
106
  requirements:
107
107
  - - "~>"
108
108
  - !ruby/object:Gem::Version
109
- version: '1.10'
109
+ version: '1.1'
110
110
  type: :runtime
111
111
  prerelease: false
112
112
  version_requirements: !ruby/object:Gem::Requirement
113
113
  requirements:
114
114
  - - "~>"
115
115
  - !ruby/object:Gem::Version
116
- version: '1.10'
116
+ version: '1.1'
117
117
  - !ruby/object:Gem::Dependency
118
118
  name: terminal-table
119
119
  requirement: !ruby/object:Gem::Requirement
@@ -183,7 +183,6 @@ files:
183
183
  - CHANGELOG.md
184
184
  - CODE_OF_CONDUCT.md
185
185
  - Gemfile
186
- - Gemfile.lock
187
186
  - LICENSE
188
187
  - README.md
189
188
  - Rakefile
@@ -241,8 +240,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
241
240
  - !ruby/object:Gem::Version
242
241
  version: '0'
243
242
  requirements: []
244
- rubyforge_project:
245
- rubygems_version: 2.7.6
243
+ rubygems_version: 3.0.2
246
244
  signing_key:
247
245
  specification_version: 4
248
246
  summary: Track tests that validate specification use cases
data/Gemfile.lock DELETED
@@ -1,79 +0,0 @@
1
- PATH
2
- remote: .
3
- specs:
4
- spec_tracker (1.1.0)
5
- cucumber (~> 3.1)
6
- gemoji (~> 3.0)
7
- nokogiri (~> 1.10)
8
- terminal-table (~> 1.8)
9
- thor (~> 0.20)
10
-
11
- GEM
12
- remote: https://rubygems.org/
13
- specs:
14
- activesupport (5.2.2)
15
- concurrent-ruby (~> 1.0, >= 1.0.2)
16
- i18n (>= 0.7, < 2)
17
- minitest (~> 5.1)
18
- tzinfo (~> 1.1)
19
- ansi (1.5.0)
20
- backports (3.11.4)
21
- builder (3.2.3)
22
- byebug (9.1.0)
23
- concurrent-ruby (1.1.4)
24
- cucumber (3.1.2)
25
- builder (>= 2.1.2)
26
- cucumber-core (~> 3.2.0)
27
- cucumber-expressions (~> 6.0.1)
28
- cucumber-wire (~> 0.0.1)
29
- diff-lcs (~> 1.3)
30
- gherkin (~> 5.1.0)
31
- multi_json (>= 1.7.5, < 2.0)
32
- multi_test (>= 0.1.2)
33
- cucumber-core (3.2.1)
34
- backports (>= 3.8.0)
35
- cucumber-tag_expressions (~> 1.1.0)
36
- gherkin (~> 5.0)
37
- cucumber-expressions (6.0.1)
38
- cucumber-tag_expressions (1.1.1)
39
- cucumber-wire (0.0.1)
40
- diff-lcs (1.3)
41
- gemoji (3.0.0)
42
- gherkin (5.1.0)
43
- i18n (1.5.3)
44
- concurrent-ruby (~> 1.0)
45
- mini_portile2 (2.4.0)
46
- minitest (5.11.3)
47
- minitest-reporters (1.3.5)
48
- ansi
49
- builder
50
- minitest (>= 5.0)
51
- ruby-progressbar
52
- multi_json (1.13.1)
53
- multi_test (0.1.2)
54
- nokogiri (1.10.1)
55
- mini_portile2 (~> 2.4.0)
56
- rake (10.5.0)
57
- ruby-progressbar (1.10.0)
58
- terminal-table (1.8.0)
59
- unicode-display_width (~> 1.1, >= 1.1.1)
60
- thor (0.20.3)
61
- thread_safe (0.3.6)
62
- tzinfo (1.2.5)
63
- thread_safe (~> 0.1)
64
- unicode-display_width (1.4.1)
65
-
66
- PLATFORMS
67
- ruby
68
-
69
- DEPENDENCIES
70
- activesupport (>= 3.0, < 6.0)
71
- bundler (~> 1.17)
72
- byebug (~> 9.0)
73
- minitest (~> 5.0)
74
- minitest-reporters (~> 1.3)
75
- rake (~> 10.0)
76
- spec_tracker!
77
-
78
- BUNDLED WITH
79
- 1.17.1