spec/adknowledge/performance_spec.rb in adknowledge-0.0.4 vs spec/adknowledge/performance_spec.rb in adknowledge-0.0.6

- old
+ new

@@ -286,35 +286,55 @@ select(:revenue,:paid_clicks). group_by(:subid, :report_date). limit(20) end - before do - VCR.use_cassette :performance, record: :once do - performance.records + context "succesful" do + + let :records do + VCR.use_cassette :performance do + performance.records + end end - end - subject do - performance.records - end + subject do + records + end - it 'has results' do - expect(subject).to be_an Array - end + it 'has results' do + expect(subject).to be_an Array + end - it 'has the correct dimensions' do - expect(subject.first).to have_key 'subid' - expect(subject.first).to have_key 'report_date' - end + it 'has the correct dimensions' do + expect(subject.first).to have_key 'subid' + expect(subject.first).to have_key 'report_date' + end - it 'has the correct measures' do - expect(subject.first).to have_key 'paid_clicks' - expect(subject.first).to have_key 'revenue' - end + it 'has the correct measures' do + expect(subject.first).to have_key 'paid_clicks' + expect(subject.first).to have_key 'revenue' + end - it 'has the correct count' do - expect(subject.size).to eql 20 + it 'has the correct count' do + expect(subject.size).to eql 20 + end + + end # successful + + context "unsuccessful" do + + let :error_str do + "The email/password or token provided does not match a " + + "valid account. Please try again." + end + + it 'raises an exception' do + VCR.use_cassette :performance_errored do + expect{ performance.records }. + to raise_error(Adknowledge::Exception, error_str) + end + end end - end + end # #records + end