public function testMultipleLineItems()
 {
     $merchant = (object) array();
     $merchant->login = AUTHORIZENET_API_LOGIN_ID;
     $merchant->tran_key = AUTHORIZENET_TRANSACTION_KEY;
     $merchant->allow_partial_auth = "false";
     $creditCard = array('exp_date' => '02/2012', 'card_num' => '6011000000000012', 'card_code' => '452');
     $transaction = array('amount' => rand(100, 1000), 'duplicate_window' => '10', 'footer_email_receipt' => 'thank you for your business!', 'header_email_receipt' => 'a copy of your receipt is below');
     $order = array('description' => 'Johns Bday Gift', 'invoice_num' => '3123', 'line_item' => 'item1<|>golf balls<|><|>2<|>18.95<|>Y');
     $customer = (object) array();
     $customer->first_name = "Jane";
     $customer->last_name = "Smith";
     $customer->company = "Jane Smith Enterprises Inc.";
     $customer->address = "20 Main Street";
     $customer->city = "San Francisco";
     $customer->state = "CA";
     $customer->zip = "94110";
     $customer->country = "US";
     $customer->phone = "415-555-5557";
     $customer->fax = "415-555-5556";
     $customer->email = "*****@*****.**";
     $customer->cust_id = "55";
     $customer->customer_ip = "98.5.5.5";
     $shipping_info = (object) array();
     $shipping_info->ship_to_first_name = "John";
     $shipping_info->ship_to_last_name = "Smith";
     $shipping_info->ship_to_company = "Smith Enterprises Inc.";
     $shipping_info->ship_to_address = "10 Main Street";
     $shipping_info->ship_to_city = "San Francisco";
     $shipping_info->ship_to_state = "CA";
     $shipping_info->ship_to_zip = "94110";
     $shipping_info->ship_to_country = "US";
     $shipping_info->tax = "CA";
     $shipping_info->freight = "Freight<|>ground overnight<|>12.95";
     $shipping_info->duty = "Duty1<|>export<|>15.00";
     $shipping_info->tax_exempt = "false";
     $shipping_info->po_num = "12";
     $sale = new Request();
     $sale->setFields($creditCard);
     $sale->setFields($shipping_info);
     $sale->setFields($customer);
     $sale->setFields($order);
     $sale->setFields($merchant);
     $sale->setFields($transaction);
     $sale->addLineItem('item2', 'golf tees', 'titanium tees', '2', '2.95', 'Y');
     $sale->addLineItem('item3', 'golf shirt', 'red, large', '2', '3.95', 'Y');
     $response = $sale->authorizeAndCapture();
     $this->assertTrue($response->approved);
 }