Sha256: ce879b933d60c232960e0d080f80a5a4fe446001ed1069bd586f0da01740cef4

Contents?: true

Size: 1.06 KB

Versions: 19

Compression:

Stored size: 1.06 KB

Contents

require_relative "test_helper"
require "csv"

class RowWriterTest < Minitest::Test
  describe IOStreams::Row::Writer do
    let :csv_file_name do
      File.join(File.dirname(__FILE__), "files", "test.csv")
    end

    let :raw_csv_data do
      File.read(csv_file_name)
    end

    let :csv_rows do
      CSV.read(csv_file_name)
    end

    let :temp_file do
      Tempfile.new("iostreams")
    end

    let :file_name do
      temp_file.path
    end

    after do
      temp_file.delete
    end

    describe ".stream" do
      it "file" do
        IOStreams::Row::Writer.file(file_name) do |io|
          csv_rows.each { |array| io << array }
        end
        result = ::File.read(file_name)
        assert_equal raw_csv_data, result
      end

      it "streams" do
        io_string = StringIO.new
        IOStreams::Line::Writer.stream(io_string) do |io|
          IOStreams::Row::Writer.stream(io) do |stream|
            csv_rows.each { |array| stream << array }
          end
        end
        assert_equal raw_csv_data, io_string.string
      end
    end
  end
end

Version data entries

19 entries across 19 versions & 1 rubygems

Version Path
iostreams-1.10.2 test/row_writer_test.rb
iostreams-1.10.1 test/row_writer_test.rb
iostreams-1.10.0 test/row_writer_test.rb
iostreams-1.9.0 test/row_writer_test.rb
iostreams-1.8.0 test/row_writer_test.rb
iostreams-1.7.0 test/row_writer_test.rb
iostreams-1.6.2 test/row_writer_test.rb
iostreams-1.6.1 test/row_writer_test.rb
iostreams-1.6.0 test/row_writer_test.rb
iostreams-1.5.1 test/row_writer_test.rb
iostreams-1.5.0 test/row_writer_test.rb
iostreams-1.4.0 test/row_writer_test.rb
iostreams-1.3.3 test/row_writer_test.rb
iostreams-1.3.2 test/row_writer_test.rb
iostreams-1.3.1 test/row_writer_test.rb
iostreams-1.3.0 test/row_writer_test.rb
iostreams-1.2.1 test/row_writer_test.rb
iostreams-1.2.0 test/row_writer_test.rb
iostreams-1.1.1 test/row_writer_test.rb