Sha256: 2e921e6f133054de10a521c7be61c8497304bb0d92c0ad1e891781430697fe2f

Contents?: true

Size: 1.3 KB

Versions: 23

Compression:

Stored size: 1.3 KB

Contents

require_relative '../lib/batch_order'

module Unipept
  class BatchOrderTestCase < Unipept::TestCase
    def test_single_batch
      order = BatchOrder.new
      out, _err = capture_io_while do
        run_batch(order, [0])
      end
      assert_equal(['0', ''].join("\n"), out)
    end

    def test_double_batch
      order = BatchOrder.new
      out, _err = capture_io_while do
        run_batch(order, [0, 1])
      end
      assert_equal(['0', '1', ''].join("\n"), out)
    end

    def test_missing_batch
      order = BatchOrder.new
      out, _err = capture_io_while do
        run_batch(order, [1, 2])
      end
      assert_equal('', out)
    end

    def test_out_order_batch
      order = BatchOrder.new
      out, _err = capture_io_while do
        run_batch(order, [1, 0])
      end
      assert_equal(['0', '1', ''].join("\n"), out)
    end

    def test_gap_batch
      order = BatchOrder.new
      out, _err = capture_io_while do
        run_batch(order, [1, 4, 0])
      end
      assert_equal(['0', '1', ''].join("\n"), out)
      out, _err = capture_io_while do
        run_batch(order, [2, 3, 5])
      end
      assert_equal(['2', '3', '4', '5', ''].join("\n"), out)
    end

    def run_batch(order, list)
      list.each do |i|
        order.wait(i) do
          puts i
        end
      end
    end
  end
end

Version data entries

23 entries across 23 versions & 1 rubygems

Version Path
unipept-3.1.0 test/test_batch_order.rb
unipept-3.0.2 test/test_batch_order.rb
unipept-3.0.1 test/test_batch_order.rb
unipept-3.0.0 test/test_batch_order.rb
unipept-2.2.2 test/test_batch_order.rb
unipept-2.2.1 test/test_batch_order.rb
unipept-2.2.0 test/test_batch_order.rb
unipept-2.1.1 test/test_batch_order.rb
unipept-2.1.0 test/test_batch_order.rb
unipept-2.0.0 test/test_batch_order.rb
unipept-1.4.1 test/test_batch_order.rb
unipept-1.4.0 test/test_batch_order.rb
unipept-1.3.0 test/test_batch_order.rb
unipept-1.2.0 test/test_batch_order.rb
unipept-1.1.3 test/test_batch_order.rb
unipept-1.1.2 test/test_batch_order.rb
unipept-1.1.1 test/test_batch_order.rb
unipept-1.1.0 test/test_batch_order.rb
unipept-1.0.1 test/test_batch_order.rb
unipept-1.0.0 test/test_batch_order.rb