public function testGetOrderHistoryUrl()
 {
     $expectedPath = parse_url(Mage::getBaseUrl() . 'sales/guest/view/')['path'];
     $expectedParams = ['oar_billing_lastname' => 'Sibelius', 'oar_email' => '*****@*****.**', 'oar_order_id' => '908123987143079814', 'oar_type' => 'email'];
     $order = $this->getModelMockBuilder('sales/order')->setMethods(['getCustomerEmail', 'getCustomerLastname', 'getIncrementId'])->getMock();
     $order->expects($this->any())->method('getCustomerEmail')->will($this->returnValue($expectedParams['oar_email']));
     $order->expects($this->any())->method('getCustomerLastname')->will($this->returnValue($expectedParams['oar_billing_lastname']));
     $order->expects($this->any())->method('getIncrementId')->will($this->returnValue($expectedParams['oar_order_id']));
     $url = parse_url($this->_helper->getOrderHistoryUrl($order));
     $path = $url['path'];
     $query = [];
     parse_str($url['query'], $query);
     $this->assertSame($expectedPath, $path);
     $this->assertSame($expectedParams, $query);
 }
 /**
  * Fill in the values the order create request requires.
  *
  * @return self
  */
 protected function _buildNewPayload()
 {
     $this->_payload->setBillingAddress($this->_getRomBillingAddress($this->_order->getBillingAddress()))->setCurrency($this->_order->getOrderCurrencyCode())->setLevelOfService($this->_config->levelOfService)->setLocale($this->_getLocale())->setOrderHistoryUrl($this->_helper->getOrderHistoryUrl($this->_order))->setOrderId($this->_order->getIncrementId())->setOrderTotal($this->_order->getBaseGrandTotal())->setOrderType($this->_config->orderType)->setRequestId($this->_coreHelper->generateRequestId('OCR-'));
     $createdAt = $this->_getAsDateTime($this->_order->getCreatedAt());
     if ($createdAt) {
         $this->_payload->setCreateTime($createdAt);
     }
     return $this->_setCustomerData($this->_order, $this->_payload)->_setOrderContext($this->_order, $this->_payload)->_setShipGroups($this->_order, $this->_payload)->_setPaymentData($this->_order, $this->_payload);
 }