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.java86
1 files changed, 27 insertions, 59 deletions
diff --git a/src/test/java/edu/brown/cs/student/TransactionTest.java b/src/test/java/edu/brown/cs/student/TransactionTest.java
index a5e2987..444263d 100644
--- a/src/test/java/edu/brown/cs/student/TransactionTest.java
+++ b/src/test/java/edu/brown/cs/student/TransactionTest.java
@@ -1,7 +1,9 @@
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;
@@ -27,82 +29,48 @@ public class TransactionTest {
}
@Test
- public void personDataParse(){
+ public void singleTrade(){
setUp();
Document doc = _xmlParser.parse("data/xml_single_trade_test.xml");
- assertNotNull(doc);
-
- // Id of person
- NodeList idNode = doc.getElementsByTagName("rptOwnerCik");
- assertEquals(idNode.getLength(), 1);
- String id = idNode.item(0).getTextContent();
- assertEquals(id, "0001561844");
-
- // Name of person
- NodeList nameNode = doc.getElementsByTagName("rptOwnerName");
- assertEquals(nameNode.getLength(), 1);
- String name = nameNode.item(0).getTextContent();
- assertEquals(name, "Levental Igor");
-
- tearDown();
- }
+ assertNotEquals(doc, null);
- @Test
- public void securityDataParse(){
- setUp();
- Document doc = _xmlParser.parse("data/xml_single_trade_test.xml");
- assertNotNull(doc);
+ // One trades in transaction
+ Transaction transaction = new Transaction(doc);
+ assertEquals(transaction.getTrades().size(), 1);
- // Ticker of security
- NodeList idNode = doc.getElementsByTagName("issuerTradingSymbol");
- assertEquals(idNode.getLength(), 1);
- String id = idNode.item(0).getTextContent();
- assertEquals(id, "GATO");
+ // TODO: add more qualities on trade to test...
+ Trade firstTrade = transaction.getTrades().get(0);
+ assertEquals(firstTrade.getNumShares(), 8236);
tearDown();
}
@Test
- public void tradeDataParse(){
+ public void multipleTrades(){
setUp();
- Document doc = _xmlParser.parse("data/xml_single_trade_test.xml");
+ Document doc = _xmlParser.parse("data/xml_multiple_trades_test.xml");
assertNotEquals(doc, null);
- // Data of trade in an array of values
- NodeList trade = doc.getElementsByTagName("nonDerivativeTransaction");
- assertEquals(trade.item(0).getNodeType(), Node.ELEMENT_NODE);
- Element tradeElement = (Element) trade.item(0);
- NodeList values = tradeElement.getElementsByTagName("value");
- assertEquals(values.getLength(), 7);
-
- // type of stock
- String stockType = values.item(0).getTextContent();
- assertEquals(stockType, "Common Stock");
-
- // date
- String date = values.item(1).getTextContent();
- assertEquals(date, "2021-03-31");
-
- // # of shares
- String numShares = values.item(2).getTextContent();
- assertEquals(numShares, "8236");
+ // Three trades in transaction
+ Transaction transaction = new Transaction(doc);
+ assertEquals(transaction.getTrades().size(), 3);
- // price of shares
- String priceShares = values.item(3).getTextContent();
- assertEquals(priceShares, "0");
+ Trade firstTrade = transaction.getTrades().get(0);
+ assertEquals(firstTrade.getNumShares(), 3000);
- // transaction type (A for acquire)
- String transactionType = values.item(4).getTextContent();
- assertEquals(transactionType, "A");
+ Trade secondTrade = transaction.getTrades().get(1);
+ assertEquals(secondTrade.getNumShares(), 3000);
- // shared after transaction
- String sharesAfter = values.item(5).getTextContent();
- assertEquals(sharesAfter, "10799");
+ Trade lastTrade = transaction.getTrades().get(2);
+ assertEquals(lastTrade.getNumShares(), 2000);
- // ownership type
- String ownershipType = values.item(6).getTextContent();
- assertEquals(ownershipType, "D");
+ tearDown();
+ }
+ @Test
+ public void noTrades(){
+ setUp();
+ // TODO: add case, but won't realistically come up
tearDown();
}
}