/** * @magentoDataFixture Mage/Sales/_files/order_paid_with_saved_cc.php */ public function testInitFromOrderSavedCcInformationNotDeleted() { $order = new Mage_Sales_Model_Order(); $order->loadByIncrementId('100000001'); $payment = $order->getPayment(); $this->assertEquals('5', $payment->getCcExpMonth()); $this->assertEquals('2016', $payment->getCcExpYear()); $this->assertEquals('AE', $payment->getCcType()); $this->assertEquals('0005', $payment->getCcLast4()); Mage::unregister('rule_data'); $payment = $this->_model->initFromOrder($order)->getQuote()->getPayment(); $this->assertEquals('5', $payment->getCcExpMonth()); $this->assertEquals('2016', $payment->getCcExpYear()); $this->assertEquals('AE', $payment->getCcType()); $this->assertEquals('0005', $payment->getCcLast4()); }
/** * Execute * * @param ArrayObject $settings * @param boolean $multipack * @return Dhl_Intraship_Model_Shipment $this */ public function execute(ArrayObject $settings, $multipack = null) { $helper = new Dhl_Intraship_Model_Autocreate(); $model = new Mage_Sales_Model_Order(); $myOrder = $model->loadByIncrementId($this->getOrderId()); $myOrder->setReordered(true); $data = array('currency' => 'EUR', 'account' => array('group_id' => 1, 'email' => '*****@*****.**'), 'billing_address' => $myOrder->getBillingAddress()->getData(), 'shipping_address' => $myOrder->getShippingAddress()->getData(), 'shipping_method' => 'flatrate_flatrate', 'comment' => array('customer_note' => false, 'send_confirmation' => false)); $admin = new Mage_Adminhtml_Model_Sales_Order_Create(); $order = $admin->initFromOrder($myOrder)->importPostData($data)->createOrder(); $shipment = $helper->checkOrder($order)->createShipment($order); $helper->saveShipment($shipment, $settings); $intraship = new Dhl_Intraship_Model_Shipment(); $intraship->load($shipment->getId(), 'shipment_id'); if (true === $multipack) { $intraship->setPackages(array('package_0' => array('weight' => 0.1), 'package_1' => array('weight' => 0.2), 'package_2' => array('weight' => 0.3)))->save(); } return $intraship; }