Sha256: 19390ecebae49a569e4b1f0783ce3918e604dbb3c1eff179e8eb2632a393d94d

Contents?: true

Size: 1.24 KB

Versions: 22

Compression:

Stored size: 1.24 KB

Contents

require 'test_helper'

module Shipit
  class CSVSerializerTest < ActiveSupport::TestCase
    test "blank values are dumped as nil" do
      assert_dumped nil, ''
      assert_dumped nil, '  '
      assert_dumped nil, nil
      assert_dumped nil, []
    end

    test "blank values are loaded as an empty array" do
      assert_loaded [], ''
      assert_loaded [], '  '
      assert_loaded [], nil
    end

    test "load split the words by comma" do
      assert_loaded %w(foo bar), 'foo,bar'
    end

    test "dump join the words with a comma" do
      assert_dumped 'foo,bar', %w(foo bar)
    end

    private

    def assert_dumped(expected, object)
      message = "Expected CSVSerializer.dump(#{object.inspect}) to eq #{expected.inspect}"
      if expected.nil?
        assert_nil Shipit::CSVSerializer.dump(object), message
      else
        assert_equal(expected, Shipit::CSVSerializer.dump(object), message)
      end
    end

    def assert_loaded(expected, payload)
      message = "Expected CSVSerializer.load(#{payload.inspect}) to eq #{expected.inspect}"
      if expected.nil?
        assert_nil Shipit::CSVSerializer.load(payload), message
      else
        assert_equal(expected, Shipit::CSVSerializer.load(payload), message)
      end
    end
  end
end

Version data entries

22 entries across 22 versions & 1 rubygems

Version Path
shipit-engine-0.31.0 test/unit/csv_serializer_test.rb
shipit-engine-0.30.0 test/unit/csv_serializer_test.rb
shipit-engine-0.29.0 test/unit/csv_serializer_test.rb
shipit-engine-0.28.1 test/unit/csv_serializer_test.rb
shipit-engine-0.28.0 test/unit/csv_serializer_test.rb
shipit-engine-0.27.1 test/unit/csv_serializer_test.rb
shipit-engine-0.27.0 test/unit/csv_serializer_test.rb
shipit-engine-0.26.0 test/unit/csv_serializer_test.rb
shipit-engine-0.25.1 test/unit/csv_serializer_test.rb
shipit-engine-0.25.0 test/unit/csv_serializer_test.rb
shipit-engine-0.24.0 test/unit/csv_serializer_test.rb
shipit-engine-0.23.1 test/unit/csv_serializer_test.rb
shipit-engine-0.23.0 test/unit/csv_serializer_test.rb
shipit-engine-0.22.0 test/unit/csv_serializer_test.rb
shipit-engine-0.21.0 test/unit/csv_serializer_test.rb
shipit-engine-0.20.1 test/unit/csv_serializer_test.rb
shipit-engine-0.20.0 test/unit/csv_serializer_test.rb
shipit-engine-0.19.0 test/unit/csv_serializer_test.rb
shipit-engine-0.18.1 test/unit/csv_serializer_test.rb
shipit-engine-0.18.0 test/unit/csv_serializer_test.rb