/**
  * @dataProvider getOrders
  */
 public function testOrder($revenueOrder)
 {
     $this->logger = QCLogger::getInstance();
     $this->logger->info("BEGIN " . __METHOD__);
     $this->logger->debug("Received Revenue Order :" . print_r($revenueOrder, true));
     //check if the txn is a refund and if so ignore the Cybersource validation
     if ($revenueOrder->isTxnARefund()) {
         $this->logger->debug("Transaction is a refund and ignoring the verification");
         return;
     }
     $orderId = $revenueOrder->getOrderId();
     $revOrderDate = date_create($revenueOrder->getOrderDate());
     $revOrderDateFormatted = date_format($revOrderDate, 'Ymd');
     $this->logger->info("Testing Order #" . $orderId . "with orderDate = " . $revOrderDateFormatted);
     $this->logger->info("Sum of all prices for this order # - present in the report = " . $revenueOrder->getSumOfLinePrice());
     $this->logger->info("Checking against the payment registered in Payment Gateway");
     $txnPaidAmount = Transaction::getTxnPaymentAmount($orderId, $revOrderDateFormatted);
     $this->assertEquals($revenueOrder->getSumOfAllRecords(), $txnPaidAmount, "Total of all records for orderId " . $orderId . " in the report is not same as the Payment done in Payment-Gateway, which is " . $txnPaidAmount);
 }