mirror of
https://github.com/jimeh/airbrake-statsd.git
synced 2026-02-19 02:46:43 +00:00
use Configuration#bucket instead of hard-coded bucket value, and some spec cleanup
This commit is contained in:
@@ -6,11 +6,26 @@ module Airbrake
|
||||
subject { Statsd }
|
||||
|
||||
before do
|
||||
subject.instance_variable_set('@configured', nil)
|
||||
subject.instance_variable_set('@config', nil)
|
||||
subject.instance_variable_set('@client', nil)
|
||||
['@configured', '@config', '@client'].each do |var_name|
|
||||
subject.instance_variable_set(var_name, nil)
|
||||
end
|
||||
end
|
||||
|
||||
describe '#configure' do
|
||||
it 'sets @configured to true' do
|
||||
subject.instance_variable_get('@configured').should_not be_true
|
||||
subject.configure
|
||||
subject.instance_variable_get('@configured').should be_true
|
||||
end
|
||||
|
||||
context 'when block is passed' do
|
||||
it 'passes #config to block' do
|
||||
block = Proc.new { |conf| conf.should be_a(Statsd::Configuration) }
|
||||
subject.configure(&block)
|
||||
end
|
||||
end # block passed
|
||||
end # configure
|
||||
|
||||
describe '#configured?' do
|
||||
context 'when #configure has been called' do
|
||||
it 'returns true' do
|
||||
@@ -30,7 +45,7 @@ module Airbrake
|
||||
it 'creates new Configuration instance if not set' do
|
||||
subject.config.should be_a(Statsd::Configuration)
|
||||
end
|
||||
end
|
||||
end # config
|
||||
|
||||
describe '#client' do
|
||||
it 'creates a new ::Statsd client instance if not set' do
|
||||
@@ -49,23 +64,36 @@ module Airbrake
|
||||
::Statsd.any_instance.should_receive(:namespace=).with('test').once
|
||||
subject.client
|
||||
end
|
||||
end
|
||||
end
|
||||
end # namespace is set
|
||||
end # client
|
||||
|
||||
describe '#increment' do
|
||||
context 'when #configure has been called' do
|
||||
before { subject.configure }
|
||||
|
||||
it 'calls #increment on #client instance' do
|
||||
subject.client.should_receive(:increment).once
|
||||
subject.increment
|
||||
end
|
||||
|
||||
it 'default bucket name used is "exceptions"' do
|
||||
it 'calls #increment on #client' do
|
||||
subject.client.should_receive(:increment).with('exceptions').once
|
||||
subject.increment
|
||||
end
|
||||
|
||||
context 'when bucket option has been customized' do
|
||||
before do
|
||||
subject.configure { |config| config.bucket = 'errors' }
|
||||
end
|
||||
|
||||
it 'calls #increment on #client with custom bucket' do
|
||||
subject.client.should_receive(:increment).with('errors').once
|
||||
subject.increment
|
||||
end
|
||||
end # bucket option customized
|
||||
end # configure called
|
||||
|
||||
context 'when #configure has not been called' do
|
||||
it 'does not call #increment on #client' do
|
||||
subject.client.should_not_receive(:increment)
|
||||
subject.increment
|
||||
end
|
||||
end # configure not called
|
||||
end # increment
|
||||
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user