module Lab42::Literate::GroupDoctest
Constants
- Ex
Public Instance Methods
doctest(filename)
click to toggle source
# File lib/lab42/literate/group_doctest.rb, line 5 def doctest filename blocks = Ex .extract(File.readlines(filename)) setups, examples = blocks.partition(&:given?) setups.each{ |setup| make_setup filename, setup } examples.each{ |example| make_context filename, example } end
Private Instance Methods
make_context(filename, example)
click to toggle source
# File lib/lab42/literate/group_doctest.rb, line 16 def make_context filename, example return if example.lines.empty? title = example.get_title "literate block in #{filename}:#{example.range.inspect}" context title do it do eval(example.lines.join("\n")) end end end
make_setup(filename, setup)
click to toggle source
# File lib/lab42/literate/group_doctest.rb, line 26 def make_setup filename, setup eval(setup.lines.join("\n")) end