public function testGetRequestParamsWithAdditionalParameters() { $fakePayment = Mage::getModel('sales/order_payment'); $fakePayment->setOrder(MAge::getModel('sales/order')); $fakePayment->setAdditionalInformation(array('paymentId' => '4711')); $fakeInvoice = Mage::getModel('sales/order_invoice'); $fakePayment->setInvoice($fakeInvoice); $arrInfo = array('operation' => 'capture'); $amount = 10; $opsPaymentMethod = Mage::getModel('ops/payment_openInvoiceNl'); $captureParameterModel = Mage::getModel('ops/backend_operation_capture_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('capture', $requestParams['OPERATION']); $this->assertEquals(Mage::app()->getStore($fakePayment->getOrder()->getStoreId())->getBaseCurrencyCode(), $requestParams['CURRENCY']); }
public function testExtractAdditionalParamsWithShipping() { $itemsContainer = Mage::getModel('sales/order_shipment'); $this->assertTrue(is_array($this->openInvoiceNlModel->extractAdditionalParams($itemsContainer))); $this->assertEquals(0, count($this->openInvoiceNlModel->extractAdditionalParams($itemsContainer))); $itemsContainer = Mage::getModel('sales/order_invoice'); $this->assertTrue(is_array($this->openInvoiceNlModel->extractAdditionalParams($itemsContainer))); $this->assertEquals(0, count($this->openInvoiceNlModel->extractAdditionalParams($itemsContainer))); $orderItem = Mage::getModel('sales/order_item'); $orderItem->setId(1); $orderItem->setQtyOrdered(2); $item = Mage::getModel('sales/order_invoice_item'); $item->setOrderItemId(1); $item->setOrderItem($orderItem); $item->setName('Item'); $item->setBasePriceInclTax(19.99); $item->setQty(2); $item->setTaxPercent(19); $itemsContainer->addItem($item); $itemsContainer->setBaseShippingInclTax(10.0); $order = MAge::getModel('sales/order'); $order->setShippingDescription('foo'); $payment = Mage::getModel('sales/order_payment'); $payment->setMethod('ops_openInvoiceNl'); $order->setPayment($payment); $itemsContainer->setOrder($order); $result = $this->openInvoiceNlModel->extractAdditionalParams($itemsContainer); $this->assertTrue(is_array($result)); $this->assertTrue(0 < count($result)); $this->assertArrayHasKey('ITEMID1', $result); $this->assertEquals(1, $result['ITEMID1']); $this->assertArrayHasKey('ITEMNAME1', $result); $this->assertEquals('Item', $result['ITEMNAME1']); $this->assertArrayHasKey('ITEMPRICE1', $result); $this->assertEquals(1999, $result['ITEMPRICE1']); $this->assertArrayHasKey('ITEMVATCODE1', $result); $this->assertEquals('19%', $result['ITEMVATCODE1']); $this->assertArrayHasKey('TAXINCLUDED1', $result); $this->assertEquals(1, $result['TAXINCLUDED1']); $this->assertArrayHasKey('ITEMID2', $result); $this->assertEquals('SHIPPING', $result['ITEMID2']); $this->assertArrayHasKey('ITEMNAME2', $result); $this->assertEquals(substr($order->getShippingDescription(), 0, 30), $result['ITEMNAME2']); $this->assertArrayHasKey('ITEMPRICE2', $result); $this->assertEquals(Mage::helper('ops/data')->getAmount(10.0), $result['ITEMPRICE2']); $this->assertArrayHasKey('ITEMQUANT2', $result); $this->assertEquals(1, $result['ITEMQUANT2']); $this->assertArrayHasKey('ITEMVATCODE2', $result); $this->assertEquals(floatval($payment->getMethodInstance()->getShippingTaxRate($order)) . '%', $result['ITEMVATCODE2']); $this->assertArrayHasKey('TAXINCLUDED2', $result); $this->assertEquals(1, $result['TAXINCLUDED2']); }