Sha256: d4981ef95833b00d6b79d8a96e33045e8ed55dae5b2aa90b4a4824e943c80f29
Contents?: true
Size: 1.56 KB
Versions: 2
Compression:
Stored size: 1.56 KB
Contents
require_relative '../test_helper' require 'csv_query/outputter' describe CsvQuery::Outputter do describe "creating a new instance" do it "stores results for later access" do results = [["Foo"]] CsvQuery::Outputter.new(results).results.must_equal([["Foo"]]) end end describe ".output" do it "outputs results to STDOUT" do output = capture_stdout do CsvQuery::Outputter.output([['Foo']]) end output.must_equal("Foo\n---\n") end end describe "#output" do it "outputs results to STDOUT" do results = [ ["Foo", "Bar"], ["Baz", "Qux"] ] output = capture_stdout do CsvQuery::Outputter.output(results) end output.must_equal <<EOS Foo | Bar ----+---- Baz | Qux EOS end it "adapts column widths to result widths" do results = [ ["A", "B", "Somewhat long header"], ["1", "Somewhat long result", "3"] ] output = capture_stdout do CsvQuery::Outputter.output(results) end output.must_equal <<EOS A | B | Somewhat long header --+----------------------+--------------------- 1 | Somewhat long result | 3 EOS end it "works with numeric results" do results = [ ["Animal", "COUNT(*)", "Average"], ["Monkeys", 12, 123.456] ] output = capture_stdout do CsvQuery::Outputter.output(results) end output.must_equal <<EOS Animal | COUNT(*) | Average --------+----------+-------- Monkeys | 12 | 123.456 EOS end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
csv_query-1.0.4 | test/csv_query/outputter_test.rb |
csv_query-1.0.3 | test/csv_query/outputter_test.rb |