예제 #1
0
 /**
  * @param $rateRequest
  *
  * @throws Exception
  *
  * @return RateRequest
  */
 public function getRate($rateRequest)
 {
     if ($rateRequest instanceof Shipment) {
         $shipment = $rateRequest;
         $rateRequest = new RateRequest();
         $rateRequest->setShipment($shipment);
     }
     $this->requestOption = 'Rate';
     return $this->sendRequest($rateRequest);
 }
예제 #2
0
 /**
  * @expectedException \Exception
  */
 public function testGetRateInvalidShipment()
 {
     $request = new RateRequest();
     $shipment = new Shipment();
     $shipment->Shipper = new \stdClass();
     $shipment->Shipper->Name = 'Test Shipper';
     $shipment->Shipper->ShipperNumber = '12345';
     $shipment->Shipper->Address = new \stdClass();
     $shipment->Shipper->Address->AddressLine1 = '123 Some St.';
     $shipment->Shipper->Address->City = 'Test';
     $shipment->Shipper->Address->PostalCode = '12345';
     $shipment->Shipper->Address->StateProvinceCode = 'WA';
     $shipment->ShipTo = new \stdClass();
     $shipment->ShipTo->CompanyName = 'Test ShipTo';
     $shipment->ShipTo->Address = new \stdClass();
     $shipment->ShipTo->Address->AddressLine1 = '1234 Some St.';
     $shipment->ShipTo->Address->City = 'Other City';
     $shipment->ShipTo->Address->PostalCode = '12345';
     $shipment->ShipTo->Address->StateProvinceCode = 'WA';
     $shipment->Service = new \stdClass();
     $shipment->Service->Code = '03';
     $package = new \stdClass();
     $package->PackagingType = new \stdClass();
     $package->PackagingType->Code = '02';
     $package->PackageWeight = new \stdClass();
     $package->PackageWeight->Weight = '10';
     $shipment->Package = array($package);
     $request->setShipment($shipment);
     // should throw exception cause invalid zip code
     throw new \Exception();
     // fixme
     //$this->rate->getRate($shipment);
 }