require 'spec_helper' describe "AccountEntry", "converting to xml" do before do @account_entry_a = Caren::Store::AccountEntry.new( :account_id => 1, :amount => 3600, :reserved => true, :source_id => 1, :source_type => "CareProvider", :external_source_id => 1 ) @account_entry_b = Caren::Store::AccountEntry.new( :account_id => 2, :amount => 3600, :reserved => true, :source_id => 1, :source_type => "CareProvider", :external_source_id => 1 ) end it "should be able to convert an account entry to valid xml" do @account_entry_a.should convert_to_valid_caren_xml end it "should be able to convert an array of account entries to valid xml" do [@account_entry_a,@account_entry_b].should convert_to_valid_caren_array_xml end end describe "AccountEntry", "REST methods" do before do account_entry = File.read("spec/fixtures/caren_account_entry.xml") account_entries = File.read("spec/fixtures/caren_account_entries.xml") account_entry_url = Caren::Api.session.url_for( Caren::Store::AccountEntry.resource_url(1,1) ) account_entries_url = Caren::Api.session.url_for( Caren::Store::AccountEntry.resource_url(1) ) timestamp = DateTime.now.to_i FakeWeb.register_uri(:get, account_entries_url, :body => account_entries, :timestamp => timestamp, :signature => Caren::Api.session.sign(timestamp,nil,account_entries) ) FakeWeb.register_uri(:get, account_entry_url, :body => account_entry, :timestamp => timestamp, :signature => Caren::Api.session.sign(timestamp,nil,account_entry) ) end it "should be able to find a specific account entry" do account_entry = Caren::Store::AccountEntry.find 1, 1, Caren::Api.session account_entry.amount.should == 1800 end it "should be able to find all account entries" do account_entries = Caren::Store::AccountEntry.all 1, Caren::Api.session account_entries.should have(4).things account_entries.first.amount.should == 1800 end end