9 #include <boost/test/unit_test.hpp> 11 #define BOOST_TEST_MODULE test_hikyuu_base 12 #include <boost/test/unit_test.hpp> 15 #include <hikyuu/StockManager.h> 16 #include <hikyuu/Stock.h> 28 StockManager& sm = StockManager::instance();
29 Stock stock = sm[
"sz000001"];
35 result = stock.getTimeLineList(query);
36 BOOST_CHECK(result.size() == 0);
39 query = KQuery(-1, -1);
40 result = stock.getTimeLineList(query);
41 BOOST_CHECK(result.size() == 0);
44 query = KQuery(-1, -1);
45 result = stock.getTimeLineList(query);
46 BOOST_CHECK(result.size() == 0);
50 result = stock.getTimeLineList(query);
51 BOOST_CHECK(result.size() == 2);
52 BOOST_CHECK(result[0] == TimeLineRecord(Datetime(201812030931), 10.57, 26962));
53 BOOST_CHECK(result[1] == TimeLineRecord(Datetime(201812030932), 10.53, 15407));
56 query = KQuery(-3, -1);
57 result = stock.getTimeLineList(query);
58 BOOST_CHECK(result.size() == 2);
59 BOOST_CHECK(result[0] == TimeLineRecord(Datetime(201902011457), 11.20, 46));
60 BOOST_CHECK(result[1] == TimeLineRecord(Datetime(201902011458), 11.20, 0));
63 query = KQuery(-3, 0);
64 result = stock.getTimeLineList(query);
65 BOOST_CHECK(result.size() == 0);
69 result = stock.getTimeLineList(query);
70 BOOST_CHECK(result.size() == 10320);
71 BOOST_CHECK(result[0] == TimeLineRecord(Datetime(201812030930), 10.61, 83391));
72 BOOST_CHECK(result[6516] == TimeLineRecord(Datetime(201901111006), 10.18, 2823));
73 BOOST_CHECK(result[10319] == TimeLineRecord(Datetime(201902011459), 11.20, 20572));
77 result = stock.getTimeLineList(query);
78 BOOST_CHECK(result.size() == 3);
79 BOOST_CHECK(result[0] == TimeLineRecord(Datetime(201902011457), 11.20, 46));
80 BOOST_CHECK(result[1] == TimeLineRecord(Datetime(201902011458), 11.20, 0));
81 BOOST_CHECK(result[2] == TimeLineRecord(Datetime(201902011459), 11.20, 20572));
83 query = KQuery(10317);
84 result = stock.getTimeLineList(query);
85 BOOST_CHECK(result.size() == 3);
86 BOOST_CHECK(result[0] == TimeLineRecord(Datetime(201902011457), 11.20, 46));
87 BOOST_CHECK(result[1] == TimeLineRecord(Datetime(201902011458), 11.20, 0));
88 BOOST_CHECK(result[2] == TimeLineRecord(Datetime(201902011459), 11.20, 20572));
91 query = KQuery(10317, 10320);
92 result = stock.getTimeLineList(query);
93 BOOST_CHECK(result.size() == 3);
94 BOOST_CHECK(result[0] == TimeLineRecord(Datetime(201902011457), 11.20, 46));
95 BOOST_CHECK(result[1] == TimeLineRecord(Datetime(201902011458), 11.20, 0));
96 BOOST_CHECK(result[2] == TimeLineRecord(Datetime(201902011459), 11.20, 20572));
99 query = KQuery(10317, 10319);
100 result = stock.getTimeLineList(query);
101 BOOST_CHECK(result.size() == 2);
102 BOOST_CHECK(result[0] == TimeLineRecord(Datetime(201902011457), 11.20, 46));
103 BOOST_CHECK(result[1] == TimeLineRecord(Datetime(201902011458), 11.20, 0));
106 query = KQuery(10317, 10321);
107 result = stock.getTimeLineList(query);
108 BOOST_CHECK(result.size() == 3);
109 BOOST_CHECK(result[0] == TimeLineRecord(Datetime(201902011457), 11.20, 46));
110 BOOST_CHECK(result[1] == TimeLineRecord(Datetime(201902011458), 11.20, 0));
111 BOOST_CHECK(result[2] == TimeLineRecord(Datetime(201902011459), 11.20, 20572));
114 query = KQuery(10320);
115 result = stock.getTimeLineList(query);
116 BOOST_CHECK(result.size() == 0);
119 query = KQuery(10319);
120 result = stock.getTimeLineList(query);
121 BOOST_CHECK(result.size() == 1);
122 BOOST_CHECK(result[0] == TimeLineRecord(Datetime(201902011459), 11.20, 20572));
125 query = KQuery(10321);
126 result = stock.getTimeLineList(query);
127 BOOST_CHECK(result.size() == 0);
130 query = KQuery(10317, -1);
131 result = stock.getTimeLineList(query);
132 BOOST_CHECK(result.size() == 2);
133 BOOST_CHECK(result[0] == TimeLineRecord(Datetime(201902011457), 11.20, 46));
134 BOOST_CHECK(result[1] == TimeLineRecord(Datetime(201902011458), 11.20, 0));
137 query = KQuery(-3, 10319);
138 result = stock.getTimeLineList(query);
139 BOOST_CHECK(result.size() == 2);
140 BOOST_CHECK(result[0] == TimeLineRecord(Datetime(201902011457), 11.20, 46));
141 BOOST_CHECK(result[1] == TimeLineRecord(Datetime(201902011458), 11.20, 0));
147 StockManager& sm = StockManager::instance();
148 Stock stock = sm[
"sz000001"];
153 query = KQueryByDate(Datetime(201812030000));
154 result = stock.getTimeLineList(query);
155 BOOST_CHECK(result.size() == 10320);
156 BOOST_CHECK(result[0] == TimeLineRecord(Datetime(201812030930), 10.61, 83391));
157 BOOST_CHECK(result[6516] == TimeLineRecord(Datetime(201901111006), 10.18, 2823));
158 BOOST_CHECK(result[10319] == TimeLineRecord(Datetime(201902011459), 11.20, 20572));
161 query = KQueryByDate(Datetime(201812030930));
162 result = stock.getTimeLineList(query);
163 BOOST_CHECK(result.size() == 10320);
164 BOOST_CHECK(result[0] == TimeLineRecord(Datetime(201812030930), 10.61, 83391));
165 BOOST_CHECK(result[6516] == TimeLineRecord(Datetime(201901111006), 10.18, 2823));
166 BOOST_CHECK(result[10319] == TimeLineRecord(Datetime(201902011459), 11.20, 20572));
169 query = KQueryByDate(Datetime(201902011457));
170 result = stock.getTimeLineList(query);
171 BOOST_CHECK(result.size() == 3);
172 BOOST_CHECK(result[0] == TimeLineRecord(Datetime(201902011457), 11.20, 46));
173 BOOST_CHECK(result[1] == TimeLineRecord(Datetime(201902011458), 11.20, 0));
174 BOOST_CHECK(result[2] == TimeLineRecord(Datetime(201902011459), 11.20, 20572));
177 query = KQueryByDate(Datetime(201902011457), Datetime(201902011457));
178 result = stock.getTimeLineList(query);
179 BOOST_CHECK(result.size() == 0);
182 query = KQueryByDate(Datetime(201902011457), Datetime(201902011459));
183 result = stock.getTimeLineList(query);
184 BOOST_CHECK(result.size() == 2);
185 BOOST_CHECK(result[0] == TimeLineRecord(Datetime(201902011457), 11.20, 46));
186 BOOST_CHECK(result[1] == TimeLineRecord(Datetime(201902011458), 11.20, 0));
189 query = KQueryByDate(Datetime(201902011457), Datetime(201902020000));
190 result = stock.getTimeLineList(query);
191 BOOST_CHECK(result.size() == 3);
192 BOOST_CHECK(result[0] == TimeLineRecord(Datetime(201902011457), 11.20, 46));
193 BOOST_CHECK(result[1] == TimeLineRecord(Datetime(201902011458), 11.20, 0));
194 BOOST_CHECK(result[2] == TimeLineRecord(Datetime(201902011459), 11.20, 20572));
BOOST_AUTO_TEST_CASE(test_TimeLine_query_by_index)