public void Credit_WithValidationError()
{
TransactionRequest request = new TransactionRequest
{
CreditCard = new TransactionCreditCardRequest
{
ExpirationMonth = "05",
ExpirationYear = "2010"
}
};
Result<Transaction> result = gateway.Transaction.Credit(request);
Assert.IsFalse(result.IsSuccess());
Assert.IsNull(result.Target);
Assert.AreEqual(ValidationErrorCode.TRANSACTION_AMOUNT_IS_REQUIRED, result.Errors.ForObject("Transaction").OnField("Amount")[0].Code);
Dictionary<string, string> parameters = result.Parameters;
Assert.IsFalse(parameters.ContainsKey("transaction[amount]"));
Assert.AreEqual("05", parameters["transaction[credit_card][expiration_month]"]);
Assert.AreEqual("2010", parameters["transaction[credit_card][expiration_year]"]);
}