(PDOC-3) Rename face to strings instead of yardoc
Since we don't want the name of the tool to reflect the fact that it is using yard internally (this is an implementation detail), rename the face to `strings`. Now when one wishes to generate documentation, `puppet strings` will be used rather than `puppet yardoc`.
This commit is contained in:
parent
376ceb762c
commit
ec0e26e339
|
@ -1,4 +1,4 @@
|
||||||
Puppet YARDoc
|
Puppet Strings
|
||||||
=============
|
=============
|
||||||
|
|
||||||
A Puppet Face and plugin built on the [YARD Documentation Tool](http://yardoc.org/) and Puppet Future Parser.
|
A Puppet Face and plugin built on the [YARD Documentation Tool](http://yardoc.org/) and Puppet Future Parser.
|
||||||
|
@ -23,13 +23,13 @@ Usage
|
||||||
Documenting a module:
|
Documenting a module:
|
||||||
|
|
||||||
cd /path/to/module
|
cd /path/to/module
|
||||||
puppet yardoc
|
puppet strings
|
||||||
|
|
||||||
This processes `README` and everything in `manifests/**/*.pp`.
|
This processes `README` and everything in `manifests/**/*.pp`.
|
||||||
|
|
||||||
Documenting specific manifests:
|
Documenting specific manifests:
|
||||||
|
|
||||||
puppet yardoc some_manifest.pp [another_if_you_feel_like_it.pp]
|
puppet strings some_manifest.pp [another_if_you_feel_like_it.pp]
|
||||||
|
|
||||||
Processing is delegated to the `yardoc` tool so some options listed in `yard help doc` are available.
|
Processing is delegated to the `yardoc` tool so some options listed in `yard help doc` are available.
|
||||||
However, Puppet Faces do not support passing arbitrary options through a face so these options must be specified in a `.yardopts` file.
|
However, Puppet Faces do not support passing arbitrary options through a face so these options must be specified in a `.yardopts` file.
|
||||||
|
|
|
@ -0,0 +1,4 @@
|
||||||
|
require 'puppet/application/face_base'
|
||||||
|
|
||||||
|
class Puppet::Application::Strings < Puppet::Application::FaceBase
|
||||||
|
end
|
|
@ -1,4 +0,0 @@
|
||||||
require 'puppet/application/face_base'
|
|
||||||
|
|
||||||
class Puppet::Application::Yardoc < Puppet::Application::FaceBase
|
|
||||||
end
|
|
|
@ -1,6 +1,6 @@
|
||||||
require 'puppet/face'
|
require 'puppet/face'
|
||||||
|
|
||||||
Puppet::Face.define(:yardoc, '0.0.1') do
|
Puppet::Face.define(:strings, '0.0.1') do
|
||||||
summary "Generate Puppet documentation with YARD."
|
summary "Generate Puppet documentation with YARD."
|
||||||
|
|
||||||
def check_required_features
|
def check_required_features
|
||||||
|
@ -54,7 +54,7 @@ Puppet::Face.define(:yardoc, '0.0.1') do
|
||||||
yard_args = (args.empty? ? MODULE_SOURCEFILES : args)
|
yard_args = (args.empty? ? MODULE_SOURCEFILES : args)
|
||||||
merge_puppet_args!(yard_args)
|
merge_puppet_args!(yard_args)
|
||||||
|
|
||||||
require 'puppetx/yardoc/yard/plugin'
|
require 'puppetx/strings/yard/plugin'
|
||||||
|
|
||||||
# Hand off to YARD for further processing.
|
# Hand off to YARD for further processing.
|
||||||
YARD::CLI::Yardoc.run(*yard_args)
|
YARD::CLI::Yardoc.run(*yard_args)
|
||||||
|
@ -71,7 +71,7 @@ Puppet::Face.define(:yardoc, '0.0.1') do
|
||||||
|
|
||||||
when_invoked do |*args|
|
when_invoked do |*args|
|
||||||
check_required_features
|
check_required_features
|
||||||
require 'puppetx/yardoc/yard/plugin'
|
require 'puppetx/strings/yard/plugin'
|
||||||
opts = args.pop
|
opts = args.pop
|
||||||
|
|
||||||
# NOTE: The retrun value of the `module` Face seems to have changed in
|
# NOTE: The retrun value of the `module` Face seems to have changed in
|
||||||
|
@ -105,13 +105,13 @@ Puppet::Face.define(:yardoc, '0.0.1') do
|
||||||
|
|
||||||
when_invoked do |*args|
|
when_invoked do |*args|
|
||||||
check_required_features
|
check_required_features
|
||||||
require 'puppetx/yardoc/yard/plugin'
|
require 'puppetx/strings/yard/plugin'
|
||||||
opts = args.pop
|
opts = args.pop
|
||||||
|
|
||||||
# FIXME: This is pretty inefficient as it forcibly re-generates the YARD
|
# FIXME: This is pretty inefficient as it forcibly re-generates the YARD
|
||||||
# indicies each time the server is started. However, it ensures things are
|
# indicies each time the server is started. However, it ensures things are
|
||||||
# generated properly.
|
# generated properly.
|
||||||
module_list = Puppet::Face[:yardoc, :current].modules
|
module_list = Puppet::Face[:strings, :current].modules
|
||||||
|
|
||||||
module_tuples = module_list.map do |mod|
|
module_tuples = module_list.map do |mod|
|
||||||
name = (mod.forge_name || mod.name).gsub('/', '-')
|
name = (mod.forge_name || mod.name).gsub('/', '-')
|
|
@ -1,7 +1,7 @@
|
||||||
require 'puppetx'
|
require 'puppetx'
|
||||||
|
|
||||||
# Nothing to see here except forward declarations.
|
# Nothing to see here except forward declarations.
|
||||||
module Puppetx::Yardoc
|
module Puppetx::Strings
|
||||||
# This submodule contains bits that interface with the YARD plugin system.
|
# This submodule contains bits that interface with the YARD plugin system.
|
||||||
module YARD
|
module YARD
|
||||||
end
|
end
|
|
@ -1,9 +1,9 @@
|
||||||
require 'ostruct'
|
require 'ostruct'
|
||||||
require 'puppet/pops'
|
require 'puppet/pops'
|
||||||
|
|
||||||
require_relative '../../yardoc'
|
require_relative '../../strings'
|
||||||
|
|
||||||
module Puppetx::Yardoc::Pops
|
module Puppetx::Strings::Pops
|
||||||
# An adapter class that conforms a Pops model instance + adapters to the
|
# An adapter class that conforms a Pops model instance + adapters to the
|
||||||
# interface expected by YARD handlers.
|
# interface expected by YARD handlers.
|
||||||
#
|
#
|
|
@ -1,9 +1,9 @@
|
||||||
require 'puppet/pops'
|
require 'puppet/pops'
|
||||||
|
|
||||||
require_relative '../../yardoc'
|
require_relative '../../strings'
|
||||||
require_relative 'yard_statement'
|
require_relative 'yard_statement'
|
||||||
|
|
||||||
module Puppetx::Yardoc::Pops
|
module Puppetx::Strings::Pops
|
||||||
# Loosely based on the TreeDumper classes in Pops::Model. The responsibility of
|
# Loosely based on the TreeDumper classes in Pops::Model. The responsibility of
|
||||||
# this class is to walk a Pops::Model and output objects that can be consumed
|
# this class is to walk a Pops::Model and output objects that can be consumed
|
||||||
# by YARD handlers.
|
# by YARD handlers.
|
|
@ -2,7 +2,7 @@ require 'puppet/pops'
|
||||||
|
|
||||||
require_relative 'puppet_namespace_object'
|
require_relative 'puppet_namespace_object'
|
||||||
|
|
||||||
module Puppetx::Yardoc::YARD::CodeObjects
|
module Puppetx::Strings::YARD::CodeObjects
|
||||||
class DefinedTypeObject < PuppetNamespaceObject
|
class DefinedTypeObject < PuppetNamespaceObject
|
||||||
# A list of parameters attached to this class.
|
# A list of parameters attached to this class.
|
||||||
# @return [Array<Array(String, String)>]
|
# @return [Array<Array(String, String)>]
|
|
@ -1,6 +1,6 @@
|
||||||
require_relative 'defined_type_object'
|
require_relative 'defined_type_object'
|
||||||
|
|
||||||
module Puppetx::Yardoc::YARD::CodeObjects
|
module Puppetx::Strings::YARD::CodeObjects
|
||||||
class HostClassObject < DefinedTypeObject
|
class HostClassObject < DefinedTypeObject
|
||||||
# The {HostClassObject} that this class inherits from, if any.
|
# The {HostClassObject} that this class inherits from, if any.
|
||||||
# @return [HostClassObject, Proxy, nil]
|
# @return [HostClassObject, Proxy, nil]
|
|
@ -1,8 +1,8 @@
|
||||||
require 'yard'
|
require 'yard'
|
||||||
|
|
||||||
require_relative '../../../yardoc'
|
require_relative '../../../strings'
|
||||||
|
|
||||||
module Puppetx::Yardoc::YARD::CodeObjects
|
module Puppetx::Strings::YARD::CodeObjects
|
||||||
class PuppetNamespaceObject < YARD::CodeObjects::NamespaceObject
|
class PuppetNamespaceObject < YARD::CodeObjects::NamespaceObject
|
||||||
# NOTE: `YARD::Registry#resolve` requires a method with this signature to
|
# NOTE: `YARD::Registry#resolve` requires a method with this signature to
|
||||||
# be present on all subclasses of `NamespaceObject`.
|
# be present on all subclasses of `NamespaceObject`.
|
|
@ -1,15 +1,15 @@
|
||||||
require 'yard'
|
require 'yard'
|
||||||
require 'puppet/pops'
|
require 'puppet/pops'
|
||||||
|
|
||||||
require_relative '../../../yardoc'
|
require_relative '../../../strings'
|
||||||
require_relative '../code_objects'
|
require_relative '../code_objects'
|
||||||
|
|
||||||
module Puppetx::Yardoc::YARD::Handlers
|
module Puppetx::Strings::YARD::Handlers
|
||||||
class Base < YARD::Handlers::Base
|
class Base < YARD::Handlers::Base
|
||||||
# Easy access to Pops model objects for handler matching.
|
# Easy access to Pops model objects for handler matching.
|
||||||
include Puppet::Pops::Model
|
include Puppet::Pops::Model
|
||||||
# Easy access to custom code objects from which documentation is generated.
|
# Easy access to custom code objects from which documentation is generated.
|
||||||
include Puppetx::Yardoc::YARD::CodeObjects
|
include Puppetx::Strings::YARD::CodeObjects
|
||||||
|
|
||||||
def self.handles?(statement)
|
def self.handles?(statement)
|
||||||
handlers.any? {|h| h == statement.type}
|
handlers.any? {|h| h == statement.type}
|
|
@ -1,6 +1,6 @@
|
||||||
require_relative 'base'
|
require_relative 'base'
|
||||||
|
|
||||||
module Puppetx::Yardoc::YARD::Handlers
|
module Puppetx::Strings::YARD::Handlers
|
||||||
class DefinedTypeHandler < Base
|
class DefinedTypeHandler < Base
|
||||||
handles ResourceTypeDefinition
|
handles ResourceTypeDefinition
|
||||||
|
|
|
@ -1,11 +1,11 @@
|
||||||
require_relative '../code_objects'
|
require_relative '../code_objects'
|
||||||
|
|
||||||
module Puppetx::Yardoc::YARD::Handlers
|
module Puppetx::Strings::YARD::Handlers
|
||||||
# Handles `dispatch` calls within a future parser function declaration. For
|
# Handles `dispatch` calls within a future parser function declaration. For
|
||||||
# now, it just treats any docstring as an `@overlaod` tag and attaches the
|
# now, it just treats any docstring as an `@overlaod` tag and attaches the
|
||||||
# overload to the parent function.
|
# overload to the parent function.
|
||||||
class FutureParserDispatchHandler < YARD::Handlers::Ruby::Base
|
class FutureParserDispatchHandler < YARD::Handlers::Ruby::Base
|
||||||
include Puppetx::Yardoc::YARD::CodeObjects
|
include Puppetx::Strings::YARD::CodeObjects
|
||||||
|
|
||||||
handles method_call(:dispatch)
|
handles method_call(:dispatch)
|
||||||
|
|
||||||
|
@ -22,7 +22,7 @@ module Puppetx::Yardoc::YARD::Handlers
|
||||||
end
|
end
|
||||||
|
|
||||||
class FutureParserFunctionHandler < YARD::Handlers::Ruby::Base
|
class FutureParserFunctionHandler < YARD::Handlers::Ruby::Base
|
||||||
include Puppetx::Yardoc::YARD::CodeObjects
|
include Puppetx::Strings::YARD::CodeObjects
|
||||||
|
|
||||||
handles method_call(:create_function)
|
handles method_call(:create_function)
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
require_relative 'base'
|
require_relative 'base'
|
||||||
|
|
||||||
module Puppetx::Yardoc::YARD::Handlers
|
module Puppetx::Strings::YARD::Handlers
|
||||||
class HostClassHandler < Base
|
class HostClassHandler < Base
|
||||||
handles HostClassDefinition
|
handles HostClassDefinition
|
||||||
|
|
|
@ -3,9 +3,9 @@ require 'puppet/util/docs'
|
||||||
|
|
||||||
require_relative '../code_objects'
|
require_relative '../code_objects'
|
||||||
|
|
||||||
module Puppetx::Yardoc::YARD::Handlers
|
module Puppetx::Strings::YARD::Handlers
|
||||||
class ParserFunctionHandler < YARD::Handlers::Ruby::Base
|
class ParserFunctionHandler < YARD::Handlers::Ruby::Base
|
||||||
include Puppetx::Yardoc::YARD::CodeObjects
|
include Puppetx::Strings::YARD::CodeObjects
|
||||||
|
|
||||||
handles method_call(:newfunction)
|
handles method_call(:newfunction)
|
||||||
|
|
|
@ -1,10 +1,10 @@
|
||||||
require 'yard'
|
require 'yard'
|
||||||
require 'puppet/pops'
|
require 'puppet/pops'
|
||||||
|
|
||||||
require_relative '../../yardoc'
|
require_relative '../../strings'
|
||||||
require_relative '../pops/yard_transformer'
|
require_relative '../pops/yard_transformer'
|
||||||
|
|
||||||
module Puppetx::Yardoc::YARD
|
module Puppetx::Strings::YARD
|
||||||
class PuppetParser < YARD::Parser::Base
|
class PuppetParser < YARD::Parser::Base
|
||||||
attr_reader :file, :source
|
attr_reader :file, :source
|
||||||
|
|
||||||
|
@ -13,7 +13,7 @@ module Puppetx::Yardoc::YARD
|
||||||
@file = filename
|
@file = filename
|
||||||
|
|
||||||
@parser = Puppet::Pops::Parser::Parser.new()
|
@parser = Puppet::Pops::Parser::Parser.new()
|
||||||
@transformer = Puppetx::Yardoc::Pops::YARDTransformer.new()
|
@transformer = Puppetx::Strings::Pops::YARDTransformer.new()
|
||||||
end
|
end
|
||||||
|
|
||||||
def parse
|
def parse
|
|
@ -10,10 +10,10 @@ require_relative 'parser'
|
||||||
require_relative 'handlers'
|
require_relative 'handlers'
|
||||||
|
|
||||||
YARD::Parser::SourceParser.register_parser_type(:puppet,
|
YARD::Parser::SourceParser.register_parser_type(:puppet,
|
||||||
Puppetx::Yardoc::YARD::PuppetParser,
|
Puppetx::Strings::YARD::PuppetParser,
|
||||||
['pp'])
|
['pp'])
|
||||||
YARD::Handlers::Processor.register_handler_namespace(:puppet,
|
YARD::Handlers::Processor.register_handler_namespace(:puppet,
|
||||||
Puppetx::Yardoc::YARD::Handlers)
|
Puppetx::Strings::YARD::Handlers)
|
||||||
|
|
||||||
# FIXME: Might not be the best idea to have the template code on the Ruby
|
# FIXME: Might not be the best idea to have the template code on the Ruby
|
||||||
# LOAD_PATH as the contents of this directory really aren't library code.
|
# LOAD_PATH as the contents of this directory really aren't library code.
|
|
@ -1,10 +1,10 @@
|
||||||
{
|
{
|
||||||
"name": "sharpie-puppet_yardoc",
|
"name": "puppetlabs-strings",
|
||||||
"version": "0.0.1",
|
"version": "0.0.1",
|
||||||
"author": "Charlie Sharpsteen",
|
"author": "Puppet Labs",
|
||||||
"summary": "Puppet documentation via YARD",
|
"summary": "Puppet documentation via YARD",
|
||||||
"license": "Apache 2.0",
|
"license": "Apache 2.0",
|
||||||
"source": "",
|
"source": "https://github.com/puppetlabs/puppetlabs-strings",
|
||||||
"project_page": null,
|
"project_page": null,
|
||||||
"issues_url": null,
|
"issues_url": null,
|
||||||
"requirements": [
|
"requirements": [
|
||||||
|
|
|
@ -6,7 +6,7 @@ require 'puppet'
|
||||||
require 'rspec'
|
require 'rspec'
|
||||||
|
|
||||||
# This is neeeded so we can access a Registry if YARD creates one
|
# This is neeeded so we can access a Registry if YARD creates one
|
||||||
require 'puppetx/yardoc/yard/plugin'
|
require 'puppetx/strings/yard/plugin'
|
||||||
include YARD
|
include YARD
|
||||||
|
|
||||||
RSpec.configure do |config|
|
RSpec.configure do |config|
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
require 'spec_helper'
|
require 'spec_helper'
|
||||||
require 'puppet/face/yardoc'
|
require 'puppet/face/strings'
|
||||||
require 'rspec-html-matchers'
|
require 'rspec-html-matchers'
|
||||||
require 'tmpdir'
|
require 'tmpdir'
|
||||||
require 'stringio'
|
require 'stringio'
|
||||||
|
@ -9,26 +9,26 @@ describe Puppet::Face do
|
||||||
describe "YARDoc action" do
|
describe "YARDoc action" do
|
||||||
it "should raise an error if yard is absent" do
|
it "should raise an error if yard is absent" do
|
||||||
Puppet.features.stubs(:yard?).returns(false)
|
Puppet.features.stubs(:yard?).returns(false)
|
||||||
expect{Puppet::Face[:yardoc, :current].yardoc}.to raise_error(RuntimeError, "The 'yard' gem must be installed in order to use this face.")
|
expect{Puppet::Face[:strings, :current].yardoc}.to raise_error(RuntimeError, "The 'yard' gem must be installed in order to use this face.")
|
||||||
end
|
end
|
||||||
|
|
||||||
it "should raise an error if rgen is absent" do
|
it "should raise an error if rgen is absent" do
|
||||||
Puppet.features.stubs(:rgen?).returns(false)
|
Puppet.features.stubs(:rgen?).returns(false)
|
||||||
expect{Puppet::Face[:yardoc, :current].yardoc}.to raise_error(RuntimeError, "The 'rgen' gem must be installed in order to use this face.")
|
expect{Puppet::Face[:strings, :current].yardoc}.to raise_error(RuntimeError, "The 'rgen' gem must be installed in order to use this face.")
|
||||||
end
|
end
|
||||||
|
|
||||||
it "should raise an error if the Ruby verion is less than 1.9", :if => RUBY_VERSION.match(/^1\.8/) do
|
it "should raise an error if the Ruby verion is less than 1.9", :if => RUBY_VERSION.match(/^1\.8/) do
|
||||||
expect{Puppet::Face[:yardoc, :current].yardoc}.to raise_error(RuntimeError, "This face requires Ruby 1.9 or greater.")
|
expect{Puppet::Face[:strings, :current].yardoc}.to raise_error(RuntimeError, "This face requires Ruby 1.9 or greater.")
|
||||||
end
|
end
|
||||||
|
|
||||||
it "should invoke Yardoc with MODULE_SOURCEFILES if no arguments are provided" do
|
it "should invoke Yardoc with MODULE_SOURCEFILES if no arguments are provided" do
|
||||||
YARD::CLI::Yardoc.expects(:run).with('manifests/**/*.pp', 'lib/**/*.rb')
|
YARD::CLI::Yardoc.expects(:run).with('manifests/**/*.pp', 'lib/**/*.rb')
|
||||||
Puppet::Face[:yardoc, :current].yardoc
|
Puppet::Face[:strings, :current].yardoc
|
||||||
end
|
end
|
||||||
|
|
||||||
it "should invoke Yardoc with provided arguments" do
|
it "should invoke Yardoc with provided arguments" do
|
||||||
YARD::CLI::Yardoc.expects(:run).with('--debug', 'some_file.rb')
|
YARD::CLI::Yardoc.expects(:run).with('--debug', 'some_file.rb')
|
||||||
Puppet::Face[:yardoc, :current].yardoc('--debug', 'some_file.rb')
|
Puppet::Face[:strings, :current].yardoc('--debug', 'some_file.rb')
|
||||||
end
|
end
|
||||||
|
|
||||||
describe "when generating HTML for documentation" do
|
describe "when generating HTML for documentation" do
|
||||||
|
@ -39,7 +39,7 @@ describe Puppet::Face do
|
||||||
using_module('test') do |tmp|
|
using_module('test') do |tmp|
|
||||||
Dir.chdir('test')
|
Dir.chdir('test')
|
||||||
|
|
||||||
Puppet::Face[:yardoc, :current].yardoc
|
Puppet::Face[:strings, :current].yardoc
|
||||||
|
|
||||||
expect(read_html(tmp, 'test', 'test.html')).to have_tag('.docstring .discussion', :text => /This class/)
|
expect(read_html(tmp, 'test', 'test.html')).to have_tag('.docstring .discussion', :text => /This class/)
|
||||||
end
|
end
|
||||||
|
@ -49,7 +49,7 @@ describe Puppet::Face do
|
||||||
using_module('test') do |tmp|
|
using_module('test') do |tmp|
|
||||||
Dir.chdir('test')
|
Dir.chdir('test')
|
||||||
|
|
||||||
Puppet::Face[:yardoc, :current].yardoc
|
Puppet::Face[:strings, :current].yardoc
|
||||||
|
|
||||||
expect(read_html(tmp, 'test', 'ParserFunctions.html')).to have_tag('.docstring .discussion', :text => /documentation for `function3x`/)
|
expect(read_html(tmp, 'test', 'ParserFunctions.html')).to have_tag('.docstring .discussion', :text => /documentation for `function3x`/)
|
||||||
end
|
end
|
||||||
|
@ -59,7 +59,7 @@ describe Puppet::Face do
|
||||||
using_module('test') do |tmp|
|
using_module('test') do |tmp|
|
||||||
Dir.chdir('test')
|
Dir.chdir('test')
|
||||||
|
|
||||||
Puppet::Face[:yardoc, :current].yardoc
|
Puppet::Face[:strings, :current].yardoc
|
||||||
|
|
||||||
expect(read_html(tmp, 'test', 'test.html')).to have_tag('.docstring .discussion', :text => /This class/)
|
expect(read_html(tmp, 'test', 'test.html')).to have_tag('.docstring .discussion', :text => /This class/)
|
||||||
end
|
end
|
||||||
|
@ -70,32 +70,32 @@ describe Puppet::Face do
|
||||||
describe "modules action" do
|
describe "modules action" do
|
||||||
it "should raise an error if yard is absent" do
|
it "should raise an error if yard is absent" do
|
||||||
Puppet.features.stubs(:yard?).returns(false)
|
Puppet.features.stubs(:yard?).returns(false)
|
||||||
expect{Puppet::Face[:yardoc, :current].modules}.to raise_error(RuntimeError, "The 'yard' gem must be installed in order to use this face.")
|
expect{Puppet::Face[:strings, :current].modules}.to raise_error(RuntimeError, "The 'yard' gem must be installed in order to use this face.")
|
||||||
end
|
end
|
||||||
|
|
||||||
it "should raise an error if rgen is absent" do
|
it "should raise an error if rgen is absent" do
|
||||||
Puppet.features.stubs(:rgen?).returns(false)
|
Puppet.features.stubs(:rgen?).returns(false)
|
||||||
expect{Puppet::Face[:yardoc, :current].modules}.to raise_error(RuntimeError, "The 'rgen' gem must be installed in order to use this face.")
|
expect{Puppet::Face[:strings, :current].modules}.to raise_error(RuntimeError, "The 'rgen' gem must be installed in order to use this face.")
|
||||||
end
|
end
|
||||||
|
|
||||||
it "should raise an error if the Ruby version is less than 1.9", :if => RUBY_VERSION.match(/^1\.8/) do
|
it "should raise an error if the Ruby version is less than 1.9", :if => RUBY_VERSION.match(/^1\.8/) do
|
||||||
expect{Puppet::Face[:yardoc, :current].modules}.to raise_error(RuntimeError, "This face requires Ruby 1.9 or greater.")
|
expect{Puppet::Face[:strings, :current].modules}.to raise_error(RuntimeError, "This face requires Ruby 1.9 or greater.")
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
describe "server action" do
|
describe "server action" do
|
||||||
it "should raise an error if yard is absent" do
|
it "should raise an error if yard is absent" do
|
||||||
Puppet.features.stubs(:yard?).returns(false)
|
Puppet.features.stubs(:yard?).returns(false)
|
||||||
expect{Puppet::Face[:yardoc, :current].server}.to raise_error(RuntimeError, "The 'yard' gem must be installed in order to use this face.")
|
expect{Puppet::Face[:strings, :current].server}.to raise_error(RuntimeError, "The 'yard' gem must be installed in order to use this face.")
|
||||||
end
|
end
|
||||||
|
|
||||||
it "should raise an error if rgen is absent" do
|
it "should raise an error if rgen is absent" do
|
||||||
Puppet.features.stubs(:rgen?).returns(false)
|
Puppet.features.stubs(:rgen?).returns(false)
|
||||||
expect{Puppet::Face[:yardoc, :current].server}.to raise_error(RuntimeError, "The 'rgen' gem must be installed in order to use this face.")
|
expect{Puppet::Face[:strings, :current].server}.to raise_error(RuntimeError, "The 'rgen' gem must be installed in order to use this face.")
|
||||||
end
|
end
|
||||||
|
|
||||||
it "should raise an error if the Ruby version is less than 1.9", :if => RUBY_VERSION.match(/^1\.8/) do
|
it "should raise an error if the Ruby version is less than 1.9", :if => RUBY_VERSION.match(/^1\.8/) do
|
||||||
expect{Puppet::Face[:yardoc, :current].server}.to raise_error(RuntimeError, "This face requires Ruby 1.9 or greater.")
|
expect{Puppet::Face[:strings, :current].server}.to raise_error(RuntimeError, "This face requires Ruby 1.9 or greater.")
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
@ -1,13 +1,13 @@
|
||||||
require 'spec_helper'
|
require 'spec_helper'
|
||||||
require 'puppetx/yardoc/pops/yard_statement'
|
require 'puppetx/strings/pops/yard_statement'
|
||||||
|
|
||||||
describe Puppetx::Yardoc::Pops do
|
describe Puppetx::Strings::Pops do
|
||||||
let(:parser) {Puppet::Pops::Parser::Parser.new()}
|
let(:parser) {Puppet::Pops::Parser::Parser.new()}
|
||||||
|
|
||||||
describe "YARDstatement class" do
|
describe "YARDstatement class" do
|
||||||
let(:manifest) {"#hello world\nclass foo { }"}
|
let(:manifest) {"#hello world\nclass foo { }"}
|
||||||
let(:model) {parser.parse_string(manifest).current.definitions.first}
|
let(:model) {parser.parse_string(manifest).current.definitions.first}
|
||||||
let(:test_statement) {Puppetx::Yardoc::Pops::YARDStatement.new(model)}
|
let(:test_statement) {Puppetx::Strings::Pops::YARDStatement.new(model)}
|
||||||
|
|
||||||
describe "when creating a new instance of YARDStatement" do
|
describe "when creating a new instance of YARDStatement" do
|
||||||
it "should extract comments from the source code" do
|
it "should extract comments from the source code" do
|
||||||
|
@ -19,13 +19,13 @@ describe Puppetx::Yardoc::Pops do
|
||||||
describe "YARDTransfomer class" do
|
describe "YARDTransfomer class" do
|
||||||
let(:manifest) {"#hello world\nclass foo($bar) { }"}
|
let(:manifest) {"#hello world\nclass foo($bar) { }"}
|
||||||
let(:manifest_default) {"#hello world\nclass foo($bar = 3) { }"}
|
let(:manifest_default) {"#hello world\nclass foo($bar = 3) { }"}
|
||||||
let(:transformer) {Puppetx::Yardoc::Pops::YARDTransformer.new}
|
let(:transformer) {Puppetx::Strings::Pops::YARDTransformer.new}
|
||||||
|
|
||||||
describe "transform method" do
|
describe "transform method" do
|
||||||
it "should perform the correct transformation with parameter defaults" do
|
it "should perform the correct transformation with parameter defaults" do
|
||||||
model = parser.parse_string(manifest_default).current.definitions.first
|
model = parser.parse_string(manifest_default).current.definitions.first
|
||||||
statements = transformer.transform(model)
|
statements = transformer.transform(model)
|
||||||
expect(statements.parameters[0][0].class).to be(Puppetx::Yardoc::Pops::YARDStatement)
|
expect(statements.parameters[0][0].class).to be(Puppetx::Strings::Pops::YARDStatement)
|
||||||
end
|
end
|
||||||
|
|
||||||
it "should perform the correct transofmration without parameter defaults" do
|
it "should perform the correct transofmration without parameter defaults" do
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
require 'spec_helper'
|
require 'spec_helper'
|
||||||
require 'puppetx/yardoc/yard/handlers/defined_type_handler'
|
require 'puppetx/strings/yard/handlers/defined_type_handler'
|
||||||
require 'strings_spec/parsing'
|
require 'strings_spec/parsing'
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
require 'spec_helper'
|
require 'spec_helper'
|
||||||
require 'puppetx/yardoc/yard/handlers/future_parser_function_handler'
|
require 'puppetx/strings/yard/handlers/future_parser_function_handler'
|
||||||
require 'strings_spec/parsing'
|
require 'strings_spec/parsing'
|
||||||
|
|
||||||
describe "FutureParserDispatchHandler" do
|
describe "FutureParserDispatchHandler" do
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
require 'spec_helper'
|
require 'spec_helper'
|
||||||
require 'puppetx/yardoc/yard/handlers/host_class_handler'
|
require 'puppetx/strings/yard/handlers/host_class_handler'
|
||||||
require 'strings_spec/parsing'
|
require 'strings_spec/parsing'
|
||||||
|
|
||||||
describe "HostClassDefintion" do
|
describe "HostClassDefintion" do
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
require 'spec_helper'
|
require 'spec_helper'
|
||||||
require 'puppetx/yardoc/yard/handlers/parser_function_handler'
|
require 'puppetx/strings/yard/handlers/parser_function_handler'
|
||||||
require 'strings_spec/parsing'
|
require 'strings_spec/parsing'
|
||||||
|
|
||||||
describe "ParserFunctionHanlder" do
|
describe "ParserFunctionHanlder" do
|
||||||
|
|
Loading…
Reference in New Issue