/** * <p>Preconditions:</p> * <p>Create 2 simple products * <p>An order is created.</p> * <p>Invoice of the order is created.</p> */ public function setUpBeforeEachTest() { self::$_preconditionsData = new Varien_Object(); $productData1 = $this->loadDataSet('Product', 'simple_product_visible', array('prices_tax_class' => 'Taxable Goods')); $this->_createProduct($productData1, 'simple'); self::$_preconditionsData->setProduct1($productData1); $productData2 = $this->loadDataSet('Product', 'simple_product_visible', array('prices_price' => '5.99')); $this->_createProduct($productData2, 'simple'); self::$_preconditionsData->setProduct2($productData2); //Data $product1 = self::$_preconditionsData->getProduct1(); $sku1 = $product1['general_sku']; $product2 = self::$_preconditionsData->getProduct2(); $sku2 = $product2['general_sku']; $orderData = $this->loadDataSet('SalesOrder', 'order_newcustomer_checkmoney_flatrate_usa', array('filter_sku' => $sku1, 'product_qty' => self::FULL_ORDER_QTY, 'product_2' => array('filter_sku' => $sku2, 'product_qty' => self::FULL_ORDER_QTY))); //Steps - create an order $this->navigate('manage_sales_orders'); $this->orderHelper()->createOrder($orderData); //Verifying $this->assertTrue($this->successMessage('success_created_order'), $this->messages); self::$_preconditionsData->setOrder($orderData); self::$_preconditionsData->setOrderId($this->orderHelper()->defineOrderId()); //Steps - Create Invoice $this->orderInvoiceHelper()->createInvoiceAndVerifyProductQty(); }
public function testIpAddressIpv6() { $payment = new Varien_Object(); $order = new Varien_Object(); $order->setRemoteIp("2001:0db8:0000:0000:0000:ff00:0042:8329"); $payment->setOrder($order); $output = Litle_CreditCard_Model_PaymentLogic::getFraudCheck($payment); $this->assertEquals(array(), $output); }
public function testGenerateUniqueId() { Mage::init(); $payment = new Varien_Object(); $order = new Varien_Object(); $billingAddress = new Varien_Object(); $order->setBillingAddress($billingAddress); $payment->setOrder($order); $litle = new Litle_CreditCard_Model_PaymentLogic(); $mock = $this->getMock('Mage_Payment_Model_Info'); $hash = $litle->generateAuthorizationHash('123', '100', $mock, $payment); $this->assertEquals('123', $hash['id']); }
/** * @loadFixture ../../../../var/fixtures/orders.yaml */ public function testOperationFullAndTypeFull() { $helper = Mage::helper('ops/order_capture'); $invoice = array("items" => "foo"); Mage::app()->getRequest()->setParam('invoice', $invoice); $payment = new Varien_Object(); $order = Mage::getModel('sales/order')->load(11); $payment->setOrder($order); // order base_grand_total == grand_total == 119.00 $expected = array("items" => $invoice["items"], "operation" => Netresearch_OPS_Model_Payment_Abstract::OPS_CAPTURE_FULL, "type" => "full", "amount" => 119.0); $payment->setBaseAmountPaidOnline(0.0); $amount = 119.0; $this->assertEquals($expected, $helper->prepareOperation($payment, $amount)); }
public function testGetParameterForCaptureWillReturnArray() { $fakePayment = new Varien_Object(); $fakePayment->setOrder(new Varien_Object()); $fakePayment->setAdditionalInformation(array('paymentId' => '4711')); $arrInfo = array('operation' => 'capture'); $amount = 10; $opsPaymentMethod = Mage::getModel('ops/payment_abstract'); $requestParams = Mage::getModel('ops/backend_operation_parameter')->getParameterFor(Netresearch_OPS_Model_Payment_Abstract::OPS_CAPTURE_TRANSACTION_TYPE, $opsPaymentMethod, $fakePayment, $amount, $arrInfo); $this->assertArrayHasKey('AMOUNT', $requestParams); $this->assertArrayHasKey('PAYID', $requestParams); $this->assertArrayHasKey('OPERATION', $requestParams); $this->assertArrayHasKey('CURRENCY', $requestParams); $this->assertEquals(1000, $requestParams['AMOUNT']); $this->assertEquals(4711, $requestParams['PAYID']); $this->assertEquals('capture', $requestParams['OPERATION']); $this->assertEquals(Mage::app()->getStore($fakePayment->getOrder()->getStoreId())->getBaseCurrencyCode(), $requestParams['CURRENCY']); }
public function testGetRequestParams() { $fakePayment = new Varien_Object(); $fakePayment->setOrder(new Varien_Object()); $fakePayment->setAdditionalInformation(array('paymentId' => '4711')); $arrInfo = array('operation' => 'refund', 'invoice_id' => 2); $amount = 10; $opsPaymentMethod = Mage::getModel('ops/payment_abstract'); $captureParameterModel = Mage::getModel('ops/backend_operation_refund_parameter'); $requestParams = $captureParameterModel->getRequestParams($opsPaymentMethod, $fakePayment, $amount, $arrInfo); $this->assertArrayHasKey('AMOUNT', $requestParams); $this->assertArrayHasKey('PAYID', $requestParams); $this->assertArrayHasKey('OPERATION', $requestParams); $this->assertArrayHasKey('CURRENCY', $requestParams); $this->assertEquals(1000, $requestParams['AMOUNT']); $this->assertEquals(4711, $requestParams['PAYID']); $this->assertEquals('refund', $requestParams['OPERATION']); $this->assertEquals(Mage::app()->getStore($fakePayment->getOrder()->getStoreId())->getBaseCurrencyCode(), $requestParams['CURRENCY']); }
protected function _getBuildPaymentObject($quoteObj, $params = array('payment' => array())) { $payment = new Varien_Object(); if (isset($params['payment']) && !empty($params['payment'])) { $payment->addData($params['payment']); } if (Mage::helper('sagepaysuite')->creatingAdminOrder()) { $payment->addData($quoteObj->getPayment()->toArray()); } $payment->setTransactionType(strtoupper($this->getConfigData('payment_action'))); $payment->setAmountOrdered($this->formatAmount($quoteObj->getGrandTotal(), $quoteObj->getQuoteCurrencyCode())); $payment->setRealCapture(true); //To difference invoice from capture $payment->setOrder(clone $quoteObj); $payment->setAnetTransType(strtoupper($this->getConfigData('payment_action'))); $payment->getOrder()->setOrderCurrencyCode($quoteObj->getQuoteCurrencyCode()); $payment->getOrder()->setBillingAddress($quoteObj->getBillingAddress()); if ($quoteObj->isVirtual()) { $payment->getOrder()->setShippingAddress($quoteObj->getBillingAddress()); } else { $payment->getOrder()->setShippingAddress($quoteObj->getShippingAddress()); } return $payment; }
/** * @test * @loadFixture testGetProduct * @dataProvider provider__testOrderSaveAfter * * 1. OrderSaveAfter * 2. Mage::getModel('collpur/deal') ->load($dealId) ->processOrderItem($item); * 3. AW_Collpur_Model_Dealpurchases->connectWithFreeCoupons * * This the most important functions that should be tested * */ public function testOrderSaveAfter($data) { $orderMock = $this->getModelMock('sales/order', array('getAllItems')); /* Prepare array of fake sales order items */ $orderItems = array(); for ($i = 0; $i < 3; $i++) { $salesOrderMock = $this->getModelMock('sales/order_item', array('getProductOptionByCode', 'getId')); $itemData = new Varien_Object(); $itemData->setDealId($data['dealId']); /* Prepare fake order for orderItem */ $orderItem = new Varien_Object(); $orderItem->setId($data['dealId']); $orderItem->setCustomerName('Test order customer'); $orderItem->setCustomerId($data['dealId']); /* * ********************************* */ $salesOrderMock->expects($this->any())->method('getProductOptionByCode')->will($this->returnValue($itemData)); $salesOrderMock->expects($this->any())->method('getId')->will($this->returnValue($data['dealId'])); $salesOrderMock->setOrder($orderItem); $salesOrderMock->setData('qty_invoiced', $data['qtyToAdd']); $salesOrderMock->setData('qty_refunded', 0); $orderItems[] = $salesOrderMock; } $orderMock->expects($this->any())->method('getAllItems')->will($this->returnValue($orderItems)); $observer = new Varien_Object(); $observer->setOrder($orderMock); Mage::app()->getRequest()->setControllerName('sales_order_invoice'); $exception = false; if ($data['uid'] == '003' || $data['uid'] == '001' || $data['uid'] == '004') { $this->setExpectedException('Mage_Core_Exception'); $exception = true; } Mage::getModel('collpur/observer')->orderSaveAfter($observer); /* * If there was no exceiption during call of * Mage::getModel('collpur/deal') ->load($dealId) ->processOrderItem($item); * proceed with test * */ if (!$exception) { /* Check that number of purchases generated correct */ $purchasesCount = Mage::getResourceModel('collpur/dealpurchases_collection')->count(); $this->assertEquals($purchasesCount, $data['qtyToAdd'], 'Incorrect purchases collection count'); /* Check that correct number of coupons were generated */ $couponsCount = Mage::getResourceModel('collpur/coupon_collection')->count(); $this->assertEquals($couponsCount, $data['qtyToAdd'], 'Incorrect coupons collection count'); } }
protected function _getBuildPaymentObject($quoteObj, $params = array('payment' => array())) { $payment = new Varien_Object(); if (isset($params['payment'])) { $payment->addData($params['payment']); } $billingAddressObj = $this->_getQuote()->getBillingAddress(); $shippingAddressObj = $this->_getQuote()->getShippingAddress(); $payment->setTransactionType(strtoupper($this->getConfigData('payment_action'))); $payment->setAmountOrdered($this->formatAmount($this->_getQuote()->getGrandTotal(), $this->_getQuote()->getQuoteCurrencyCode())); $payment->setRealCapture(true); //To difference invoice from capture $payment->setOrder(new Varien_Object($this->_getQuote()->toArray())); $payment->setAnetTransType(strtoupper($this->getConfigData('payment_action'))); $payment->getOrder()->setOrderCurrencyCode($this->_getQuote()->getQuoteCurrencyCode()); $payment->getOrder()->setBillingAddress($this->_getQuote()->getBillingAddress()); $payment->getOrder()->setShippingAddress($this->_getQuote()->getShippingAddress()); return $payment; }
/** * Process return stock to warehouse * * @param object $observer * @return object */ public function salesOrderCreditmemoSaveAfter($observer) { $creditmemo = $observer->getEvent()->getCreditmemo(); if (Mage::registry('INVENTORY_WAREHOUSE_ORDER_CREDITMEMO_' . $creditmemo->getId())) { return; } Mage::register('INVENTORY_WAREHOUSE_ORDER_CREDITMEMO_' . $creditmemo->getId(), true); $data = Mage::app()->getRequest()->getParams(); $dataObject = new Varien_Object($data); $order = $creditmemo->getOrder(); $dataObject->setOrder($order)->setCreditmemoObject($creditmemo); try { foreach ($order->getAllItems() as $orderItem) { $stockItem = Mage::getModel('cataloginventory/stock_item')->loadByProduct($orderItem->getProductId()); $product = $orderItem->getProduct(); $manageStock = $stockItem->getManageStock(); if ($stockItem->getUseConfigManageStock()) { $manageStock = Mage::getStoreConfig('cataloginventory/item_options/manage_stock', Mage::app()->getStore()->getStoreId()); } if (!$manageStock) { /* ignore products with out manage stock */ continue; } if ($product->isComposite()) { /* do nothing if this is configurable, bunded, groupred product */ continue; } $this->_refundHelper()->processRefund($dataObject, $orderItem); } $this->_refundHelper()->logTransaction($dataObject); } catch (Exception $e) { Mage::log($e->getTraceAsString(), null, 'inventory_management.log'); } }
/** * @loadFixture ../../../../var/fixtures/orders.yaml */ public function testOperationFullAndTypeFull() { $helper = Mage::helper('ops/order_refund'); $creditmemo = array("creditmemo" => array("items" => "foo")); $helper->setCreditMemoRequestParams($creditmemo); $payment = new Varien_Object(); $order = Mage::getModel('sales/order')->load(11); $payment->setOrder($order); // order base_grand_total == grand_total == 119.00 $expected = array("items" => $creditmemo["creditmemo"]["items"], "operation" => Netresearch_OPS_Model_Payment_Abstract::OPS_REFUND_FULL, "type" => "full", "amount" => 119.0); $payment->setBaseAmountRefundedOnline(0.0); $amount = 119.0; $this->assertEquals($expected, $helper->prepareOperation($payment, $amount)); }