40 lines
926 B
Ruby
40 lines
926 B
Ruby
|
require 'helper'
|
||
|
|
||
|
describe Twitter::Base do
|
||
|
before do
|
||
|
@base = Twitter::Base.new(:id => 1)
|
||
|
end
|
||
|
|
||
|
describe '#[]' do
|
||
|
it 'calls methods using [] with symbol' do
|
||
|
capture_warning do
|
||
|
expect(@base[:object_id]).to be_an Integer
|
||
|
end
|
||
|
end
|
||
|
it 'calls methods using [] with string' do
|
||
|
capture_warning do
|
||
|
expect(@base['object_id']).to be_an Integer
|
||
|
end
|
||
|
end
|
||
|
it 'returns nil for missing method' do
|
||
|
capture_warning do
|
||
|
expect(@base[:foo]).to be_nil
|
||
|
expect(@base['foo']).to be_nil
|
||
|
end
|
||
|
end
|
||
|
it 'outputs a warning' do
|
||
|
warning = capture_warning do
|
||
|
@base[:object_id]
|
||
|
end
|
||
|
expect(warning).to match(/\[DEPRECATION\] #\[:object_id\] is deprecated. Use #object_id to fetch the value./)
|
||
|
end
|
||
|
end
|
||
|
|
||
|
describe '#attrs' do
|
||
|
it 'returns a hash of attributes' do
|
||
|
expect(@base.attrs).to eq(:id => 1)
|
||
|
end
|
||
|
end
|
||
|
|
||
|
end
|