public void given_default_json_response_from_punto_pago_when_call_json_serializer_then_return_transaction_response_dto()
{
const string json = "{\"respuesta\":\"00\",\"token\":\"9XJ08401WN0071839\",\"trx_id\":\"9787415132\",\"medio_pago\":\"999\",\"monto\":\"1000000.00\"}";
_configuration.Setup(x => x.GetProcessTransactionUrl()).Returns("/url");
var transactionResponseDto = new CreateTransactionResponseDto(JsonSerializerService.DeserializeFromString(json), _configuration.Object);
Assert.AreEqual("9XJ08401WN0071839", transactionResponseDto.Token);
Assert.AreEqual(9787415132, transactionResponseDto.TransactionId);
Assert.IsFalse(transactionResponseDto.WithError);
Assert.IsNull(transactionResponseDto.PaymentMethod);
Assert.AreEqual(1000000, transactionResponseDto.Currency.Amount);
Assert.IsNullOrEmpty(transactionResponseDto.ErrorMessage);
Assert.AreEqual("/url/9XJ08401WN0071839", transactionResponseDto.ProcessUrl);
}