aboutsummaryrefslogtreecommitdiff
path: root/src/test/java/edu/brown/cs/student/FilingTest.java
blob: a9b21d3762d3c08867a2f9b7bf38ff077c082489 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
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.TxtXmlParser;
import edu.brown.cs.student.term.parsing.UrlXmlParser;
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 javax.print.Doc;

import static org.junit.Assert.*;

public class FilingTest {
  private XmlParser _xmlParser, _txtXmlParser;

  @Before
  public void setUp() {
    _xmlParser = new UrlXmlParser();
    _txtXmlParser = new TxtXmlParser();
  }

  @After
  public void tearDown() {
    _xmlParser = null;
    _txtXmlParser = null;
  }

  @Test
  public void seeWorks(){
    setUp();

    String url = "https://www.sec.gov/cgi-bin/browse-edgar?" +
        "action=getcurrent" +
        "&CIK=" +
        "&type=4" +
        "&company=" +
        "&dateb=" +
        "&owner=only" +
        "&start=0" +
        "&count=10" +
        "&output=atom";

    Document doc = _xmlParser.parse(url);
    assertNotNull(doc);
    NodeList entries = doc.getElementsByTagName("entry");
    assertNotEquals(entries.getLength(), 0);
    assertEquals(entries.item(0).getNodeType(), Node.ELEMENT_NODE);
    for (int i = 0; i < entries.getLength(); i++) {
      Element entry = (Element) entries.item(i);
      NodeList link = entry.getElementsByTagName("link");
      assertEquals(link.getLength(), 1);
      String linkUrl = link.item(0).getAttributes().getNamedItem("href").getNodeValue();
      System.out.println(linkUrl);

      NodeList updated = entry.getElementsByTagName("updated");
      assertEquals(link.getLength(), 1);
      System.out.println(updated.item(0).getTextContent());
    }

    tearDown();
  }

  @Test
  public void xmlUrlFromFilingUrl(){
    setUp();

    String url = "https://www.sec.gov/Archives/edgar/data/1597341/000141588921001958/0001415889-21-001958.txt";
    Document doc = _txtXmlParser.parse(url);
    assertNotNull(doc);
    tearDown();
  }


}