@Test public void createGiropayParams_toParamMap_createsExpectedMap() { final SourceParams params = SourceParams.createGiropayParams( 150L, "Stripe", "stripe://return", "stripe descriptor"); Map<String, Object> expectedMap = new HashMap<>(); expectedMap.put("type", Source.GIROPAY); expectedMap.put("currency", Source.EURO); expectedMap.put("amount", 150L); expectedMap.put("owner", new HashMap<String, Object>() {{ put("name", "Stripe"); }}); expectedMap.put("redirect", new HashMap<String, Object>() {{ put("return_url", "stripe://return"); }}); expectedMap.put(Source.GIROPAY, new HashMap<String, Object>() {{ put("statement_descriptor", "stripe descriptor"); }}); JsonTestUtils.assertMapEquals(expectedMap, params.toParamMap()); }
@Test public void createCustomParamsWithSourceTypeParameters_toParamMap_createsExpectedMap() { // Using the Giropay constructor to add some free params and expected values, // including a source type params final String DOGECOIN = "dogecoin"; final SourceParams params = SourceParams.createGiropayParams( 150L, "Stripe", "stripe://return", "stripe descriptor"); params.setTypeRaw(DOGECOIN); Map<String, Object> expectedMap = new HashMap<>(); expectedMap.put("type", DOGECOIN); expectedMap.put("currency", Source.EURO); expectedMap.put("amount", 150L); expectedMap.put("owner", new HashMap<String, Object>() {{ put("name", "Stripe"); }}); expectedMap.put("redirect", new HashMap<String, Object>() {{ put("return_url", "stripe://return"); }}); expectedMap.put(DOGECOIN, new HashMap<String, Object>() {{ put("statement_descriptor", "stripe descriptor"); }}); JsonTestUtils.assertMapEquals(expectedMap, params.toParamMap()); }
@Test public void createGiropayParams_hasExpectedFields() { final SourceParams params = SourceParams.createGiropayParams( 150L, "Stripe", "stripe://return", "stripe descriptor"); assertEquals(Source.GIROPAY, params.getType()); assertEquals(Source.EURO, params.getCurrency()); assertNotNull(params.getAmount()); assertEquals(150L, params.getAmount().longValue()); assertNotNull(params.getOwner()); assertEquals("Stripe", params.getOwner().get("name")); assertNotNull(params.getRedirect()); assertEquals("stripe://return", params.getRedirect().get("return_url")); Map<String, Object> apiMap = params.getApiParameterMap(); assertEquals("stripe descriptor", apiMap.get("statement_descriptor")); }
@Test public void createGiropayParams_withNullStatementDescriptor_hasExpectedFieldsButNoApiParams() { final SourceParams params = SourceParams.createGiropayParams( 150L, "Stripe", "stripe://return", null); assertEquals(Source.GIROPAY, params.getType()); assertEquals(Source.EURO, params.getCurrency()); assertNotNull(params.getAmount()); assertEquals(150L, params.getAmount().longValue()); assertNotNull(params.getOwner()); assertEquals("Stripe", params.getOwner().get("name")); assertNotNull(params.getRedirect()); assertEquals("stripe://return", params.getRedirect().get("return_url")); assertNull(params.getApiParameterMap()); }
TestLoggingListener listener = new TestLoggingListener(true); stripe.setLoggingResponseListener(listener); SourceParams params = SourceParams.createGiropayParams( 2000L, "Mr. X",