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:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e35dc5d43f752ca14cfa0480316592b57cde6816
|
4
|
+
data.tar.gz: c021daa73aeaea38300f21ab2ece24c70789077c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
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 = ["
|
10
|
-
spec.email = ["
|
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..."
|
data/lib/greener/checker/base.rb
CHANGED
@@ -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]
|
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)
|
data/lib/greener/parser.rb
CHANGED
@@ -2,7 +2,7 @@ require "gherkin/parser"
|
|
2
2
|
require "gherkin/token_scanner"
|
3
3
|
|
4
4
|
module Greener
|
5
|
-
# Wrapper around
|
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
|
-
|
15
|
-
|
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
|
data/lib/greener/version.rb
CHANGED
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
|
4
|
+
version: 0.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
|
-
-
|
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
|
-
-
|
169
|
+
- smollah@theorchard.com
|
170
170
|
executables:
|
171
171
|
- greener
|
172
172
|
extensions: []
|