draw_horizontal_line.js 1.07 KB
import table from './../../../src';
import expectTable from './expectTable';

describe('README.md usage/', () => {
  it('usage/draw_horizontal_line', () => {
    const data = [
      ['0A', '0B', '0C'],
      ['1A', '1B', '1C'],
      ['2A', '2B', '2C'],
      ['3A', '3B', '3C'],
      ['4A', '4B', '4C']
    ];

    const options = {
      /**
       * @typedef {Function} drawJoin
       * @param {number} index
       * @param {number} size
       * @returns {boolean}
       */
      drawHorizontalLine: (index, size) => {
        return index === 0 || index === 1 || index === size - 1 || index === size;
      }
    };

    const output = table(data, options);

    // eslint-disable-next-line no-restricted-syntax
    expectTable(output, `
╔════╤════╤════╗
 0A  0B  0C 
╟────┼────┼────╢
 1A  1B  1C 
 2A  2B  2C 
 3A  3B  3C 
╟────┼────┼────╢
 4A  4B  4C 
╚════╧════╧════╝
        `);
  });
});