public void Sale_ReturnsSuccessfulResponseUsingAccessToken()
{
var request = new TransactionRequest
{
Amount = SandboxValues.TransactionAmount.AUTHORIZE,
CreditCard = new TransactionCreditCardRequest
{
Number = SandboxValues.CreditCardNumber.VISA,
ExpirationDate = "05/2009",
}
};
BraintreeGateway oauthGateway = new BraintreeGateway(
"client_id$development$integration_client_id",
"client_secret$development$integration_client_secret"
);
string code = OAuthTestHelper.CreateGrant(oauthGateway, "integration_merchant_id", "read_write");
ResultImpl<OAuthCredentials> accessTokenResult = oauthGateway.OAuth.CreateTokenFromCode(new OAuthCredentialsRequest {
Code = code,
Scope = "read_write"
});
gateway = new BraintreeGateway(accessTokenResult.Target.AccessToken);
Result<Transaction> result = gateway.Transaction.Sale(request);
Assert.IsTrue(result.IsSuccess());
Transaction transaction = result.Target;
Assert.AreEqual(1000.00, transaction.Amount);
Assert.AreEqual(TransactionType.SALE, transaction.Type);
Assert.AreEqual(TransactionStatus.AUTHORIZED, transaction.Status);
Assert.AreEqual(DateTime.Now.Year, transaction.CreatedAt.Value.Year);
Assert.AreEqual(DateTime.Now.Year, transaction.UpdatedAt.Value.Year);
Assert.IsNotNull(transaction.ProcessorAuthorizationCode);
}