require 'helper' describe Twitter::TrendResults do describe '#as_of' do it 'returns a Time when as_of is set' do trend_results = Twitter::TrendResults.new(:id => 1, :as_of => '2012-08-24T23:25:43Z') expect(trend_results.as_of).to be_a Time end it 'returns nil when as_of is not set' do trend_results = Twitter::TrendResults.new(:id => 1) expect(trend_results.as_of).to be_nil end end describe '#as_of?' do it 'returns true when as_of is set' do trend_results = Twitter::TrendResults.new(:id => 1, :as_of => '2012-08-24T23:24:14Z') expect(trend_results.as_of?).to be true end it 'returns false when as_of is not set' do trend_results = Twitter::TrendResults.new(:id => 1) expect(trend_results.as_of?).to be false end end describe '#created_at' do it 'returns a Time when created_at is set' do trend_results = Twitter::TrendResults.new(:id => 1, :created_at => '2012-08-24T23:24:14Z') expect(trend_results.created_at).to be_a Time end it 'returns nil when created_at is not set' do trend_results = Twitter::TrendResults.new(:id => 1) expect(trend_results.created_at).to be_nil end end describe '#created?' do it 'returns true when created_at is set' do trend_results = Twitter::TrendResults.new(:id => 1, :created_at => '2012-08-24T23:24:14Z') expect(trend_results.created?).to be true end it 'returns false when created_at is not set' do trend_results = Twitter::TrendResults.new(:id => 1) expect(trend_results.created?).to be false end end describe '#each' do before do @trend_results = Twitter::TrendResults.new(:trends => [{:id => 1}, {:id => 2}, {:id => 3}, {:id => 4}, {:id => 5}, {:id => 6}]) end it 'iterates' do count = 0 @trend_results.each { count += 1 } expect(count).to eq(6) end context 'with start' do it 'iterates' do count = 0 @trend_results.each(5) { count += 1 } expect(count).to eq(1) end end end describe '#location' do it 'returns a Twitter::Place when location is set' do trend_results = Twitter::TrendResults.new(:id => 1, :locations => [{:name => 'Worldwide', :woeid => 1}]) expect(trend_results.location).to be_a Twitter::Place end it 'returns nil when location is not set' do trend_results = Twitter::TrendResults.new(:id => 1) expect(trend_results.location).to be_nil end end describe '#location?' do it 'returns true when location is set' do trend_results = Twitter::TrendResults.new(:id => 1, :locations => [{:name => 'Worldwide', :woeid => 1}]) expect(trend_results.location?).to be true end it 'returns false when location is not set' do trend_results = Twitter::TrendResults.new(:id => 1) expect(trend_results.location?).to be false end end end