Sha256: ed65a3a9a7a644b5581e5cc6dcfb273b0d85c954d8f0e4c71583610746849ccd

Contents?: true

Size: 1.27 KB

Versions: 2

Compression:

Stored size: 1.27 KB

Contents

# -*- encoding: utf-8 -*-

require 'spec_helper'

describe TTY::Table::Renderer::Basic, '#render' do
  let(:header) { ['h1', 'h2', 'h3'] }
  let(:rows) { [['a1', 'a2', 'a3'], ['b1', 'b2', 'b3']] }
  let(:table) { TTY::Table.new header, rows }

  subject { described_class.new(table) }

  context 'with rows' do
    let(:table) { TTY::Table.new rows }

    it 'displays table without styling' do
      subject.render.should == <<-EOS.normalize
        a1 a2 a3
        b1 b2 b3
      EOS
    end
  end

  context 'with header and rows' do
    it 'displays table with header' do
      subject.render.should == <<-EOS.normalize
        h1 h2 h3
        a1 a2 a3
        b1 b2 b3
      EOS
    end
  end

  context 'with short header' do
    let(:header) { ['h1', 'h2'] }
    let(:rows)   { [['aaa1', 'a2'], ['b1', 'bb1']] }

    it 'displays table according to widths' do
      subject.render.should == <<-EOS.normalize
        h1   h2 
        aaa1 a2 
        b1   bb1
      EOS
    end
  end

  context 'with long header' do
    let(:header)  { ['header1', 'header2', 'header3'] }

    it 'header greater than row sizes' do
      subject.render.should == <<-EOS.normalize
        header1 header2 header3
        a1      a2      a3     
        b1      b2      b3     
      EOS
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
tty-0.0.11 spec/tty/table/renderer/basic/render_spec.rb
tty-0.0.10 spec/tty/table/renderer/basic/render_spec.rb