| 842 | } |
| 843 | |
| 844 | void TCompactTrieTest::TestMergeFromFile() { |
| 845 | { |
| 846 | TCompactTrieBuilder<> b; |
| 847 | b.Add("yandex", 12); |
| 848 | b.Add("google", 13); |
| 849 | b.Add("mail", 14); |
| 850 | TUnbufferedFileOutput out(GetSystemTempDir() + "/TCompactTrieTest-TestMerge-ru"); |
| 851 | b.Save(out); |
| 852 | } |
| 853 | |
| 854 | { |
| 855 | TCompactTrieBuilder<> b; |
| 856 | b.Add("yandex", 112); |
| 857 | b.Add("google", 113); |
| 858 | b.Add("yahoo", 114); |
| 859 | TUnbufferedFileOutput out(GetSystemTempDir() + "/TCompactTrieTest-TestMerge-com"); |
| 860 | b.Save(out); |
| 861 | } |
| 862 | |
| 863 | { |
| 864 | TCompactTrieBuilder<> b; |
| 865 | UNIT_ASSERT(b.AddSubtreeInFile("com.", GetSystemTempDir() + "/TCompactTrieTest-TestMerge-com")); |
| 866 | UNIT_ASSERT(b.Add("org.kernel", 22)); |
| 867 | UNIT_ASSERT(b.AddSubtreeInFile("ru.", GetSystemTempDir() + "/TCompactTrieTest-TestMerge-ru")); |
| 868 | TUnbufferedFileOutput out(GetSystemTempDir() + "/TCompactTrieTest-TestMerge-res"); |
| 869 | b.Save(out); |
| 870 | } |
| 871 | |
| 872 | TCompactTrie<> trie(TBlob::FromFileSingleThreaded(GetSystemTempDir() + "/TCompactTrieTest-TestMerge-res")); |
| 873 | UNIT_ASSERT_VALUES_EQUAL(12u, trie.Get("ru.yandex")); |
| 874 | UNIT_ASSERT_VALUES_EQUAL(13u, trie.Get("ru.google")); |
| 875 | UNIT_ASSERT_VALUES_EQUAL(14u, trie.Get("ru.mail")); |
| 876 | UNIT_ASSERT_VALUES_EQUAL(22u, trie.Get("org.kernel")); |
| 877 | UNIT_ASSERT_VALUES_EQUAL(112u, trie.Get("com.yandex")); |
| 878 | UNIT_ASSERT_VALUES_EQUAL(113u, trie.Get("com.google")); |
| 879 | UNIT_ASSERT_VALUES_EQUAL(114u, trie.Get("com.yahoo")); |
| 880 | |
| 881 | unlink((GetSystemTempDir() + "/TCompactTrieTest-TestMerge-res").data()); |
| 882 | unlink((GetSystemTempDir() + "/TCompactTrieTest-TestMerge-com").data()); |
| 883 | unlink((GetSystemTempDir() + "/TCompactTrieTest-TestMerge-ru").data()); |
| 884 | } |
| 885 | |
| 886 | void TCompactTrieTest::TestMergeFromBuffer() { |
| 887 | TArrayWithSizeHolder<char> buffer1; |
nothing calls this directly
no test coverage detected