/** * Tests the hash calculation for a card-update transaction. */ public function testDccAuthHashGeneration() { $card = new Card(); $card->addNumber(SampleXmlValidationUtils::DCC_AUTH_CARD_NUMBER)->addExpiryDate(SampleXmlValidationUtils::DCC_AUTH_CARD_EXPIRY_DATE)->addCardHolderName(SampleXmlValidationUtils::DCC_AUTH_CARD_HOLDER_NAME)->addType(SampleXmlValidationUtils::DCC_AUTH_CARD_TYPE); // add dccinfo. Note that the type is not set as it is already defaulted to 1 $dccInfo = new DccInfo(); $dccInfo->addDccProcessor(SampleXmlValidationUtils::DCC_AUTH_CCP); $request = new PaymentRequest(); $request->addTimeStamp(SampleXmlValidationUtils::DCC_AUTH_TIMESTAMP)->addMerchantId(SampleXmlValidationUtils::DCC_AUTH_MERCHANT_ID)->addAmount(SampleXmlValidationUtils::DCC_AUTH_AMOUNT)->addCurrency(SampleXmlValidationUtils::DCC_AUTH_CURRENCY)->addOrderId(SampleXmlValidationUtils::DCC_AUTH_ORDER_ID)->addCard($card)->addDccInfo($dccInfo); $request->hash(SampleXmlValidationUtils::SECRET); $this->assertEquals(SampleXmlValidationUtils::DCC_AUTH_REQUEST_HASH, $request->getHash()); }