1 #ifndef TA_ERROR_NUMBER_H
2 #define TA_ERROR_NUMBER_H
3 
4 /* All possible failure should have a unique number different than zero. */
5 typedef enum
6 {
7   TA_TEST_PASS = 0,
8 
9   /* Error code for test in ta_regtest.c */
10   TA_REGTEST_BAD_USER_PARAM           =  1,
11   TA_REGTEST_ADDDATASOURCE_FAILED     =  2,
12   TA_REGTEST_HISTORYALLOC_FAILED      =  3,
13   TA_REGTEST_HISTORYFREE_FAILED       =  4,
14   TA_REGTEST_HISTORYALLOC_0           =  5,
15   TA_REGTEST_HISTORYALLOC_1           =  6,
16   TA_REGTEST_HISTORYALLOC_2           =  7,
17   TA_REGTEST_HISTORYALLOC_3           =  8,
18   TA_REGTEST_HISTORYALLOC_4           =  9,
19   TA_REGTEST_HISTORYALLOC_5           = 10,
20   TA_REGTEST_HISTORYALLOC_6           = 11,
21   TA_REGTEST_HISTORYALLOC_7           = 12,
22   TA_REGTEST_HISTORYALLOC_8           = 13,
23   TA_REGTEST_HISTORYALLOC_9           = 14,
24   TA_REGTEST_HISTORYALLOC_10          = 15,
25   TA_REGTEST_HISTORYALLOC_11          = 16,
26   TA_REGTEST_HISTORYALLOC_12          = 17,
27   TA_REGTEST_HISTORYALLOC_13          = 18,
28   TA_REGTEST_HISTORYALLOC_14          = 19,
29   TA_REGTEST_HISTORYALLOC_15          = 20,
30   TA_REGTEST_HISTORYALLOC_16          = 21,
31   TA_REGTEST_HISTORYALLOC_17          = 22,
32   TA_REGTEST_HISTORYALLOC_18          = 23,
33   TA_REGTEST_HISTORYALLOC_19          = 24,
34   TA_REGTEST_ADDDSOURCE_FAILED        = 25,
35   TA_REGTEST_OPTIMIZATION_REF_ERROR   = 26,
36 
37   /* Error code for test in test_util.c */
38   TA_TESTUTIL_INIT_FAILED             = 101,
39   TA_TESTUTIL_SET_FATAL_ERROR_FAILED  = 102,
40   TA_TESTUTIL_UDBASE_ALLOC_FAILED     = 103,
41   TA_TESTUTIL_UDBASE_FREE_FAILED      = 104,
42   TA_TESTUTIL_SHUTDOWN_FAILED         = 105,
43 
44   TA_TESTUTIL_TFRR_BAD_PARAM            = 120,
45   TA_TESTUTIL_TFRR_BAD_RETCODE          = 121,
46   TA_TESTUTIL_TFRR_BAD_CALCULATION      = 122,
47   TA_TESTUTIL_TFRR_BAD_BEGIDX           = 123,
48   TA_TESTUTIL_TFRR_BAD_OUTNBELEMENT     = 124,
49 
50   TA_TEST_TFRR_BAD_OVERLAP_OR_NAN       = 125,
51   TA_TEST_TFRR_INPUT_HAS_BEEN_MODIFIED  = 126,
52   TA_TEST_TFRR_CHECK_SAME_CONTENT       = 127,
53   TA_TEST_TFRR_OVERLAP_OR_NAN_0         = 128,
54   TA_TEST_TFRR_OVERLAP_OR_NAN_1         = 129,
55   TA_TEST_TFRR_OVERLAP_OR_NAN_2         = 130,
56   TA_TEST_TFRR_OVERLAP_OR_NAN_3         = 131,
57   TA_TEST_TFRR_OVERLAP_OR_NAN_4         = 132,
58   TA_TEST_TFRR_OVERLAP_OR_NAN_5         = 133,
59   TA_TEST_TFRR_OVERLAP_OR_NAN_6         = 134,
60   TA_TEST_TFRR_OVERLAP_OR_NAN_7         = 135,
61   TA_TEST_TFRR_OVERLAP_OR_NAN_8         = 136,
62   TA_TEST_TFRR_OVERLAP_OR_NAN_9         = 137,
63   TA_TEST_TFRR_SETUNSTABLE_PERIOD_FAIL  = 138,
64   TA_TEST_TFRR_NB_ELEMENT_OUT_OF_RANGE  = 139,
65   TA_TEST_TFRR_BAD_MA_TYPE              = 140,
66   TA_TEST_TFFR_BAD_MA_LOOKBACK          = 141,
67 
68   TA_TESTUTIL_DRT_REF_FAILED            = 150,
69   TA_TESTUTIL_DRT_ALLOC_ERR             = 151,
70   TA_TESTUTIL_DRT_RETCODE_ERR           = 152,
71   TA_TESTUTIL_DRT_BAD_SUFFIX            = 153,
72   TA_TESTUTIL_DRT_BAD_PREFIX            = 154,
73   TA_TESTUTIL_DRT_MISSING_DATA          = 155,
74   TA_TESTUTIL_DRT_BAD_OUTNBLEMENT       = 156,
75   TA_TESTUTIL_DRT_BAD_OUTBEGIDX         = 157,
76   TA_TESTUTIL_DRT_LOOKBACK_TOO_HIGH     = 158,
77   TA_TESTUTIL_DRT_LOOKBACK_INCORRECT    = 159,
78   TA_TESTUTIL_DRT_REF_OUTPUT_INCORRECT  = 160,
79   TA_TESTUTIL_DRT_DATA_DIFF             = 161,
80   TA_TESTUTIL_DRT_DATA_DIFF_INT         = 162,
81   TA_TESTUTIL_DRT_OUT_OF_BOUND_OUT      = 163,
82   TA_TESTUTIL_DRT_OUT_OF_BOUND_OUT_INT  = 164,
83 
84   /* Error code for test in test_period.c */
85   TA_PERIOD_HISTORYALLOC_FAILED               = 200,
86   TA_PERIOD_NBBAR_INCORRECT                   = 201,
87   TA_PERIOD_PRICE_INCORRECT                   = 202,
88   TA_PERIOD_OPENINTEREST_INCORRECT            = 203,
89   TA_PERIOD_TIMESTAMP_YEAR_INCORRECT          = 204,
90   TA_PERIOD_TIMESTAMP_MONTH_INCORRECT         = 205,
91   TA_PERIOD_TIMESTAMP_DAY_INCORRECT           = 206,
92   TA_PERIOD_HISTORYFREE_FAILED                = 207,
93   TA_PERIOD_DELTA_WEEKDAY_FAILED              = 208,
94   TA_PERIOD_DELTA_WEEKDAY_FAILED_1            = 209,
95   TA_PERIOD_END_OF_PERIOD_ADD_FAILED          = 210,
96   TA_PERIOD_END_OF_PERIOD_HISTORY_FAILED      = 211,
97   TA_PERIOD_END_OF_PERIOD_CONSOLIDATED_FAILED = 212,
98   TA_PERIOD_END_OF_PERIOD_WRONG_HISTORY       = 213,
99   TA_PERIOD_HISTORYCOMPARE_FAILED             = 214,
100 
101   /* Error code for test in test_ascii.c */
102   TA_TESTASCII_UNEXPECTED_RETCODE       = 301,
103   TA_TESTASCII_FOREACHSYMBOL_FAILED     = 302,
104   TA_TESTASCII_SEARCHININDEX_FAILED     = 303,
105   TA_TESTASCII_CANTFIND_CATSYM_IN_INDEX = 304,
106   TA_TESTASCII_SAMPLING_FILE_NOT_FOUND  = 305,
107   TA_TESTASCII_CATTABLE_ALLOC_ERROR     = 306,
108   TA_TESTASCII_SYMTABLE_ALLOC_ERROR     = 307,
109   TA_TESTASCII_CATTABLE_FREE_ERROR      = 308,
110   TA_TESTASCII_SYMTABLE_FREE_ERROR      = 309,
111   TA_TESTASCII_EQV_HISTORYALLOC         = 310,
112   TA_TESTASCII_EQV_DIFF_HISTORY_PTR     = 311,
113   TA_TESTASCII_HISTORYFREE_FAILED       = 312,
114   TA_TESTASCII_EQV_DIFF_NBBARS          = 313,
115   TA_TESTASCII_EQV_DIFF_PERIOD          = 314,
116   TA_TESTASCII_EQV_DIFF_VALUE           = 315,
117   TA_TESTASCII_UDBASEFREE_FAILED        = 316,
118   TA_TESTASCII_EQV_BAD_FILENAME         = 317,
119   TA_TESTASCII_EQV_ADDDATASOURCE        = 318,
120   TA_TESTASCII_EQV_BAD_FIELD_ID         = 319,
121   TA_TESTASCII_REFHISTORYFREE_FAILED    = 320,
122   TA_TESTASCII_EQV_DIFF_DATA            = 321,
123   TA_TESTASCII_CATSYM_NOT_FOUND         = 322,
124 
125   /* Error code for test in test_yahoo.c */
126   TA_YAHOO_ADDDATASOURCE_USA_FAILED     = 330,
127   TA_YAHOO_HISTORYALLOC_1_FAILED        = 331,
128   TA_YAHOO_HISTORYALLOC_2_FAILED        = 332,
129   TA_YAHOO_HISTORYALLOC_3_FAILED        = 333,
130   TA_YAHOO_HISTORYFREE_FAILED           = 334,
131   TA_YAHOO_VALUE_1_FAILED               = 335,
132   TA_YAHOO_VALUE_2_FAILED               = 336,
133   TA_YAHOO_VALUE_3_FAILED               = 337,
134   TA_YAHOO_FIELD_MISSING_1              = 338,
135   TA_YAHOO_FIELD_MISSING_2              = 339,
136   TA_YAHOO_FIELD_MISSING_3              = 340,
137   TA_YAHOO_CRS_HISTORYALLOC_FAILED      = 341,
138   TA_YAHOO_CRS_NBBARSBAD                = 342,
139   TA_YAHOO_CRS_PRICEBARBAD              = 343,
140   TA_YAHOO_ADDDATASOURCE_CAN_FAILED     = 344,
141   TA_YAHOO_ADDDATASOURCE_KPN_AS_FAILED  = 345,
142   TA_YAHOO_HISTORYALLOC_KPN_AS_FAILED   = 346,
143 
144   /* Error code for test in test_pm.c */
145   TA_PM_EMPTY_TA_TRADE_LOG_TESTS_0      = 400,
146   TA_PM_EMPTY_TA_TRADE_LOG_TESTS_1      = 401,
147   TA_PM_EMPTY_TA_TRADE_LOG_TESTS_2      = 402,
148   TA_PM_EMPTY_TA_TRADE_LOG_TESTS_3      = 403,
149   TA_PM_EMPTY_TA_TRADE_LOG_TESTS_4      = 404,
150   TA_PM_EMPTY_TA_TRADELOGFREE_FAILED    = 405,
151   TA_PM_ERR_INVALID_KEY_TYPE            = 406,
152   TA_PM_TRADELOGADD_ONE_TRADE_FAILED    = 407,
153   TA_PM_TRADELOGFREE_ONE_TRADE_FAILED   = 408,
154   TA_PM_2TRADETST_BAD_TRADE_TYPE        = 409,
155   TA_PM_2TRADETST_TRADELOGADD_1         = 410,
156   TA_PM_2TRADETST_TRADELOGADD_2         = 411,
157   TA_PM_2TRADETST_PMALLOC_FAILED        = 412,
158   TA_PM_2TRADETST_PMADDTRADELOG_FAILED  = 413,
159   TA_PM_2TRADETST_PMFREE_FAILED         = 414,
160   TA_PM_CHECKVALUE_FAILED_0             = 415,
161   TA_PM_CHECKVALUE_FAILED_1             = 416,
162   TA_PM_CHECKVALUE_FAILED_2             = 417,
163   TA_PM_CHECKVALUE_FAILED_3             = 418,
164   TA_PM_CHECKVALUE_FAILED_4             = 419,
165   TA_PM_CHECKVALUE_FAILED_5             = 420,
166   TA_PM_CHECKVALUE_FAILED_6             = 421,
167   TA_PM_CHECKVALUE_FAILED_7             = 422,
168   TA_PM_CHECKVALUE_FAILED_8             = 423,
169   TA_PM_CHECKVALUE_FAILED_9             = 424,
170   TA_PM_CHECKVALUE_FAILED_10            = 425,
171   TA_PM_ERR_CHECK_NO_HANG_1             = 426,
172   TA_PM_ERR_CHECK_NO_HANG_2             = 427,
173   TA_PM_ERR_CHECK_NO_HANG_3             = 428,
174   TA_PM_ERR_CHECK_NO_HANG_4             = 429,
175   TA_PM_ERR_CHECK_NO_HANG_5             = 430,
176   TA_PM_ERR_CHECK_NO_HANG_6             = 431,
177   TA_PM_TRADELOGADD_ONE_TRADE_FAILED_1  = 432,
178   TA_PM_TRADELOGADD_ONE_TRADE_FAILED_2  = 433,
179   TA_PM_TRADELOGADD_ONE_TRADE_FAILED_3  = 434,
180   TA_PM_UNKNOWN_TRANSACTION_TYPE        = 435,
181   TA_PM_REPORT_ALLOC_FAILED             = 436,
182   TA_PM_TEST_VALUE_ID_FAILED_0          = 437,
183   TA_PM_TEST_VALUE_ID_FAILED_1          = 438,
184   TA_PM_TEST_VALUE_ID_FAILED_2          = 439,
185   TA_PM_TEST_VALUE_ID_FAILED_3          = 440,
186   TA_PM_TEST_VALUE_ID_FAILED_4          = 441,
187   TA_PM_TEST_VALUE_ID_FAILED_5          = 442,
188   TA_PM_TEST_VALUE_ID_FAILED_6          = 443,
189   TA_PM_TEST_VALUE_ID_FAILED_7          = 444,
190   TA_PM_TEST_VALUE_ID_FAILED_8          = 445,
191   TA_PM_TEST_VALUE_ID_FAILED_9          = 446,
192   TA_PM_VALUE_TO_FILE_FAILED            = 447,
193   TA_PM_TEST_ARRAY_ID_FAILED_0          = 448,
194   TA_PM_TEST_ARRAY_ID_FAILED_1          = 449,
195   TA_PM_TEST_ARRAY_ID_FAILED_2          = 450,
196   TA_PM_TEST_ARRAY_ID_FAILED_3          = 451,
197   TA_PM_TEST_ARRAY_ID_FAILED_4          = 452,
198   TA_PM_TEST_ARRAY_ID_FAILED_5          = 453,
199   TA_PM_TEST_ARRAY_ID_FAILED_6          = 454,
200   TA_PM_TEST_ARRAY_ID_FAILED_7          = 455,
201   TA_PM_TEST_ARRAY_ID_FAILED_8          = 456,
202   TA_PM_TEST_ARRAY_ID_FAILED_9          = 457,
203   TA_PM_TEST_ARRAY_WITH_INVALID_DATE    = 458,
204 
205   /* Error code related to call to ta_abstract */
206   TA_ABS_TST_FAIL_GETFUNCHANDLE         = 600,
207   TA_ABS_TST_FAIL_GETFUNCINFO           = 601,
208   TA_ABS_TST_FAIL_PARAMHOLDERALLOC      = 602,
209   TA_ABS_TST_FAIL_PARAMHOLDERFREE       = 603,
210   TA_ABS_TST_FAIL_PARAMREALPTR          = 604,
211   TA_ABS_TST_FAIL_OPTINPUTPARAMINTEGER  = 605,
212   TA_ABS_TST_FAIL_SETOUTPUTPARAMREALPTR = 606,
213   TA_ABS_TST_FAIL_CALLFUNC              = 607,
214   TA_ABS_TST_FAIL_GETLOOKBACK_CALL_1    = 608,
215   TA_ABS_TST_FAIL_GETLOOKBACK_CALL_2    = 609,
216   TA_ABS_TST_FAIL_GETLOOKBACK_1         = 610,
217   TA_ABS_TST_FAIL_GETLOOKBACK_2         = 611,
218   TA_ABS_TST_FAIL_CALLFUNC_1            = 612,
219   TA_ABS_TST_FAIL_CALLFUNC_2            = 613,
220   TA_ABS_TST_FAIL_CALLFUNC_3            = 614,
221   TA_ABS_TST_FAIL_CALLFUNC_4            = 615,
222   TA_ABS_TST_FAIL_INVALID_OUTPUT        = 616,
223   TA_ABS_TST_FAIL_STARTEND_ZERO         = 617,
224   TA_ABS_TST_FAIL_FUNCTION_DESC_SMALL   = 618,
225   TA_ABS_TST_FAIL_FUNCTION_DESC_LARGE   = 619,
226 
227   /* Error code related to internal tests. */
228   TA_INTERNAL_CIRC_BUFF_FAIL_0      = 700,
229   TA_INTERNAL_CIRC_BUFF_FAIL_1      = 701,
230   TA_INTERNAL_CIRC_BUFF_FAIL_2      = 702,
231   TA_INTERNAL_CIRC_BUFF_FAIL_3      = 703,
232   TA_INTERNAL_CIRC_BUFF_FAIL_4      = 704,
233   TA_INTERNAL_CIRC_BUFF_FAIL_5      = 705,
234   TA_INTERNAL_CIRC_BUFF_FAIL_6      = 706,
235   TA_INTERNAL_FATAL_TST_FAIL        = 707,
236   TA_INTERNAL_ASSERT_TST_FAIL       = 708,
237   TA_INTERNAL_TIMESTAMP_TEST_FAILED = 709,
238   TA_INTERNAL_PSEUDORANDOM_UINT32   = 710,
239   TA_INTERNAL_PSEUDORANDOM_DOUBLE   = 711,
240 
241   /* Error code related to CSI data source tests. */
242   TA_CSI_ADDDATASOURCE_FAILED    = 800,
243   TA_CSI_HISTORYALLOC_1_FAILED   = 801,
244   TA_CSI_VALUE_1_FAILED          = 802,
245   TA_CSI_FIELD_MISSING_1         = 803,
246   TA_CSI_HISTORYFREE_FAILED      = 804,
247   TA_CSI_HISTORYALLOC_3_FAILED   = 805,
248   TA_CSI_CRS_HISTORYALLOC_FAILED = 806,
249   TA_CSI_CRS_NBBARSBAD           = 807,
250   TA_CSI_CRS_PRICEBARBAD         = 808,
251   TA_CSI_HISTORYALLOC_4_FAILED   = 809,
252   TA_CSI_HISTORYALLOC_5_FAILED   = 810,
253 
254   /* Error code related to test_candlestick */
255   TA_TSTCDL_GETFUNCHANDLE_FAIL   = 900,
256   TA_TSTCDL_PARAMHOLDERALLOC_FAIL= 901,
257   TA_TSTCDL_NBINPUT_WRONG        = 902,
258   TA_TSTCDL_INPUT_TYPE_WRONG     = 903,
259   TA_TSTCDL_INPUT_FLAG_WRONG     = 904,
260   TA_TSTCDL_NBOUTPUT_WRONG       = 905,
261   TA_TSTCDL_OUTPUT_TYPE_WRONG    = 906,
262   TA_TSTCDL_CALLFUNC_FAIL        = 907,
263   TA_TSTCDL_GETLOOKBACK_FAIL     = 908,
264   TA_TSTCDL_PARAMHOLDERFREE_FAIL = 909,
265 
266   /* Error code related to test_merge */
267   TA_TSTMERGE_AC_ADDFAILED_1          = 1000,
268   TA_TSTMERGE_AC_ADDFAILED_2          = 1001,
269   TA_TSTMERGE_AC_HISTALLOC_1          = 1002,
270   TA_TSTMERGE_AC_HISTFREE_1           = 1003,
271   TA_TSTMERGE_ASCII_ADDFAILED_1       = 1004,
272   TA_TSTMERGE_ASCII_ADDFAILED_2       = 1005,
273   TA_TSTMERGE_ASCII_ADDFAILED_3       = 1006,
274   TA_TSTMERGE_ASCII_ADDFAILED_4       = 1007,
275   TA_TSTMERGE_ASCII_HISTALLOC         = 1008,
276   TA_TSTMERGE_ASCII_HISTFREE          = 1009,
277   TA_TSTMERGE_ASCII_BAD_PATTERN_1     = 1010,
278   TA_TSTMERGE_ASCII_BAD_PATTERN_2     = 1011,
279   TA_TSTMERGE_ASCII_BAD_PATTERN_3     = 1012,
280   TA_TSTMERGE_ASCII_BAD_PATTERN_VOL   = 1013,
281   TA_TSTMERGE_ASCII_BAD_PATTERN_OI    = 1014,
282   TA_TSTMERGE_ASCII_BAD_PATTERN_OPEN  = 1015,
283   TA_TSTMERGE_ASCII_BAD_PATTERN_LOW   = 1016,
284   TA_TSTMERGE_ASCII_BAD_PATTERN_HIGH  = 1017,
285   TA_TSTMERGE_ASCII_BAD_PATTERN_CLOSE = 1018,
286   TA_TSTMERGE_ASCII_BAD_PATTERN_TS    = 1019,
287 
288   /* Error code related to bug fix documentented on SourceForge. */
289   TA_TEST_FAIL_BUG1359452_1  = 2000,
290   TA_TEST_FAIL_BUG1359452_2  = 2001,
291   TA_TEST_FAIL_BUG1359452_3  = 2003,
292   TA_TEST_FAIL_BUG1359452_4  = 2004,
293   TA_TEST_FAIL_BUG1359452_5  = 2005,
294 
295   TA_LAST_VALID_ERROR = 0xFFFF
296 } ErrorNumber;
297 #endif
298