spec_tracker 1.2.2 → 1.2.3

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: 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