Class: MarkdownExec::TestMDoc

Inherits:
Minitest::Test
  • Object
show all
Defined in:
lib/mdoc.rb

Instance Method Summary collapse

Instance Method Details

#setupObject



592
593
594
595
596
597
598
599
600
601
# File 'lib/mdoc.rb', line 592

def setup
  @table = [
    { oname: 'block1', body: ['code for block1'], reqs: ['block2'] },
    { oname: 'block2', body: ['code for block2'], reqs: nil },
    { oname: 'block3', body: ['code for block3'], reqs: ['block1'] }
  ].map do |row|
    FCB.new(nickname: nil, **row)
  end
  @doc = MDoc.new(@table)
end

#test_collect_block_dependenciesObject



611
612
613
614
615
616
617
618
619
# File 'lib/mdoc.rb', line 611

def test_collect_block_dependencies
  result = @doc.collect_block_dependencies(anyname: 'block3')[:blocks]
  expected_result = [@table[0], @table[1], @table[2]]
  assert_equal expected_result, result

  assert_raises(RuntimeError) do
    @doc.collect_block_dependencies(anyname: 'missing_block')
  end
end

#test_fcbs_per_optionsObject



629
630
631
632
633
634
# File 'lib/mdoc.rb', line 629

def test_fcbs_per_options
  opts = { hide_blocks_by_name: true,
           block_name_hidden_match: 'block1' }
  result = @doc.fcbs_per_options(opts)
  assert_equal [@table[1], @table[2]], result
end

#test_get_block_by_nameObject



603
604
605
606
607
608
609
# File 'lib/mdoc.rb', line 603

def test_get_block_by_name
  result = @doc.get_block_by_anyname('block1')
  assert_equal @table[0], result

  result_missing = @doc.get_block_by_anyname('missing_block')
  assert_equal({}, result_missing)
end

#test_hide_menu_block_on_nameObject

broken test



621
622
623
624
625
626
627
# File 'lib/mdoc.rb', line 621

def test_hide_menu_block_on_name
  opts = { hide_blocks_by_name: true,
           block_name_hidden_match: 'block1' }
  block = FCB.new(s2title: 'block1')
  result = @doc.hide_menu_block_on_name(opts, block)
  assert result # this should be true based on the given logic
end

#test_recursively_requiredObject

broken test



636
637
638
639
640
641
642
643
644
645
# File 'lib/mdoc.rb', line 636

def test_recursively_required
  result = @doc.recursively_required_hash('block3')
  assert_equal ({ 'block3' => ['block1'],
                  'block1' => ['block2'],
                  'block2' => [nil] }),
               result

  result_no_reqs = @doc.recursively_required_hash(nil)
  assert_equal ({}), result_no_reqs
end