Class: MarkdownExec::TestMDoc

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

Instance Method Summary collapse

Instance Method Details

#setupObject



504
505
506
507
508
509
510
511
512
513
# File 'lib/mdoc.rb', line 504

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|
    OpenStruct.new(nickname: nil, **row)
  end
  @doc = MDoc.new(@table)
end

#test_collect_block_dependenciesObject



523
524
525
526
527
528
529
530
531
# File 'lib/mdoc.rb', line 523

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



541
542
543
544
545
# File 'lib/mdoc.rb', line 541

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



515
516
517
518
519
520
521
# File 'lib/mdoc.rb', line 515

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



533
534
535
536
537
538
539
# File 'lib/mdoc.rb', line 533

def test_hide_menu_block_on_name
  opts = { hide_blocks_by_name: true,
           block_name_hidden_match: 'block1' }
  block = FCB.new(oname: '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



547
548
549
550
551
552
553
554
# File 'lib/mdoc.rb', line 547

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