Example #1
0
 /**
  * <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']);
 }
Example #4
0
 /**
  * @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']);
 }
Example #7
0
 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;
 }
Example #8
0
 /**
 * @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');
     }
 }
Example #9
0
 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');
     }
 }
Example #11
0
 /**
  * @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));
 }