module Markdown::Testsuite
Constants
- SPEC_PATH
- VERSION
Public Class Methods
list(filter_by=:core)
click to toggle source
Public: Lists all available tests or extensions
filter_by - The extension as a Symbol
Examples
Markdown::Testsuite.list # => ["2-paragraphs-hard-return-spaces", "2-paragraphs-hard-return", ...] Markdown::Testsuite.list :extensions # => ["gfm", "kramdown", "multimarkdown", "pandoc", "redcarpet"] Markdown::Testsuite.list :kramdown # => ["fenced-code-block", "utf8"]
Returns the an Array.
# File lib/markdown-testsuite.rb, line 22 def self.list(filter_by=:core) tests = [] if filter_by == :core Dir.glob("#{SPEC_PATH}/*.md").each do |file| file[/specification\/(.+?).md/] tests << $1 end else extensions = Dir.glob("#{SPEC_PATH}/extensions/*").map do |file| if File.directory? file file[/specification\/extensions\/(.+?)$/] $1 end end extensions.compact!.uniq! if filter_by == :extensions tests = extensions elsif Dir.glob("#{SPEC_PATH}/extensions/#{filter_by.to_s}/*.md").each do |file| file[/specification\/extensions\/#{filter_by.to_s}\/(.+?).md/] tests << $1 end end end tests end
test(rule, ext=nil)
click to toggle source
Public: Creates a test object for a rule
rule - A String naming the rule ext - A Symbol naming the extension
Examples
Markdown::Testsuite.test 'img-title' # => #<Markdown::Testsuite::Test:0x007fc633986240 Markdown::Testsuite.test 'uf8', :gfm # => #<Markdown::Testsuite::Test:0x007fc553986240
Returns a Test
object.
# File lib/markdown-testsuite.rb, line 66 def self.test(rule, ext=nil) Markdown::Testsuite::Test.new rule, ext end