kosmas58-pickler 0.0.9.11 → 0.0.9.12
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.
- data/lib/pickler/runner.rb +9 -1
- data/lib/pickler.rb +23 -5
- data/pickler.gemspec +2 -2
- metadata +4 -3
data/lib/pickler/runner.rb
CHANGED
@@ -30,7 +30,7 @@ class Pickler
|
|
30
30
|
options << args
|
31
31
|
define_method("option_#{args.object_id}", &block)
|
32
32
|
end
|
33
|
-
|
33
|
+
|
34
34
|
def self.banner_arguments(value = nil)
|
35
35
|
if value
|
36
36
|
@banner_arguments = value
|
@@ -351,6 +351,14 @@ encouraged to change.
|
|
351
351
|
@includes = %w(unscheduled unstarted)
|
352
352
|
end
|
353
353
|
|
354
|
+
on "--language=lang", "sets the language, defaults to 'en'" do |lang|
|
355
|
+
pickler.lang = lang
|
356
|
+
end
|
357
|
+
|
358
|
+
on "--trace", "Gives feedback when features are not valid" do
|
359
|
+
pickler.trace = true
|
360
|
+
end
|
361
|
+
|
354
362
|
process do |*args|
|
355
363
|
args.replace(pickler.scenario_features(@includes)) if args.empty?
|
356
364
|
args.each do |arg|
|
data/lib/pickler.rb
CHANGED
@@ -22,6 +22,7 @@ class Pickler
|
|
22
22
|
end
|
23
23
|
|
24
24
|
attr_reader :directory
|
25
|
+
attr_writer :lang, :trace
|
25
26
|
|
26
27
|
def initialize(path = '.')
|
27
28
|
@directory = File.expand_path(path)
|
@@ -81,6 +82,24 @@ class Pickler
|
|
81
82
|
project.deliver_all_finished_stories
|
82
83
|
end
|
83
84
|
|
85
|
+
def language
|
86
|
+
require 'cucumber'
|
87
|
+
|
88
|
+
@language ||= Cucumber::Parser::I18n::Language[@lang]
|
89
|
+
end
|
90
|
+
|
91
|
+
def parser
|
92
|
+
@parser ||= language.parser
|
93
|
+
end
|
94
|
+
|
95
|
+
def parse(story)
|
96
|
+
parser.parse_or_fail(story.to_s)
|
97
|
+
rescue StandardError => e
|
98
|
+
puts "Feature '#{story.name}' has not been recognized as a valid cucumber story given locale '#{@lang}' \n\t\t => #{e.inspect}\n" if @trace
|
99
|
+
|
100
|
+
false
|
101
|
+
end
|
102
|
+
|
84
103
|
def project_id
|
85
104
|
config["project_id"] || (self.class.config["projects"]||{})[File.basename(@directory)]
|
86
105
|
end
|
@@ -99,8 +118,7 @@ class Pickler
|
|
99
118
|
end
|
100
119
|
|
101
120
|
def scenario_word
|
102
|
-
|
103
|
-
Cucumber.keyword_hash['scenario']
|
121
|
+
language.scenario_keyword
|
104
122
|
end
|
105
123
|
|
106
124
|
def format
|
@@ -112,10 +130,10 @@ class Pickler
|
|
112
130
|
end
|
113
131
|
|
114
132
|
def scenario_features(excluded_states = %w(unscheduled unstarted))
|
115
|
-
project.stories(scenario_word, :includedone => true).reject do |
|
116
|
-
Array(excluded_states).map {|s| s.to_s}.include?(
|
133
|
+
project.stories(scenario_word, :includedone => true).reject do |story|
|
134
|
+
Array(excluded_states).map {|s| s.to_s}.include?(story.current_state)
|
117
135
|
end.select do |s|
|
118
|
-
s.to_s =~ /^\s*#{Regexp.escape(
|
136
|
+
s.to_s =~ /^\s*#{Regexp.escape(scenario_word)}/ && parse(s)
|
119
137
|
end
|
120
138
|
end
|
121
139
|
|
data/pickler.gemspec
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
Gem::Specification.new do |s|
|
2
2
|
s.name = "pickler"
|
3
|
-
s.version = "0.0.9.
|
3
|
+
s.version = "0.0.9.12"
|
4
4
|
s.summary = "PIvotal traCKer Liaison to cucumbER"
|
5
5
|
s.description = "Synchronize between Cucumber and Pivotal Tracker"
|
6
6
|
s.authors = ["Tim Pope", "Liam Morley", "Kamal Fariz Mahyuddin", "Kosmas Schuetz"]
|
@@ -24,6 +24,6 @@ Gem::Specification.new do |s|
|
|
24
24
|
"lib/pickler/tracker/note.rb"
|
25
25
|
]
|
26
26
|
s.add_dependency("activesupport", [">= 2.0.0"])
|
27
|
-
s.add_dependency("cucumber", [">= 0.3.
|
27
|
+
s.add_dependency("cucumber", [">= 0.3.9"])
|
28
28
|
s.add_dependency("nokogiri", [">= 1.3.1"])
|
29
29
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: kosmas58-pickler
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.9.
|
4
|
+
version: 0.0.9.12
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Tim Pope
|
@@ -33,7 +33,7 @@ dependencies:
|
|
33
33
|
requirements:
|
34
34
|
- - ">="
|
35
35
|
- !ruby/object:Gem::Version
|
36
|
-
version: 0.3.
|
36
|
+
version: 0.3.9
|
37
37
|
version:
|
38
38
|
- !ruby/object:Gem::Dependency
|
39
39
|
name: nokogiri
|
@@ -70,6 +70,7 @@ files:
|
|
70
70
|
- lib/pickler/tracker/note.rb
|
71
71
|
has_rdoc: false
|
72
72
|
homepage: http://github.com/tpope/pickler
|
73
|
+
licenses:
|
73
74
|
post_install_message:
|
74
75
|
rdoc_options: []
|
75
76
|
|
@@ -90,7 +91,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
90
91
|
requirements: []
|
91
92
|
|
92
93
|
rubyforge_project:
|
93
|
-
rubygems_version: 1.
|
94
|
+
rubygems_version: 1.3.5
|
94
95
|
signing_key:
|
95
96
|
specification_version: 2
|
96
97
|
summary: PIvotal traCKer Liaison to cucumbER
|