Sha256: 8e27973c59fd33410837692c59931fc04d8c46ea6e0effd5f0e7d2d6d035b80e
Contents?: true
Size: 1004 Bytes
Versions: 1
Compression:
Stored size: 1004 Bytes
Contents
# frozen_string_literal: true require_relative 'helper' class ThrottlerTest < MiniTest::Test def test_throttler_with_rate t = Polyphony::Throttler.new(100) buffer = [] f = spin { loop { t.process { buffer << 1 } } } sleep 0.02 f.stop assert buffer.size >= 2 assert buffer.size <= 3 ensure t.stop end def test_throttler_with_hash_of_rate t = Polyphony::Throttler.new(rate: 100) buffer = [] f = spin { loop { t.process { buffer << 1 } } } sleep 0.02 f.stop assert buffer.size >= 2 assert buffer.size <= 3 ensure t.stop end def test_throttler_with_hash_of_interval t = Polyphony::Throttler.new(interval: 0.01) buffer = [] f = spin { loop { t.process { buffer << 1 } } } sleep 0.02 f.stop assert buffer.size >= 2 assert buffer.size <= 3 ensure t.stop end def test_throttler_with_invalid_argument assert_raises RuntimeError do Polyphony::Throttler.new(:foobar) end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
polyphony-0.28 | test/test_throttler.rb |