1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106
|
# frozen_string_literal: true
require_relative '../../test_helper'
class TestFakerMarkdown < Test::Unit::TestCase
def setup
@tester = Faker::Markdown
@random_method = random_method
end
def test_headers
test_trigger = @tester.headers.split
assert_equal(2, test_trigger.length)
assert_includes(test_trigger.first, '#')
end
def test_emphasis
test_trigger = @tester.emphasis.chars
assert(test_trigger.to_set.intersect?(['_', '~', '*', '**'].to_set))
end
def test_ordered_list
test_trigger = @tester.ordered_list.split("\n")
test_trigger.each do |line|
assert_instance_of(Integer, line[0].to_i)
end
end
def test_unordered_list
test_trigger = @tester.unordered_list.split("\n")
test_trigger.each do |line|
assert_equal('*', line[0])
end
end
def test_inline_code
test_trigger = @tester.inline_code.chars
assert_equal('`', test_trigger.first)
assert_equal('`', test_trigger.last)
end
def test_block_code
test_trigger = @tester.block_code.chars
assert_equal('`', test_trigger[0])
assert_equal('`', test_trigger[1])
assert_equal('`', test_trigger[2])
assert_equal('`', test_trigger[-1])
assert_equal('`', test_trigger[-2])
assert_equal('`', test_trigger[-3])
end
def test_table
test_trigger = @tester.table.split("\n")
test_trigger.each do |table_data|
assert_instance_of(String, table_data)
end
assert_equal(4, test_trigger.length)
assert_equal('---- | ---- | ----', test_trigger[1])
end
def test_random
test_trigger = @tester.random
assert_instance_of(String, test_trigger)
end
def test_random_with_a_randomly_excluded_method
excluded_method = @random_method
test_trigger = @tester.random(excluded_method)
20.times do
refute_equal(test_trigger, @tester.send(excluded_method))
end
end
def test_sandwich
test_trigger = @tester.sandwich
test_array = []
test_trigger.each_line { |substr| test_array << substr }
assert_operator(test_array.length, :>=, 3)
assert_equal(2, test_array[0].split.length)
assert_includes(test_array[0].split.first, '#')
assert_instance_of(String, test_array[0])
assert_instance_of(String, test_array[1])
assert_instance_of(String, test_array[2])
end
private
def random_method
method_list = Faker::Markdown.public_methods(false) - Faker::Base.methods
method_list[rand(0..(method_list.length - 1))]
end
end
|