greener2 0.0.3 → 0.2.0

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: 04a5a93dd25d6892eb23cda9f38a813d33983929
4
- data.tar.gz: 70a3bea08516e95743793f1d4a8a0af316625662
3
+ metadata.gz: e35dc5d43f752ca14cfa0480316592b57cde6816
4
+ data.tar.gz: c021daa73aeaea38300f21ab2ece24c70789077c
5
5
  SHA512:
6
- metadata.gz: 7572bca6f99d9c53826332f4a8a4997d08b26c3caed04a428de136901981d6875d592035b46b36a286142c3867a61296435e8a97b0b0fc989d93c47da81c25ec
7
- data.tar.gz: ee145a6e58534d25af0a969d80e67d6749d78328a9b72bac99b8e8869344c84925293d0e69a7a36be669d8fa8bbf01a2a2c5e2cd071e1d0d97b8b775d1b55faa
6
+ metadata.gz: 5557d6dc3a2d78ccbdcddce4c698860b444225bde199d87a1874026a690bdbc7638c8a808faf2b219e159b4d94eb1bfb36ada1a582adf3fbb36c45b023806e11
7
+ data.tar.gz: 24db0402cc959d292d30447202a56e31e9d2722f7da2b8239f6d9b6886807e087ce0952104abe11b3cbdad5d5671cbaee7cb137596105bf2ec3161e120795b50
data/greener.gemspec CHANGED
@@ -6,8 +6,8 @@ require "greener/version"
6
6
  Gem::Specification.new do |spec|
7
7
  spec.name = "greener2"
8
8
  spec.version = Greener::VERSION
9
- spec.authors = ["ikozakov"]
10
- spec.email = ["ivankozakov0@gmail.com"]
9
+ spec.authors = ["smoll"]
10
+ spec.email = ["smollah@theorchard.com"]
11
11
 
12
12
  spec.summary = "A Gherkin .feature file linter"
13
13
  spec.description = "Keep your Gherkin readable with the greener linter..."
@@ -39,6 +39,7 @@ module Greener
39
39
 
40
40
  # For readability in checker subclasses
41
41
  def feature
42
+ puts @ast.keys if @ast
42
43
  @ast
43
44
  end
44
45
 
@@ -19,6 +19,7 @@ module Greener
19
19
  def run_against_filename
20
20
  filename_without_extension = File.basename(@path, ".*")
21
21
  expected = feature[:name]
22
+
22
23
  expected = expected.gsub(/[^0-9a-z ]/i, "") if allow_punctuation?
23
24
  expected = expected.downcase.gsub(" ", "_")
24
25
  return if filename_without_extension == expected
@@ -21,7 +21,8 @@ module Greener
21
21
  end
22
22
 
23
23
  def check_every_scenario
24
- feature[:scenarioDefinitions].each do |scenario|
24
+ scenarios = feature[:scenarioDefinitions] || feature[:children]
25
+ scenarios.each do |scenario|
25
26
  scenario[:steps].each { |step| check_a_step(step) }
26
27
 
27
28
  next if scenario[:location][:column] == (1 + configured_indentation_width)
@@ -2,7 +2,7 @@ require "gherkin/parser"
2
2
  require "gherkin/token_scanner"
3
3
 
4
4
  module Greener
5
- # Wrapper around Gherkin's Parser
5
+ # Wrapper around Gherkin3's Parser
6
6
  class Parser
7
7
  def initialize(feature)
8
8
  @feature = feature # filepath or String
@@ -11,8 +11,11 @@ module Greener
11
11
  # Return an Abstract Syntax Tree from a feature file
12
12
  def ast
13
13
  parser = Gherkin::Parser.new
14
- scanner = Gherkin::TokenScanner.new(@feature)
15
- parser.parse(scanner)
14
+ if @feature.include?("Feature:")
15
+ parser.parse(Gherkin::TokenScanner.new(@feature))
16
+ else
17
+ parser.parse(Gherkin::TokenScanner.new(File.read(@feature)))[:feature]
18
+ end
16
19
  end
17
20
  end
18
21
  end
@@ -1,4 +1,4 @@
1
1
  # Gem version
2
2
  module Greener
3
- VERSION = "0.0.3"
3
+ VERSION = "0.2.0"
4
4
  end
metadata CHANGED
@@ -1,10 +1,10 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: greener2
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
- - ikozakov
7
+ - smoll
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
@@ -166,7 +166,7 @@ dependencies:
166
166
  version: 0.9.1
167
167
  description: Keep your Gherkin readable with the greener linter...
168
168
  email:
169
- - ivankozakov0@gmail.com
169
+ - smollah@theorchard.com
170
170
  executables:
171
171
  - greener
172
172
  extensions: []