1
0
Fork 0
mirror of https://github.com/mperham/sidekiq.git synced 2022-11-09 13:52:34 -05:00
mperham--sidekiq/test/test_cli.rb

50 lines
1.1 KiB
Ruby
Raw Normal View History

require 'helper'
require 'sidekiq/cli'
class TestCli < MiniTest::Unit::TestCase
describe 'with cli' do
before do
@cli = new_cli
end
it 'blows up with an invalid require' do
assert_raises ArgumentError do
@cli.parse(['sidekiq', '-r', 'foobar'])
end
end
it 'blows up with invalid Ruby' do
@cli.parse(['sidekiq', '-r', './test/fake_env.rb'])
assert($LOADED_FEATURES.any? { |x| x =~ /fake_env/ })
assert @cli.valid?
end
it 'changes concurrency' do
@cli.parse(['sidekiq', '-c', '60', '-r', './test/fake_env.rb'])
assert_equal 60, @cli.options[:processor_count]
end
it 'changes queues' do
@cli.parse(['sidekiq', '-q', 'foo', '-r', './test/fake_env.rb'])
assert_equal ['foo'], @cli.options[:queues]
end
it 'handles weights' do
@cli.parse(['sidekiq', '-q', 'foo,3', '-q', 'bar', '-r', './test/fake_env.rb'])
assert_equal %w(bar foo foo foo), @cli.options[:queues].sort
end
def new_cli
cli = Sidekiq::CLI.new
def cli.die(code)
@code = code
end
def cli.valid?
!@code
end
cli
end
end
end