我遇到了一个女孩(https://github.com/stripe/stripe-mock)最近,对于本地测试,
public PaymentMethod createPaymentMethod(Card card) {
var paymentMethodParams =
PaymentMethodCreateParams.builder()
.setType(Type.CARD)
.setCard(
CardDetails.builder()
.setNumber(card.getNumber())
.setExpMonth((long) card.getExpiryMonth())
.setExpYear((long) card.getExpiryYear())
.setCvc(card.getCvv())
.build())
.build();
var response = testMode? "Make API call to mock stripe with params" : PaymentMethod.create(paymentMethodParams);
return response;
}
现在我不想用http客户机和请求体手动调用stripemock服务器,有没有办法改变 RequestOptions
或者使用不同的依赖项进行调用?
基本上,我不想做,比如
String url = String.format("%s%s", Stripe.getApiBase(), String.format("/v1/payment_methods/%s", ApiResource.urlEncodeId(paymentMethod)));
只是以某种方式覆盖条带基api url。 Stripe.overrideApiBase();
是一些有用的东西,但它对stripejava库是静态的,我希望在运行e2e测试时,正常的stripe调用能够通过。
1条答案
按热度按时间3yhwsihp1#
Stripe.overrideApiBase()
很可能是你想要的;您只需要将应用程序配置为仅在运行端到端测试时覆盖它。