yard-cucumber 2.0.0
Sign up to get free protection for your applications and to get access to all the features.
- data/.rspec +3 -0
- data/History.txt +190 -0
- data/README.md +145 -0
- data/Rakefile +17 -0
- data/city.gemspec +66 -0
- data/example/README.md +8 -0
- data/example/child_feature/README.md +21 -0
- data/example/child_feature/child.feature +11 -0
- data/example/child_feature/grandchild_feature/grandchild.feature +12 -0
- data/example/empty.feature +2 -0
- data/example/scenario.feature +63 -0
- data/example/scenario_outline.feature +80 -0
- data/example/step_definitions/example.step.rb +109 -0
- data/example/step_definitions/first.step.rb +21 -0
- data/example/step_definitions/support/env.rb +7 -0
- data/example/step_definitions/support/env_support.rb +12 -0
- data/example/step_definitions/support/support.rb +6 -0
- data/example/tags.feature +18 -0
- data/example/transform.feature +13 -0
- data/lib/cucumber/city_builder.rb +209 -0
- data/lib/docserver/default/fulldoc/html/js/cucumber.js +85 -0
- data/lib/docserver/default/layout/html/headers.erb +13 -0
- data/lib/docserver/doc_server/full_list/html/full_list.erb +37 -0
- data/lib/docserver/doc_server/full_list/html/setup.rb +18 -0
- data/lib/templates/default/feature/html/feature.erb +39 -0
- data/lib/templates/default/feature/html/no_steps_defined.erb +1 -0
- data/lib/templates/default/feature/html/outline.erb +42 -0
- data/lib/templates/default/feature/html/pystring.erb +3 -0
- data/lib/templates/default/feature/html/scenario.erb +55 -0
- data/lib/templates/default/feature/html/setup.rb +55 -0
- data/lib/templates/default/feature/html/steps.erb +39 -0
- data/lib/templates/default/feature/html/table.erb +20 -0
- data/lib/templates/default/featuredirectory/html/alpha_table.erb +26 -0
- data/lib/templates/default/featuredirectory/html/directory.erb +32 -0
- data/lib/templates/default/featuredirectory/html/setup.rb +41 -0
- data/lib/templates/default/featuretags/html/namespace.erb +131 -0
- data/lib/templates/default/featuretags/html/setup.rb +34 -0
- data/lib/templates/default/fulldoc/html/css/common.css +214 -0
- data/lib/templates/default/fulldoc/html/full_list.erb +36 -0
- data/lib/templates/default/fulldoc/html/full_list_features.erb +28 -0
- data/lib/templates/default/fulldoc/html/full_list_stepdefinitions.erb +11 -0
- data/lib/templates/default/fulldoc/html/full_list_steps.erb +13 -0
- data/lib/templates/default/fulldoc/html/full_list_tags.erb +12 -0
- data/lib/templates/default/fulldoc/html/index.erb +24 -0
- data/lib/templates/default/fulldoc/html/js/cucumber.js +314 -0
- data/lib/templates/default/fulldoc/html/setup.rb +72 -0
- data/lib/templates/default/layout/html/headers.erb +14 -0
- data/lib/templates/default/layout/html/search.erb +7 -0
- data/lib/templates/default/requirements/html/alpha_table.erb +26 -0
- data/lib/templates/default/requirements/html/requirements.erb +50 -0
- data/lib/templates/default/requirements/html/setup.rb +51 -0
- data/lib/templates/default/steptransformers/html/header.erb +12 -0
- data/lib/templates/default/steptransformers/html/index.erb +10 -0
- data/lib/templates/default/steptransformers/html/setup.rb +94 -0
- data/lib/templates/default/steptransformers/html/transformers.erb +74 -0
- data/lib/templates/default/steptransformers/html/undefinedsteps.erb +26 -0
- data/lib/templates/default/tag/html/alpha_table.erb +32 -0
- data/lib/templates/default/tag/html/setup.rb +27 -0
- data/lib/templates/default/tag/html/tag.erb +35 -0
- data/lib/yard/code_objects/cucumber/base.rb +32 -0
- data/lib/yard/code_objects/cucumber/feature.rb +18 -0
- data/lib/yard/code_objects/cucumber/namespace_object.rb +45 -0
- data/lib/yard/code_objects/cucumber/scenario.rb +26 -0
- data/lib/yard/code_objects/cucumber/scenario_outline.rb +66 -0
- data/lib/yard/code_objects/cucumber/step.rb +35 -0
- data/lib/yard/code_objects/cucumber/tag.rb +27 -0
- data/lib/yard/code_objects/step_definition.rb +7 -0
- data/lib/yard/code_objects/step_transform.rb +7 -0
- data/lib/yard/code_objects/step_transformer.rb +51 -0
- data/lib/yard/handlers/cucumber/base.rb +22 -0
- data/lib/yard/handlers/cucumber/feature_handler.rb +93 -0
- data/lib/yard/handlers/legacy/step_definition_handler.rb +46 -0
- data/lib/yard/handlers/legacy/step_transform_handler.rb +24 -0
- data/lib/yard/handlers/step_definition_handler.rb +22 -0
- data/lib/yard/handlers/step_transform_handler.rb +23 -0
- data/lib/yard/parser/cucumber/feature.rb +46 -0
- data/lib/yard/parser/source_parser.rb +54 -0
- data/lib/yard/rake/city_task.rb +12 -0
- data/lib/yard/server/adapter.rb +29 -0
- data/lib/yard/server/commands/list_command.rb +25 -0
- data/lib/yard/server/router.rb +31 -0
- data/lib/yard/templates/helpers/base_helper.rb +26 -0
- data/lib/yard-cucumber.rb +53 -0
- metadata +173 -0
@@ -0,0 +1,24 @@
|
|
1
|
+
class YARD::Handlers::Ruby::Legacy::StepTransformHandler < YARD::Handlers::Ruby::Legacy::Base
|
2
|
+
STEP_TRANSFORM_MATCH = /^(Transform\s*(\/.+\/)\s+do(?:\s*\|.+\|)?\s*)$/ unless defined?(STEP_TRANSFORM_MATCH)
|
3
|
+
handles STEP_TRANSFORM_MATCH
|
4
|
+
|
5
|
+
@@unique_name = 0
|
6
|
+
|
7
|
+
def process
|
8
|
+
transform = statement.tokens.to_s[STEP_TRANSFORM_MATCH,2]
|
9
|
+
@@unique_name = @@unique_name + 1
|
10
|
+
|
11
|
+
instance = StepTransformObject.new(YARD::CodeObjects::Cucumber::CUCUMBER_STEPTRANSFORM_NAMESPACE, "transform_#{@@unique_name}") do |o|
|
12
|
+
o.source = "Transform #{transform} do #{statement.block.to_s}\nend"
|
13
|
+
o.value = transform
|
14
|
+
o.keyword = "Transform"
|
15
|
+
end
|
16
|
+
|
17
|
+
obj = register instance
|
18
|
+
parse_block :owner => obj
|
19
|
+
|
20
|
+
rescue YARD::Handlers::NamespaceMissingError
|
21
|
+
end
|
22
|
+
|
23
|
+
end
|
24
|
+
|
@@ -0,0 +1,22 @@
|
|
1
|
+
|
2
|
+
class YARD::Handlers::Ruby::StepDefinitionHandler < YARD::Handlers::Ruby::Base
|
3
|
+
handles method_call(:When),method_call(:Given),method_call(:And),method_call(:Then)
|
4
|
+
|
5
|
+
@@unique_name = 0
|
6
|
+
|
7
|
+
process do
|
8
|
+
@@unique_name += 1
|
9
|
+
|
10
|
+
instance = YARD::CodeObjects::StepDefinitionObject.new(YARD::CodeObjects::Cucumber::CUCUMBER_STEPTRANSFORM_NAMESPACE,"step_definition#{@@unique_name}") do |o|
|
11
|
+
o.source = statement.source
|
12
|
+
o.comments = statement.comments
|
13
|
+
o.keyword = statement[0].source
|
14
|
+
o.value = statement[1].source
|
15
|
+
end
|
16
|
+
|
17
|
+
obj = register instance
|
18
|
+
parse_block(statement[2],:owner => obj)
|
19
|
+
|
20
|
+
end
|
21
|
+
|
22
|
+
end
|
@@ -0,0 +1,23 @@
|
|
1
|
+
|
2
|
+
class YARD::Handlers::Ruby::StepTransformHandler < YARD::Handlers::Ruby::Base
|
3
|
+
handles method_call(:Transform)
|
4
|
+
|
5
|
+
@@unique_name = 0
|
6
|
+
|
7
|
+
process do
|
8
|
+
@@unique_name += 1
|
9
|
+
|
10
|
+
instance = YARD::CodeObjects::StepTransformObject.new(YARD::CodeObjects::Cucumber::CUCUMBER_STEPTRANSFORM_NAMESPACE,"step_transform#{@@unique_name}") do |o|
|
11
|
+
o.source = statement.source
|
12
|
+
o.comments = statement.comments
|
13
|
+
o.keyword = statement[0].source
|
14
|
+
o.value = statement[1].source
|
15
|
+
end
|
16
|
+
|
17
|
+
obj = register instance
|
18
|
+
parse_block(statement[2],:owner => obj)
|
19
|
+
|
20
|
+
end
|
21
|
+
|
22
|
+
end
|
23
|
+
|
@@ -0,0 +1,46 @@
|
|
1
|
+
module YARD::Parser::Cucumber
|
2
|
+
|
3
|
+
class FeatureParser < YARD::Parser::Base
|
4
|
+
|
5
|
+
def initialize(source, file = '(stdin)')
|
6
|
+
|
7
|
+
@builder = Cucumber::Parser::CityBuilder.new(file)
|
8
|
+
@tag_counts = {}
|
9
|
+
@tag_formatter = Gherkin::Formatter::TagCountFormatter.new(@builder, @tag_counts)
|
10
|
+
@parser = Gherkin::Parser::Parser.new(@tag_formatter, true, "root", false)
|
11
|
+
|
12
|
+
@source = source
|
13
|
+
@file = file
|
14
|
+
|
15
|
+
@feature = nil
|
16
|
+
end
|
17
|
+
|
18
|
+
def parse
|
19
|
+
begin
|
20
|
+
@parser.parse(@source, @file, 0)
|
21
|
+
@feature = @builder.ast
|
22
|
+
return nil if @feature.nil? # Nothing matched
|
23
|
+
@feature.language = @parser.i18n_language
|
24
|
+
rescue Gherkin::Lexer::LexingError, Gherkin::Parser::ParseError => e
|
25
|
+
e.message.insert(0, "#{@file}: ")
|
26
|
+
raise e
|
27
|
+
end
|
28
|
+
|
29
|
+
self
|
30
|
+
end
|
31
|
+
|
32
|
+
def tokenize
|
33
|
+
|
34
|
+
end
|
35
|
+
|
36
|
+
|
37
|
+
def enumerator
|
38
|
+
[@feature]
|
39
|
+
end
|
40
|
+
|
41
|
+
end
|
42
|
+
|
43
|
+
|
44
|
+
YARD::Parser::SourceParser.register_parser_type :feature, FeatureParser, 'feature'
|
45
|
+
|
46
|
+
end
|
@@ -0,0 +1,54 @@
|
|
1
|
+
module YARD::Parser
|
2
|
+
|
3
|
+
class SourceParser
|
4
|
+
class << self
|
5
|
+
|
6
|
+
#
|
7
|
+
# Following the conventions of ordering as Cucumber performs it
|
8
|
+
#
|
9
|
+
# environment files - 'directory/support/env.rb,env_*.rb'
|
10
|
+
# support files - 'directory/support/*.rb' (but not env prefixed)
|
11
|
+
# directory files - 'directory/*.rb'
|
12
|
+
#
|
13
|
+
# feature files - 'directory/*.feature'
|
14
|
+
#
|
15
|
+
def order_by_cucumber_standards(*files)
|
16
|
+
|
17
|
+
non_feature_files = files.reject {|x| x =~ /^.+\.feature$/}
|
18
|
+
feature_files = files.find_all {|x| x =~ /^.+\.feature$/ }
|
19
|
+
|
20
|
+
support_files = non_feature_files.find_all {|file| file =~ /support\/.+\.rb$/ }
|
21
|
+
other_files = non_feature_files - support_files
|
22
|
+
|
23
|
+
environment_files = support_files.find_all {|file| file =~ /support\/env.*\.rb$/ }
|
24
|
+
environment_files.sort_by {|x| x.length if x }
|
25
|
+
|
26
|
+
support_files = support_files - environment_files
|
27
|
+
|
28
|
+
environment_files + support_files + other_files + feature_files
|
29
|
+
end
|
30
|
+
|
31
|
+
def parse_in_order(*files)
|
32
|
+
|
33
|
+
files = order_by_cucumber_standards(*files)
|
34
|
+
|
35
|
+
while file = files.shift
|
36
|
+
begin
|
37
|
+
if file.is_a?(Array) && file.last.is_a?(Continuation)
|
38
|
+
log.debug("Re-processing #{file.first}")
|
39
|
+
file.last.call
|
40
|
+
elsif file.is_a?(String)
|
41
|
+
log.debug("Processing #{file}...")
|
42
|
+
new(parser_type, true).parse(file)
|
43
|
+
end
|
44
|
+
rescue LoadOrderError => e
|
45
|
+
# Out of order file. Push the context to the end and we'll call it
|
46
|
+
files.push([file, e.message])
|
47
|
+
end
|
48
|
+
end
|
49
|
+
end
|
50
|
+
|
51
|
+
end
|
52
|
+
end
|
53
|
+
|
54
|
+
end
|
@@ -0,0 +1,29 @@
|
|
1
|
+
module YARD
|
2
|
+
module Server
|
3
|
+
|
4
|
+
class Adapter
|
5
|
+
|
6
|
+
class << self
|
7
|
+
|
8
|
+
alias_method :yard_setup, :setup
|
9
|
+
|
10
|
+
def setup
|
11
|
+
yard_setup
|
12
|
+
YARD::Templates::Engine.template_paths +=
|
13
|
+
[File.dirname(__FILE__) + '/../../templates',File.dirname(__FILE__) + '/../../docserver']
|
14
|
+
end
|
15
|
+
|
16
|
+
alias_method :yard_shutdown, :shutdown
|
17
|
+
|
18
|
+
def yard_shutdown
|
19
|
+
YARD::Templates::Engine.template_paths -=
|
20
|
+
[File.dirname(__FILE__) + '/../../templates',File.dirname(__FILE__) + '/../../docserver']
|
21
|
+
end
|
22
|
+
|
23
|
+
end
|
24
|
+
|
25
|
+
|
26
|
+
end
|
27
|
+
|
28
|
+
end
|
29
|
+
end
|
@@ -0,0 +1,25 @@
|
|
1
|
+
module YARD
|
2
|
+
module Server
|
3
|
+
module Commands
|
4
|
+
|
5
|
+
class ListFeaturesCommand < ListCommand
|
6
|
+
def type; :features end
|
7
|
+
|
8
|
+
def items
|
9
|
+
Registry.load_all
|
10
|
+
run_verifier(Registry.all(:feature))
|
11
|
+
end
|
12
|
+
end
|
13
|
+
|
14
|
+
class ListTagsCommand < ListCommand
|
15
|
+
def type; :tags end
|
16
|
+
|
17
|
+
def items
|
18
|
+
Registry.load_all
|
19
|
+
run_verifier(Registry.all(:tag).sort_by {|t| t.value.to_s })
|
20
|
+
end
|
21
|
+
end
|
22
|
+
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
@@ -0,0 +1,31 @@
|
|
1
|
+
module YARD
|
2
|
+
module Server
|
3
|
+
|
4
|
+
#
|
5
|
+
# The YARD::Server::Router needs the following modification,
|
6
|
+
# otherwise it perfectly suited for the requirements documents
|
7
|
+
#
|
8
|
+
Router.class_eval do
|
9
|
+
|
10
|
+
alias_method :core_route_list, :route_list
|
11
|
+
|
12
|
+
#
|
13
|
+
# Provide the full list of features and tags
|
14
|
+
#
|
15
|
+
def route_list(library, paths)
|
16
|
+
|
17
|
+
if paths && !paths.empty? && paths.first =~ /^(?:features|tags)$/
|
18
|
+
case paths.shift
|
19
|
+
when "features"; cmd = Commands::ListFeaturesCommand
|
20
|
+
when "tags"; cmd = Commands::ListTagsCommand
|
21
|
+
end
|
22
|
+
cmd.new(final_options(library, paths)).call(request)
|
23
|
+
else
|
24
|
+
core_route_list(library,paths)
|
25
|
+
end
|
26
|
+
|
27
|
+
end
|
28
|
+
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
@@ -0,0 +1,26 @@
|
|
1
|
+
module YARD::Templates::Helpers
|
2
|
+
|
3
|
+
module BaseHelper
|
4
|
+
|
5
|
+
def format_object_title(object)
|
6
|
+
if object.is_a?(YARD::CodeObjects::Cucumber::FeatureTags)
|
7
|
+
"Tags"
|
8
|
+
elsif object.is_a?(YARD::CodeObjects::Cucumber::StepTransformersObject)
|
9
|
+
"Step Definitions and Transforms"
|
10
|
+
elsif object.is_a?(YARD::CodeObjects::Cucumber::NamespaceObject)
|
11
|
+
"#{format_object_type(object)}#{object.value ? ": #{object.value}" : ''}"
|
12
|
+
elsif object.is_a?(YARD::CodeObjects::Cucumber::FeatureDirectory)
|
13
|
+
"Feature Directory: #{object.name}"
|
14
|
+
else
|
15
|
+
case object
|
16
|
+
when YARD::CodeObjects::RootObject
|
17
|
+
"Top Level Namespace"
|
18
|
+
else
|
19
|
+
format_object_type(object) + ": " + object.path
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
24
|
+
end
|
25
|
+
|
26
|
+
end
|
@@ -0,0 +1,53 @@
|
|
1
|
+
require 'cucumber/parser/gherkin_builder'
|
2
|
+
require 'gherkin/parser/parser'
|
3
|
+
require 'gherkin/formatter/tag_count_formatter'
|
4
|
+
|
5
|
+
|
6
|
+
module CucumberInTheYARD
|
7
|
+
VERSION = '2.0.0' unless defined?(CucumberInTheYARD::VERSION)
|
8
|
+
end
|
9
|
+
|
10
|
+
require File.dirname(__FILE__) + "/yard/code_objects/cucumber/base.rb"
|
11
|
+
require File.dirname(__FILE__) + "/yard/code_objects/cucumber/namespace_object.rb"
|
12
|
+
require File.dirname(__FILE__) + "/yard/code_objects/cucumber/feature.rb"
|
13
|
+
require File.dirname(__FILE__) + "/yard/code_objects/cucumber/scenario_outline.rb"
|
14
|
+
require File.dirname(__FILE__) + "/yard/code_objects/cucumber/scenario.rb"
|
15
|
+
require File.dirname(__FILE__) + "/yard/code_objects/cucumber/step.rb"
|
16
|
+
require File.dirname(__FILE__) + "/yard/code_objects/cucumber/tag.rb"
|
17
|
+
|
18
|
+
require File.dirname(__FILE__) + "/cucumber/city_builder.rb"
|
19
|
+
|
20
|
+
require File.dirname(__FILE__) + "/yard/code_objects/step_transformer.rb"
|
21
|
+
require File.dirname(__FILE__) + "/yard/code_objects/step_definition.rb"
|
22
|
+
require File.dirname(__FILE__) + "/yard/code_objects/step_transform.rb"
|
23
|
+
|
24
|
+
require File.dirname(__FILE__) + "/yard/parser/cucumber/feature.rb"
|
25
|
+
|
26
|
+
require File.dirname(__FILE__) + "/yard/handlers/cucumber/base.rb"
|
27
|
+
require File.dirname(__FILE__) + "/yard/handlers/cucumber/feature_handler.rb"
|
28
|
+
|
29
|
+
if RUBY19
|
30
|
+
require File.dirname(__FILE__) + "/yard/handlers/step_definition_handler.rb"
|
31
|
+
require File.dirname(__FILE__) + "/yard/handlers/step_transform_handler.rb"
|
32
|
+
end
|
33
|
+
|
34
|
+
require File.dirname(__FILE__) + "/yard/handlers/legacy/step_definition_handler.rb"
|
35
|
+
require File.dirname(__FILE__) + "/yard/handlers/legacy/step_transform_handler.rb"
|
36
|
+
|
37
|
+
require File.dirname(__FILE__) + "/yard/parser/source_parser.rb"
|
38
|
+
require File.dirname(__FILE__) + "/yard/templates/helpers/base_helper.rb"
|
39
|
+
|
40
|
+
require File.dirname(__FILE__) + "/yard/server/commands/list_command.rb"
|
41
|
+
require File.dirname(__FILE__) + "/yard/server/router.rb"
|
42
|
+
|
43
|
+
|
44
|
+
# This registered template works for yardoc
|
45
|
+
YARD::Templates::Engine.register_template_path File.dirname(__FILE__) + '/templates'
|
46
|
+
|
47
|
+
# This template is for yard server but will raise an error if included here, it
|
48
|
+
# is patched in the adapter setup.
|
49
|
+
#YARD::Templates::Engine.register_template_path File.dirname(__FILE__) + '/docserver'
|
50
|
+
|
51
|
+
# The following static paths and templates are for yard server
|
52
|
+
YARD::Server.register_static_path File.dirname(__FILE__) + "/templates/default/fulldoc/html"
|
53
|
+
YARD::Server.register_static_path File.dirname(__FILE__) + "/docserver/default/fulldoc/html"
|
metadata
ADDED
@@ -0,0 +1,173 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: yard-cucumber
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
prerelease:
|
5
|
+
version: 2.0.0
|
6
|
+
platform: ruby
|
7
|
+
authors:
|
8
|
+
- Franklin Webber
|
9
|
+
autorequire:
|
10
|
+
bindir: bin
|
11
|
+
cert_chain: []
|
12
|
+
|
13
|
+
date: 2011-02-08 00:00:00 -08:00
|
14
|
+
default_executable:
|
15
|
+
dependencies:
|
16
|
+
- !ruby/object:Gem::Dependency
|
17
|
+
name: gherkin
|
18
|
+
prerelease: false
|
19
|
+
requirement: &id001 !ruby/object:Gem::Requirement
|
20
|
+
none: false
|
21
|
+
requirements:
|
22
|
+
- - ">="
|
23
|
+
- !ruby/object:Gem::Version
|
24
|
+
version: 2.2.9
|
25
|
+
type: :runtime
|
26
|
+
version_requirements: *id001
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: cucumber
|
29
|
+
prerelease: false
|
30
|
+
requirement: &id002 !ruby/object:Gem::Requirement
|
31
|
+
none: false
|
32
|
+
requirements:
|
33
|
+
- - ">="
|
34
|
+
- !ruby/object:Gem::Version
|
35
|
+
version: 0.7.5
|
36
|
+
type: :runtime
|
37
|
+
version_requirements: *id002
|
38
|
+
- !ruby/object:Gem::Dependency
|
39
|
+
name: yard
|
40
|
+
prerelease: false
|
41
|
+
requirement: &id003 !ruby/object:Gem::Requirement
|
42
|
+
none: false
|
43
|
+
requirements:
|
44
|
+
- - ">="
|
45
|
+
- !ruby/object:Gem::Version
|
46
|
+
version: 0.6.3
|
47
|
+
type: :runtime
|
48
|
+
version_requirements: *id003
|
49
|
+
description: " \n YARD-Cucumber is a YARD extension that processes Cucumber Features, Scenarios, Steps,\n Step Definitions, Transforms, and Tags and provides a documentation interface that allows you\n easily view and investigate the test suite. This tools hopes to bridge the gap of being able\n to provide your feature descriptions to your Product Owners and Stakeholders. "
|
50
|
+
email: franklin.webber@gmail.com
|
51
|
+
executables: []
|
52
|
+
|
53
|
+
extensions: []
|
54
|
+
|
55
|
+
extra_rdoc_files:
|
56
|
+
- README.md
|
57
|
+
- History.txt
|
58
|
+
files:
|
59
|
+
- .rspec
|
60
|
+
- History.txt
|
61
|
+
- README.md
|
62
|
+
- Rakefile
|
63
|
+
- city.gemspec
|
64
|
+
- example/README.md
|
65
|
+
- example/child_feature/README.md
|
66
|
+
- example/child_feature/child.feature
|
67
|
+
- example/child_feature/grandchild_feature/grandchild.feature
|
68
|
+
- example/empty.feature
|
69
|
+
- example/scenario.feature
|
70
|
+
- example/scenario_outline.feature
|
71
|
+
- example/step_definitions/example.step.rb
|
72
|
+
- example/step_definitions/first.step.rb
|
73
|
+
- example/step_definitions/support/env.rb
|
74
|
+
- example/step_definitions/support/env_support.rb
|
75
|
+
- example/step_definitions/support/support.rb
|
76
|
+
- example/tags.feature
|
77
|
+
- example/transform.feature
|
78
|
+
- lib/cucumber/city_builder.rb
|
79
|
+
- lib/docserver/default/fulldoc/html/js/cucumber.js
|
80
|
+
- lib/docserver/default/layout/html/headers.erb
|
81
|
+
- lib/docserver/doc_server/full_list/html/full_list.erb
|
82
|
+
- lib/docserver/doc_server/full_list/html/setup.rb
|
83
|
+
- lib/templates/default/feature/html/feature.erb
|
84
|
+
- lib/templates/default/feature/html/no_steps_defined.erb
|
85
|
+
- lib/templates/default/feature/html/outline.erb
|
86
|
+
- lib/templates/default/feature/html/pystring.erb
|
87
|
+
- lib/templates/default/feature/html/scenario.erb
|
88
|
+
- lib/templates/default/feature/html/setup.rb
|
89
|
+
- lib/templates/default/feature/html/steps.erb
|
90
|
+
- lib/templates/default/feature/html/table.erb
|
91
|
+
- lib/templates/default/featuredirectory/html/alpha_table.erb
|
92
|
+
- lib/templates/default/featuredirectory/html/directory.erb
|
93
|
+
- lib/templates/default/featuredirectory/html/setup.rb
|
94
|
+
- lib/templates/default/featuretags/html/namespace.erb
|
95
|
+
- lib/templates/default/featuretags/html/setup.rb
|
96
|
+
- lib/templates/default/fulldoc/html/css/common.css
|
97
|
+
- lib/templates/default/fulldoc/html/full_list.erb
|
98
|
+
- lib/templates/default/fulldoc/html/full_list_features.erb
|
99
|
+
- lib/templates/default/fulldoc/html/full_list_stepdefinitions.erb
|
100
|
+
- lib/templates/default/fulldoc/html/full_list_steps.erb
|
101
|
+
- lib/templates/default/fulldoc/html/full_list_tags.erb
|
102
|
+
- lib/templates/default/fulldoc/html/index.erb
|
103
|
+
- lib/templates/default/fulldoc/html/js/cucumber.js
|
104
|
+
- lib/templates/default/fulldoc/html/setup.rb
|
105
|
+
- lib/templates/default/layout/html/headers.erb
|
106
|
+
- lib/templates/default/layout/html/search.erb
|
107
|
+
- lib/templates/default/requirements/html/alpha_table.erb
|
108
|
+
- lib/templates/default/requirements/html/requirements.erb
|
109
|
+
- lib/templates/default/requirements/html/setup.rb
|
110
|
+
- lib/templates/default/steptransformers/html/header.erb
|
111
|
+
- lib/templates/default/steptransformers/html/index.erb
|
112
|
+
- lib/templates/default/steptransformers/html/setup.rb
|
113
|
+
- lib/templates/default/steptransformers/html/transformers.erb
|
114
|
+
- lib/templates/default/steptransformers/html/undefinedsteps.erb
|
115
|
+
- lib/templates/default/tag/html/alpha_table.erb
|
116
|
+
- lib/templates/default/tag/html/setup.rb
|
117
|
+
- lib/templates/default/tag/html/tag.erb
|
118
|
+
- lib/yard-cucumber.rb
|
119
|
+
- lib/yard/code_objects/cucumber/base.rb
|
120
|
+
- lib/yard/code_objects/cucumber/feature.rb
|
121
|
+
- lib/yard/code_objects/cucumber/namespace_object.rb
|
122
|
+
- lib/yard/code_objects/cucumber/scenario.rb
|
123
|
+
- lib/yard/code_objects/cucumber/scenario_outline.rb
|
124
|
+
- lib/yard/code_objects/cucumber/step.rb
|
125
|
+
- lib/yard/code_objects/cucumber/tag.rb
|
126
|
+
- lib/yard/code_objects/step_definition.rb
|
127
|
+
- lib/yard/code_objects/step_transform.rb
|
128
|
+
- lib/yard/code_objects/step_transformer.rb
|
129
|
+
- lib/yard/handlers/cucumber/base.rb
|
130
|
+
- lib/yard/handlers/cucumber/feature_handler.rb
|
131
|
+
- lib/yard/handlers/legacy/step_definition_handler.rb
|
132
|
+
- lib/yard/handlers/legacy/step_transform_handler.rb
|
133
|
+
- lib/yard/handlers/step_definition_handler.rb
|
134
|
+
- lib/yard/handlers/step_transform_handler.rb
|
135
|
+
- lib/yard/parser/cucumber/feature.rb
|
136
|
+
- lib/yard/parser/source_parser.rb
|
137
|
+
- lib/yard/rake/city_task.rb
|
138
|
+
- lib/yard/server/adapter.rb
|
139
|
+
- lib/yard/server/commands/list_command.rb
|
140
|
+
- lib/yard/server/router.rb
|
141
|
+
- lib/yard/templates/helpers/base_helper.rb
|
142
|
+
has_rdoc: true
|
143
|
+
homepage: http://github.com/burtlo/yard-cucumber
|
144
|
+
licenses: []
|
145
|
+
|
146
|
+
post_install_message: "\n\
|
147
|
+
(::) (::) (::) (::) (::) (::) (::) (::) (::) (::) (::) (::) (::) (::) (::)\n\n Thank you for installing yard-cucumber 2.0.0 / 2011-02-08.\n \n Changes:\n \n * Cucumber In The YARD becomes `yard-cucumber` and with that gains the\n benefits of being a YARD plugin\n \n\n\
|
148
|
+
(::) (::) (::) (::) (::) (::) (::) (::) (::) (::) (::) (::) (::) (::) (::)\n\n"
|
149
|
+
rdoc_options:
|
150
|
+
- --charset=UTF-8
|
151
|
+
require_paths:
|
152
|
+
- lib
|
153
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
154
|
+
none: false
|
155
|
+
requirements:
|
156
|
+
- - ">="
|
157
|
+
- !ruby/object:Gem::Version
|
158
|
+
version: "0"
|
159
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
160
|
+
none: false
|
161
|
+
requirements:
|
162
|
+
- - ">="
|
163
|
+
- !ruby/object:Gem::Version
|
164
|
+
version: "0"
|
165
|
+
requirements: []
|
166
|
+
|
167
|
+
rubyforge_project:
|
168
|
+
rubygems_version: 1.5.0
|
169
|
+
signing_key:
|
170
|
+
specification_version: 3
|
171
|
+
summary: Cucumber Features in YARD
|
172
|
+
test_files: []
|
173
|
+
|