public void ItShouldGetBuyer() { // Cria o cliente para buscar um buyer IGatewayServiceClient serviceClient = this.GetGatewayServiceClient(); // Cria um buyer e pega sua chave Guid buyerKey = serviceClient.Buyer.CreateBuyer(this._createBuyer).Response.BuyerKey; // Faz a chamada do método de buscar o buyer var response = serviceClient.Buyer.GetBuyer(buyerKey); // Verifica se recebeu a resposta com sucesso Assert.IsTrue(response.Response.Success); }
public void ItShouldCreateCreditCardSaleWithOrderReference() { // Cria o client que enviará a transação. IGatewayServiceClient serviceClient = this.GetGatewayServiceClient(); // Identificação do pedido na loja. string orderReference = Guid.NewGuid().ToString("n"); // Autoriza a transação de cartão de crédito e recebe a resposta do gateway. HttpResponse <CreateSaleResponse> httpResponse = serviceClient.Sale.Create(this._createSingleCreditCardTransaction, orderReference); Assert.AreEqual(HttpStatusCode.Created, httpResponse.HttpStatusCode); Assert.AreEqual(orderReference, httpResponse.Response.OrderResult.OrderReference); }
public void ItShouldConsultCreditCardWithInstantBuyKey() { // Cria o cliente para retentar a transação. IGatewayServiceClient serviceClient = this.GetGatewayServiceClient(); // Cria transação de cartão de crédito para ser retentada HttpResponse <CreateSaleResponse> saleResponse = serviceClient.Sale.Create(this._createCreditCardSaleRequest); Assert.AreEqual(saleResponse.HttpStatusCode, HttpStatusCode.Created); var instantBuyKey = saleResponse.Response.CreditCardTransactionResultCollection.Select(x => x.CreditCard.InstantBuyKey); // Obtém os dados do cartão de crédito no gateway. HttpResponse <GetInstantBuyDataResponse> httpResponse = serviceClient.CreditCard.GetCreditCard(instantBuyKey.FirstOrDefault()); Assert.AreEqual(HttpStatusCode.OK, httpResponse.HttpStatusCode); }
public void ItShouldDoQueryMethod() { // Cria o cliente para consultar o pedido. IGatewayServiceClient serviceClient = this.GetGatewayServiceClient(); // Cria transação de cartão de crédito para ser consultada HttpResponse <CreateSaleResponse> saleResponse = serviceClient.Sale.Create(this._createCreditCardSaleRequest); Assert.AreEqual(saleResponse.HttpStatusCode, HttpStatusCode.Created); Guid orderKey = saleResponse.Response.OrderResult.OrderKey; // Consulta o pedido no gateway. HttpResponse <QuerySaleResponse> httpResponse = serviceClient.Sale.QueryOrder(orderKey); Assert.AreEqual(httpResponse.HttpStatusCode, HttpStatusCode.OK); }
public void ItShouldRetryATransaction() { // Cria o cliente para retentar a transação. IGatewayServiceClient serviceClient = this.GetGatewayServiceClient(); // Cria transação de cartão de crédito para ser retentada HttpResponse <CreateSaleResponse> saleResponse = serviceClient.Sale.Create(this._createCreditCardSaleRequest); Assert.AreEqual(saleResponse.HttpStatusCode, HttpStatusCode.Created); Guid orderKey = saleResponse.Response.OrderResult.OrderKey; // Retenta a transação de cartão de crédito e recebe a resposta do gateway. HttpResponse <RetrySaleResponse> httpResponse = serviceClient.Sale.Retry(orderKey); Assert.AreEqual(httpResponse.HttpStatusCode, HttpStatusCode.OK); }
public void ItShouldCaptureATransaction() { // Cria o cliente para Capturar a transação. IGatewayServiceClient serviceClient = this.GetGatewayServiceClient(); // Cria transação de cartão de crédito para ser capturada HttpResponse <CreateSaleResponse> saleResponse = serviceClient.Sale.Create(this._createCreditCardSaleRequest); Assert.AreEqual(saleResponse.HttpStatusCode, HttpStatusCode.Created); Guid orderKey = saleResponse.Response.OrderResult.OrderKey; // Captura a transação de cartão de crédito e recebe a resposta do gateway. HttpResponse <ManageSaleResponse> httpResponse = serviceClient.Sale.Manage(ManageOperationEnum.Capture, orderKey); Assert.AreEqual(httpResponse.HttpStatusCode, HttpStatusCode.OK); }
public void ItShouldUpdateCreditCard() { // Cria o cliente para retentar a transação. IGatewayServiceClient serviceClient = this.GetGatewayServiceClient(); // Obtém o instantbuykey para atualizar o cartão Guid instantBuyKey = serviceClient.CreditCard.CreateCreditCard(this._createInstantBuyDataRequest).Response.InstantBuyKey; // Cria um buyer para usar o buyerkey e atualizar o cartão UpdateInstantBuyDataRequest updateInstantBuyDataRequest = new UpdateInstantBuyDataRequest { BuyerKey = serviceClient.Buyer.CreateBuyer(this._createBuyer).Response.BuyerKey }; // Atualiza o cartão var response = serviceClient.CreditCard.UpdateCreditCard(updateInstantBuyDataRequest, instantBuyKey); // Varifica se a operação foi bem sucedida Assert.IsTrue(response.Response.Success); }
public DenominationService(IJSonDao <DenominationModel> dao, IGatewayServiceClient gatewayServiceClient) { _dao = dao; _gatewayServiceClient = gatewayServiceClient; }
public void ItShouldCreateSaleWithAllFields() { CreateSaleRequest saleRequest = new CreateSaleRequest(); // Dados da transação de cartão de crédito. saleRequest.CreditCardTransactionCollection = new Collection <CreditCardTransaction>() { new CreditCardTransaction() { AmountInCents = 100, CreditCardOperation = CreditCardOperationEnum.AuthAndCapture, CreditCard = new CreditCard() { CreditCardBrand = CreditCardBrandEnum.Visa, CreditCardNumber = "4111111111111111", ExpMonth = 10, ExpYear = 2018, HolderName = "Somebody", SecurityCode = "123" }, // Opcional. Options = new CreditCardTransactionOptions() { // Indica que a transação é de simulação. PaymentMethodCode = 1 } } }; // Dados do comprador. saleRequest.Buyer = new Buyer() { DocumentNumber = "11111111111", DocumentType = DocumentTypeEnum.CPF, Email = "*****@*****.**", EmailType = EmailTypeEnum.Personal, Gender = GenderEnum.M, HomePhone = "(21) 12345678", Name = "Somebody", PersonType = PersonTypeEnum.Person, AddressCollection = new Collection <BuyerAddress>() { new BuyerAddress() { AddressType = AddressTypeEnum.Residential, City = "Rio de Janeiro", Complement = "10º floor", Country = CountryEnum.Brazil.ToString(), District = "Centro", Number = "199", State = "RJ", Street = "Rua da Quitanda", ZipCode = "20091005" } } }; // Dados do carrinho de compras. saleRequest.ShoppingCartCollection = new Collection <ShoppingCart>() { new ShoppingCart() { FreightCostInCents = 0, ShoppingCartItemCollection = new Collection <ShoppingCartItem>() { new ShoppingCartItem() { Description = "Teclado Padrão", ItemReference = "#1234", Name = "Teclado", Quantity = 3, TotalCostInCents = 60, UnitCostInCents = 20 } } } }; // Indica que o pedido usará anti fraude. saleRequest.Options.IsAntiFraudEnabled = true; // Cria o cliente que enviará a transação para o gateway. IGatewayServiceClient serviceClient = this.GetGatewayServiceClient(); // Autoriza a transação de cartão de crédito e recebe a resposta do gateway. HttpResponse <CreateSaleResponse> httpResponse = serviceClient.Sale.Create(saleRequest); Assert.AreEqual(HttpStatusCode.Created, httpResponse.HttpStatusCode); }