Summary
Define interfaces for all core SDK services so consumers can mock the SDK in their tests.
Requirements
OrderService interface — create order, get order status
PaymentMethodService interface — get available payment methods
TokenService interface — generate token, validate token
- Default implementations backed by the HTTP client
- Consumers can provide their own implementations or mock these in tests
Refs
initial-docs/project1.md — interfaces for core services, testability
initial-docs/project2.md — consumer-supplied HTTP client
Testing
Unit tests for default implementations (via stubbed HTTP). Verify interfaces are mockable with standard tools (Mockito). Target near-perfect coverage.
Summary
Define interfaces for all core SDK services so consumers can mock the SDK in their tests.
Requirements
OrderServiceinterface — create order, get order statusPaymentMethodServiceinterface — get available payment methodsTokenServiceinterface — generate token, validate tokenRefs
initial-docs/project1.md— interfaces for core services, testabilityinitial-docs/project2.md— consumer-supplied HTTP clientTesting
Unit tests for default implementations (via stubbed HTTP). Verify interfaces are mockable with standard tools (Mockito). Target near-perfect coverage.