Skip to content

Commit

Permalink
Merge pull request #73 from Julius278/cleanup
Browse files Browse the repository at this point in the history
NO_ISSUE, cleanup
  • Loading branch information
Julius278 authored Jun 17, 2024
2 parents cdcc0b1 + 5726c75 commit b2a9ac2
Show file tree
Hide file tree
Showing 3 changed files with 93 additions and 60 deletions.

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,10 @@
import jakarta.xml.bind.*;
import net.finmath.smartcontract.model.ExceptionId;
import net.finmath.smartcontract.model.SDCException;
import net.finmath.smartcontract.settlement.Settlements;
import net.finmath.smartcontract.valuation.marketdata.curvecalibration.CalibrationDataItem;
import net.finmath.smartcontract.product.SmartDerivativeContractDescriptor;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.w3c.dom.Document;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
Expand All @@ -28,6 +29,8 @@
*/
public class SDCXMLParser {

private static final Logger logger = LoggerFactory.getLogger(SDCXMLParser.class);

private SDCXMLParser() {
}

Expand Down Expand Up @@ -165,12 +168,13 @@ public static <T> T unmarshalXml(String xml, Class<T> t) {

public static <T> String marshalClassToXMLString(T t) {
try {
JAXBContext jaxbContextSettlement = JAXBContext.newInstance(Settlements.class);
JAXBContext jaxbContextSettlement = JAXBContext.newInstance(t.getClass());
Marshaller jaxbMarshaller = jaxbContextSettlement.createMarshaller();
StringWriter writer = new StringWriter();
jaxbMarshaller.marshal(t, writer);
return writer.toString();
} catch (JAXBException e) {
logger.error("jaxb error, ", e);
throw new SDCException(ExceptionId.SDC_JAXB_ERROR, e.getMessage());
}
}
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,87 @@
package net.finmath.smartcontract.settlement;

import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;

import java.time.ZonedDateTime;
import java.util.ArrayList;
import java.util.List;
import java.util.Optional;

import static org.junit.jupiter.api.Assertions.*;

class SettlementsTest {

Settlements settlements;

String tradeId1, tradeId2, tradeId3, tradeId4;
Settlement s1, s2, s3, s4;

@BeforeEach
void setup() {
settlements = new Settlements();
generateSettlementList();
}

@Test
void getPrevious() {
Optional<Settlement> optionalSettlement = settlements.getPrevious(s3);
Settlement settlement = null;
if (optionalSettlement.isPresent())
settlement = optionalSettlement.get();

assertNotNull(settlement);
assertEquals(s2, settlement);
assertEquals(tradeId2, settlement.getTradeId());
}

@Test
void getNext() {
Optional<Settlement> optionalSettlement = settlements.getNext(s3);
Settlement settlement = null;
if (optionalSettlement.isPresent()) {
settlement = optionalSettlement.get();
}

assertNotNull(settlement);
assertEquals(s4, settlement);
assertEquals(tradeId4, settlement.getTradeId());
}

@Test
void getSettlements() {
List<Settlement> list = settlements.getSettlements();

assertNotNull(list);
assertEquals(tradeId1, list.get(list.indexOf(s1)).getTradeId());
}


private void generateSettlementList() {
tradeId1 = "ID_1";
tradeId2 = "ID_2";
tradeId3 = "ID_3";
tradeId4 = "ID_4";

List<Settlement> list = new ArrayList<>();

s1 = new Settlement();
s1.setTradeId(tradeId1);
list.add(s1);

s2 = new Settlement();
s2.setTradeId(tradeId2);
list.add(s2);

s3 = new Settlement();
s3.setTradeId(tradeId3);
list.add(s3);

s4 = new Settlement();
s4.setTradeId(tradeId4);
list.add(s4);

settlements.setSettlements(list);
}

}

0 comments on commit b2a9ac2

Please sign in to comment.