def test_row(inner_column_border, outer_border):
    """Test inner borders.

    :param bool inner_column_border: Passed to table class.
    :param bool outer_border: Passed to table class.
    """
    table = BaseTable(SINGLE_LINE)
    table.inner_column_border = inner_column_border
    table.outer_border = outer_border
    outer_widths = max_dimensions(table.table_data, table.padding_left,
                                  table.padding_right)[2]

    # Determine expected.
    if inner_column_border and outer_border:
        expected = '+---------+-------+-----------+'
    elif inner_column_border:
        expected = '---------+-------+-----------'
    elif outer_border:
        expected = '+---------------------------+'
    else:
        expected = '---------------------------'

    # Test.
    actual = ''.join(table.horizontal_border('row', outer_widths))
    assert actual == expected
def test_heading_footing(inner_column_border, outer_border, style):
    """Test heading and footing borders.

    :param bool inner_column_border: Passed to table class.
    :param bool outer_border: Passed to table class.
    :param str style: Passed to method.
    """
    table = BaseTable(SINGLE_LINE)
    table.inner_column_border = inner_column_border
    table.outer_border = outer_border
    outer_widths = max_dimensions(table.table_data, table.padding_left,
                                  table.padding_right)[2]

    # Determine expected.
    if style == 'heading' and outer_border:
        expected = '+---------+-------+-----------+' if inner_column_border else '+---------------------------+'
    elif style == 'heading':
        expected = '---------+-------+-----------' if inner_column_border else '---------------------------'
    elif style == 'footing' and outer_border:
        expected = '+---------+-------+-----------+' if inner_column_border else '+---------------------------+'
    else:
        expected = '---------+-------+-----------' if inner_column_border else '---------------------------'

    # Test.
    actual = ''.join(table.horizontal_border(style, outer_widths))
    assert actual == expected
def test_heading_footing(inner_column_border, outer_border, style):
    """Test heading and footing borders.

    :param bool inner_column_border: Passed to table class.
    :param bool outer_border: Passed to table class.
    :param str style: Passed to method.
    """
    table = BaseTable(SINGLE_LINE)
    table.inner_column_border = inner_column_border
    table.outer_border = outer_border
    outer_widths = max_dimensions(table.table_data, table.padding_left, table.padding_right)[2]

    # Determine expected.
    if style == 'heading' and outer_border:
        expected = '+---------+-------+-----------+' if inner_column_border else '+---------------------------+'
    elif style == 'heading':
        expected = '---------+-------+-----------' if inner_column_border else '---------------------------'
    elif style == 'footing' and outer_border:
        expected = '+---------+-------+-----------+' if inner_column_border else '+---------------------------+'
    else:
        expected = '---------+-------+-----------' if inner_column_border else '---------------------------'

    # Test.
    actual = ''.join(table.horizontal_border(style, outer_widths))
    assert actual == expected
def test_top_bottom(inner_column_border, style):
    """Test top and bottom borders.

    :param bool inner_column_border: Passed to table class.
    :param str style: Passed to method.
    """
    table = BaseTable(SINGLE_LINE, 'Example')
    table.inner_column_border = inner_column_border
    outer_widths = max_dimensions(table.table_data, table.padding_left, table.padding_right)[2]

    # Determine expected.
    if style == 'top' and inner_column_border:
        expected = '+Example--+-------+-----------+'
    elif style == 'top':
        expected = '+Example--------------------+'
    elif style == 'bottom' and inner_column_border:
        expected = '+---------+-------+-----------+'
    else:
        expected = '+---------------------------+'

    # Test.
    actual = ''.join(table.horizontal_border(style, outer_widths))
    assert actual == expected
def test_top_bottom(inner_column_border, style):
    """Test top and bottom borders.

    :param bool inner_column_border: Passed to table class.
    :param str style: Passed to method.
    """
    table = BaseTable(SINGLE_LINE, 'Example')
    table.inner_column_border = inner_column_border
    outer_widths = max_dimensions(table.table_data, table.padding_left,
                                  table.padding_right)[2]

    # Determine expected.
    if style == 'top' and inner_column_border:
        expected = '+Example--+-------+-----------+'
    elif style == 'top':
        expected = '+Example--------------------+'
    elif style == 'bottom' and inner_column_border:
        expected = '+---------+-------+-----------+'
    else:
        expected = '+---------------------------+'

    # Test.
    actual = ''.join(table.horizontal_border(style, outer_widths))
    assert actual == expected
def test_row(inner_column_border, outer_border):
    """Test inner borders.

    :param bool inner_column_border: Passed to table class.
    :param bool outer_border: Passed to table class.
    """
    table = BaseTable(SINGLE_LINE)
    table.inner_column_border = inner_column_border
    table.outer_border = outer_border
    outer_widths = max_dimensions(table.table_data, table.padding_left, table.padding_right)[2]

    # Determine expected.
    if inner_column_border and outer_border:
        expected = '+---------+-------+-----------+'
    elif inner_column_border:
        expected = '---------+-------+-----------'
    elif outer_border:
        expected = '+---------------------------+'
    else:
        expected = '---------------------------'

    # Test.
    actual = ''.join(table.horizontal_border('row', outer_widths))
    assert actual == expected