greener2 0.0.3 → 0.2.0

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