1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 package com.bitplan.simplegraph.excel;
22
23 import static org.junit.Assert.assertEquals;
24
25 import java.io.File;
26 import java.util.List;
27 import java.util.Map;
28 import java.util.logging.Logger;
29
30 import org.apache.poi.ss.usermodel.Workbook;
31 import org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.GraphTraversalSource;
32 import org.apache.tinkerpop.gremlin.structure.Graph;
33 import org.apache.tinkerpop.gremlin.tinkergraph.structure.TinkerFactory;
34 import org.junit.Test;
35
36 import com.bitplan.simplegraph.core.SimpleNode;
37 import com.bitplan.simplegraph.core.TestTinkerPop3;
38
39
40
41
42
43
44
45 public class TestExcelSystem {
46 public static boolean debug = false;
47 protected static Logger LOGGER = Logger
48 .getLogger("com.bitplan.simplegraph.excel");
49
50 String testAirRouteFileName = "../simplegraph-excel/air-routes.xlsx";
51 String testModernFileName="../simplegraph-excel/modern.xlsx";
52
53 @Test
54 public void testCreateExcelAirRoutes() throws Exception {
55 ExcelSystem es = new ExcelSystem();
56 Graph graph = TestTinkerPop3.getAirRoutes();
57 GraphTraversalSource g = graph.traversal();
58
59 Workbook wb = es.createWorkBook(g);
60 assertEquals(6, wb.getNumberOfSheets());
61 es.save(wb, testAirRouteFileName);
62 }
63
64 @Test
65 public void testCreateExcelModern() throws Exception {
66 ExcelSystem es = new ExcelSystem();
67 Graph graph = TinkerFactory.createModern();
68 GraphTraversalSource g = graph.traversal();
69
70 Workbook wb = es.createWorkBook(g);
71 assertEquals(4, wb.getNumberOfSheets());
72 es.save(wb, testModernFileName);
73 }
74
75 @Test
76 public void testReadExcel() throws Exception {
77 ExcelSystem es = new ExcelSystem();
78 es.connect();
79 File testFile = new File(testModernFileName);
80 es.moveTo(testFile.toURI().toString());
81 debug=true;
82 if (debug)
83 es.forAll(SimpleNode.printDebug);
84 long nodeCount = es.g().V().count().next().longValue();
85 assertEquals(17,nodeCount);
86 List<Map<String, Object>> sheetMapList = es.g().V().has("sheetname").valueMap("sheetname").toList();
87 assertEquals(4,sheetMapList.size());
88 assertEquals(12,es.g().V().has("row").count().next().longValue());
89 assertEquals(4,es.g().V().has("row").out("sheet").dedup().count().next().longValue());
90 }
91
92 }