refine tests
[platform/upstream/libpinyin.git] / tests / tests_helper.h
1 /* 
2  *  libpinyin
3  *  Library to deal with pinyin.
4  *  
5  *  Copyright (C) 2012 Peng Wu <alexepico@gmail.com>
6  *  
7  *  This program is free software; you can redistribute it and/or modify
8  *  it under the terms of the GNU General Public License as published by
9  *  the Free Software Foundation; either version 2 of the License, or
10  *  (at your option) any later version.
11  * 
12  *  This program is distributed in the hope that it will be useful,
13  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
14  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15  *  GNU General Public License for more details.
16  *  
17  *  You should have received a copy of the GNU General Public License
18  *  along with this program; if not, write to the Free Software
19  *  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
20  */
21
22 #ifndef TESTS_HELPER_H
23 #define TESTS_HELPER_H
24
25 static bool init_phrase_index(FacadePhraseIndex * phrase_index){
26     MemoryChunk * chunk = NULL;
27     for (size_t i = 0; i < PHRASE_INDEX_LIBRARY_COUNT; ++i) {
28         const char * bin_file = pinyin_phrase_files[i];
29         if (NULL == bin_file)
30             continue;
31
32         gchar * filename = g_build_filename("..", "..", "data",
33                                             bin_file, NULL);
34         chunk = new MemoryChunk;
35         bool retval = chunk->load(filename);
36         if (!retval) {
37             fprintf(stderr, "open %s failed!\n", bin_file);
38             return false;
39         }
40
41         phrase_index->load(i, chunk);
42         g_free(filename);
43     }
44     return true;
45 }
46
47 #endif