aboutsummaryrefslogtreecommitdiff
path: root/src/test/java/edu/brown/cs/student/TransactionTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/java/edu/brown/cs/student/TransactionTest.java')
-rw-r--r--src/test/java/edu/brown/cs/student/TransactionTest.java96
1 files changed, 96 insertions, 0 deletions
diff --git a/src/test/java/edu/brown/cs/student/TransactionTest.java b/src/test/java/edu/brown/cs/student/TransactionTest.java
new file mode 100644
index 0000000..f9a00f7
--- /dev/null
+++ b/src/test/java/edu/brown/cs/student/TransactionTest.java
@@ -0,0 +1,96 @@
+package edu.brown.cs.student;
+
+import edu.brown.cs.student.term.parsing.LocalXmlParser;
+import edu.brown.cs.student.term.parsing.Transaction;
+import edu.brown.cs.student.term.parsing.XmlParser;
+import edu.brown.cs.student.term.trade.Trade;
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+import org.w3c.dom.Document;
+import org.w3c.dom.Element;
+import org.w3c.dom.Node;
+import org.w3c.dom.NodeList;
+
+import static org.junit.Assert.*;
+
+public class TransactionTest {
+ private XmlParser _xmlParser;
+ private Document _doc;
+
+ @Before
+ public void setUp() {
+ _xmlParser = new LocalXmlParser();
+ }
+
+ @After
+ public void tearDown() {
+ _xmlParser = null;
+ }
+
+ @Test
+ public void singleTrade(){
+ setUp();
+ Document doc = _xmlParser.parse("data/xml_single_trade_test.xml");
+ assertNotEquals(doc, null);
+
+ // One trades in transaction
+ Transaction transaction = new Transaction(doc);
+ assertEquals(transaction.getTrades().size(), 1);
+
+ // TODO: add more qualities on trade to test...
+ Trade firstTrade = transaction.getTrades().get(0);
+ assertEquals(firstTrade.getNumShares(), 8236);
+
+ tearDown();
+ }
+
+ @Test
+ public void multipleTrades(){
+ setUp();
+ Document doc = _xmlParser.parse("data/xml_multiple_trades_test.xml");
+ assertNotEquals(doc, null);
+
+ // Three trades in transaction
+ Transaction transaction = new Transaction(doc);
+ assertEquals(transaction.getTrades().size(), 3);
+
+ Trade firstTrade = transaction.getTrades().get(0);
+ assertEquals(firstTrade.getNumShares(), 3000);
+
+ Trade secondTrade = transaction.getTrades().get(1);
+ assertEquals(secondTrade.getNumShares(), 3000);
+
+ Trade lastTrade = transaction.getTrades().get(2);
+ assertEquals(lastTrade.getNumShares(), 2000);
+
+ tearDown();
+ }
+
+ /*
+ @Test
+ public void derivativeTransaction(){
+ setUp();
+ Document doc = _xmlParser.parse("data/xml_derivative_only_test.xml");
+ assertNotEquals(doc, null);
+
+ // One trades in transaction
+ Transaction transaction = new Transaction(doc);
+ assertEquals(transaction.getTrades().size(), 1);
+
+ // TODO: add more qualities on trade to test...
+ Trade firstTrade = transaction.getTrades().get(0);
+ assertEquals(firstTrade.getNumShares(), 8236);
+ assertEquals(firstTrade.getHolder().getId(), 1463126);
+
+ tearDown();
+ }
+ */
+
+ @Test
+ public void noTrades(){
+ setUp();
+ // TODO: add case, but won't realistically come up
+ tearDown();
+ }
+}