Commit 339a3404 by Tuomas Riihimäki

Minor renames, and fix unit test cases.

 * Rename CheckoutFi parameters more correctly
 * All test classes need to start with Test or end with Test or TestCase
   To be included in maven builds
1 parent 6ae71ff6
......@@ -41,7 +41,6 @@ public class CheckoutBank {
throw new RuntimeException("Wrong type of node " + bank + " type " + bank.getNodeType());
}
key = bank.getNodeName();
logger.info("Bank type {}", bank);
NamedNodeMap attrs = bank.getAttributes();
String iconval = null;
String nameval = null;
......
......@@ -18,18 +18,14 @@
*/
package fi.codecrew.moya.beans;
import java.io.BufferedInputStream;
import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.math.BigDecimal;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Calendar;
import java.util.Date;
import java.util.EnumMap;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
......@@ -62,8 +58,8 @@ import org.w3c.dom.NodeList;
import org.xml.sax.SAXException;
import fi.codecrew.moya.checkoutfi.CheckoutFiCheckParam;
import fi.codecrew.moya.checkoutfi.CheckoutFiParam;
import fi.codecrew.moya.checkoutfi.CheckoutQuery;
import fi.codecrew.moya.checkoutfi.CheckoutFiPaymentParam;
import fi.codecrew.moya.checkoutfi.CheckoutQueryParam;
import fi.codecrew.moya.clientutils.BortalLocalContextHolder;
import fi.codecrew.moya.enums.apps.BillPermission;
import fi.codecrew.moya.facade.BillFacade;
......@@ -115,7 +111,7 @@ public class CheckoutFiBean implements CheckoutFiBeanLocal {
*
*/
public boolean isBillPaid(Bill bill) {
QueryBuilder<CheckoutFiCheckParam> cb = initQuerybuilder(CheckoutFiCheckParam.class, CheckoutFiCheckParam.values());
QueryBuilder cb = initQuerybuilder(CheckoutFiCheckParam.values());
if (!cb.isCredentialsValid()) {
throw new EJBException("Invalid Credentials");
......@@ -179,7 +175,7 @@ public class CheckoutFiBean implements CheckoutFiBeanLocal {
return ret;
}
protected <T extends Enum<T>> QueryBuilder<T> initQuerybuilder(Class<T> clz, CheckoutQuery[] params) {
protected QueryBuilder initQuerybuilder(CheckoutQueryParam[] params) {
final LanEventPrivateProperty expire = eventbean.getPrivateProperty(LanEventPrivatePropertyKey.CHECKOUT_FI_KEY_EXPIRE);
final String merchantid = eventbean.getPrivatePropertyString(LanEventPrivatePropertyKey.CHECKOUT_FI_MERCHANT_ID);
......@@ -188,7 +184,7 @@ public class CheckoutFiBean implements CheckoutFiBeanLocal {
if (expire != null) {
date = expire.getDateValue();
}
QueryBuilder<T> ret = new QueryBuilder<T>(clz, params, date, merchantid, merchantPassword);
QueryBuilder ret = new QueryBuilder(params, date, merchantid, merchantPassword);
return ret;
}
......@@ -200,7 +196,7 @@ public class CheckoutFiBean implements CheckoutFiBeanLocal {
if (bill.isFoowavePaymentOver()) {
return null;
}
QueryBuilder<CheckoutFiParam> queryBuilder = initQuerybuilder(CheckoutFiParam.class, CheckoutFiParam.values());
QueryBuilder queryBuilder = initQuerybuilder(CheckoutFiPaymentParam.values());
if (!queryBuilder.isCredentialsValid()) {
return null;
......@@ -214,15 +210,15 @@ public class CheckoutFiBean implements CheckoutFiBeanLocal {
final String priceInCents = Integer.valueOf(bill.totalPrice().multiply(TO_CENTS).intValue()).toString();
queryBuilder.addParam(CheckoutFiParam.STAMP, getStamp(bill));
queryBuilder.addParam(CheckoutFiParam.AMOUNT, priceInCents);
queryBuilder.addParam(CheckoutFiParam.REFERENCE, bill.getReferenceNumber().toString());
queryBuilder.addParam(CheckoutFiParam.MERCHANT, queryBuilder.getMerchantId());
queryBuilder.addParam(CheckoutFiParam.RETURN, returnUrl + "return.jsf");
queryBuilder.addParam(CheckoutFiParam.CANCEL, returnUrl + "cancel.jsf");
queryBuilder.addParam(CheckoutFiParam.REJECT, returnUrl + "reject.jsf");
queryBuilder.addParam(CheckoutFiParam.DELAYED, returnUrl + "delayed.jsf");
queryBuilder.addParam(CheckoutFiParam.DELIVERY_DATE, new SimpleDateFormat(DATEFORMAT).format(new Date()));
queryBuilder.addParam(CheckoutFiPaymentParam.STAMP, getStamp(bill));
queryBuilder.addParam(CheckoutFiPaymentParam.AMOUNT, priceInCents);
queryBuilder.addParam(CheckoutFiPaymentParam.REFERENCE, bill.getReferenceNumber().toString());
queryBuilder.addParam(CheckoutFiPaymentParam.MERCHANT, queryBuilder.getMerchantId());
queryBuilder.addParam(CheckoutFiPaymentParam.RETURN, returnUrl + "return.jsf");
queryBuilder.addParam(CheckoutFiPaymentParam.CANCEL, returnUrl + "cancel.jsf");
queryBuilder.addParam(CheckoutFiPaymentParam.REJECT, returnUrl + "reject.jsf");
queryBuilder.addParam(CheckoutFiPaymentParam.DELAYED, returnUrl + "delayed.jsf");
queryBuilder.addParam(CheckoutFiPaymentParam.DELIVERY_DATE, new SimpleDateFormat(DATEFORMAT).format(new Date()));
CloseableHttpResponse response = null;
List<CheckoutBank> ret = null;
......@@ -253,7 +249,7 @@ public class CheckoutFiBean implements CheckoutFiBeanLocal {
}
private static CloseableHttpResponse sendQuery(QueryBuilder<?> queryBuilder) throws ClientProtocolException, IOException {
private static CloseableHttpResponse sendQuery(QueryBuilder queryBuilder) throws ClientProtocolException, IOException {
CloseableHttpResponse response = null;
final HttpPost postRequest = new HttpPost(REMOTE_URL);
postRequest.setEntity(new UrlEncodedFormEntity(queryBuilder.getNameValuePairs()));
......@@ -416,14 +412,14 @@ public class CheckoutFiBean implements CheckoutFiBeanLocal {
return ret;
}
static class QueryBuilder<T extends Enum<T>> {
private final Map<CheckoutQuery, String> values = new HashMap<>();;
static class QueryBuilder {
private final Map<CheckoutQueryParam, String> values = new HashMap<>();;
private final Date expireDate;
private final String merchantId;
private final String merchantPassword;
private final CheckoutQuery[] types;
private final CheckoutQueryParam[] types;
QueryBuilder(Class<T> clz, CheckoutQuery[] types, Date expire, String merchantId, String merchantPassword) {
QueryBuilder(CheckoutQueryParam[] types, Date expire, String merchantId, String merchantPassword) {
this.expireDate = expire;
this.merchantId = merchantId;
this.merchantPassword = merchantPassword;
......@@ -438,7 +434,7 @@ public class CheckoutFiBean implements CheckoutFiBeanLocal {
}
public void addParam(CheckoutQuery key, String value) {
public void addParam(CheckoutQueryParam key, String value) {
values.put(key, value);
}
......@@ -447,14 +443,13 @@ public class CheckoutFiBean implements CheckoutFiBeanLocal {
List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>();
StringBuilder mdString = new StringBuilder();
for (CheckoutQuery v : types) {
for (CheckoutQueryParam v : types) {
String value = null;
if (values.containsKey(v)) {
value = values.get(v);
} else {
value = v.getDefaultValue();
}
logger.info("Add key {},value {}", v.name(), value);
if (value != null) {
mdString.append(value);
nameValuePairs.add(new BasicNameValuePair(v.name(), value));
......@@ -465,7 +460,6 @@ public class CheckoutFiBean implements CheckoutFiBeanLocal {
mdString.append(merchantPassword);
final String calculatedHash = PasswordFunctions.calculateMd5(mdString.toString());
logger.info("Calculated checksum {} from {}", mdString.toString(), calculatedHash);
nameValuePairs.add(new BasicNameValuePair("MAC", calculatedHash));
......
package fi.codecrew.moya.checkoutfi;
public enum CheckoutFiCheckParam implements CheckoutQuery {
public enum CheckoutFiCheckParam implements CheckoutQueryParam {
// DO NOT CHANGE THE ORDER OF THESE!
// The md5 checksum is calculated from
// these values...
......
......@@ -18,7 +18,7 @@
*/
package fi.codecrew.moya.checkoutfi;
public enum CheckoutFiParam implements CheckoutQuery {
public enum CheckoutFiPaymentParam implements CheckoutQueryParam {
// DO NOT CHANGE THE ORDER OF THESE!
// The md5 checksum is calculated from
......@@ -52,7 +52,7 @@ public enum CheckoutFiParam implements CheckoutQuery {
private final String defaultValue;
private CheckoutFiParam(String def) {
private CheckoutFiPaymentParam(String def) {
defaultValue = def;
}
......
package fi.codecrew.moya.checkoutfi;
public interface CheckoutQuery {
public interface CheckoutQueryParam {
public String name();
......
package fi.codecrew.moya.beans;
import org.testng.annotations.BeforeTest;
import javax.ejb.embeddable.EJBContainer;
import javax.naming.NamingException;
import org.testng.annotations.BeforeTest;
import org.testng.annotations.Test;
@Test
public abstract class AbstractEjbTest {
@BeforeTest
......
......@@ -19,8 +19,8 @@
package fi.codecrew.moya.beans;
import org.testng.annotations.Test;
public class BarcodeTests {
@Test
public class BarcodeTest {
@Test
public void tbd() {
}
......
......@@ -6,13 +6,13 @@ import org.testng.annotations.Test;
@Test
public class VipBeanTest {
private static final Logger log = LoggerFactory.getLogger(VipBeanTest.class);
private static final Logger log = LoggerFactory.getLogger(VipBeanTest.class);
@Test
public void testVip() {
log.info("testVip");
@Test
public void testVip() {
log.info("testVip");
VipBean vipBean = new VipBean();
}
VipBean vipBean = new VipBean();
}
}
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!