1#include <cassert>
2#include <iostream>
3#include <string>
4
5#include <dawgdic/dawg-builder.h>
6#include <dawgdic/dictionary-builder.h>
7
8int main() {
9 dawgdic::DawgBuilder dawg_builder;
10 assert(dawg_builder.Insert("apple"));
11 assert(dawg_builder.Insert("cherry"));
12 assert(!dawg_builder.Insert("banana"));
13 assert(dawg_builder.Insert("durian"));
14 assert(!dawg_builder.Insert("green\0apple", 11, 0));
15 assert(dawg_builder.Insert("green\0apple"));
16 assert(dawg_builder.Insert("mandarin orange", 8, 0));
17 assert(dawg_builder.Insert("mandarin"));
18
19 dawgdic::Dawg dawg;
20 dawg_builder.Finish(&dawg);
21
22 dawgdic::Dictionary dawg_dic;
23 dawgdic::DictionaryBuilder::Build(dawg, &dawg_dic);
24
25 assert(dawg_dic.Contains("apple"));
26 assert(dawg_dic.Contains("cherry"));
27 assert(dawg_dic.Contains("durian"));
28 assert(dawg_dic.Contains("green"));
29 assert(dawg_dic.Contains("mandarin"));
30
31 return 0;
32}
33