diff options
author | Paul Baltescu <pauldb89@gmail.com> | 2013-03-07 14:38:23 +0000 |
---|---|---|
committer | Paul Baltescu <pauldb89@gmail.com> | 2013-03-07 14:39:05 +0000 |
commit | d7271db305bd1aeaf9c3d9ac1043546fec22a402 (patch) | |
tree | a2f1021577dd1846e5fa583d4859ee6ecb702299 /extractor/target_phrase_extractor_test.cc | |
parent | 6b5039cd1c167be93ecdbb2fa1721e91fe8f689a (diff) |
Added unit test for loose phrases.
Diffstat (limited to 'extractor/target_phrase_extractor_test.cc')
-rw-r--r-- | extractor/target_phrase_extractor_test.cc | 28 |
1 files changed, 26 insertions, 2 deletions
diff --git a/extractor/target_phrase_extractor_test.cc b/extractor/target_phrase_extractor_test.cc index a686d20b..80927dee 100644 --- a/extractor/target_phrase_extractor_test.cc +++ b/extractor/target_phrase_extractor_test.cc @@ -111,8 +111,32 @@ TEST_F(TargetPhraseExtractorTest, TestExtractPhrasesTightPhrasesFalse) { target_gaps, target_low, 1, 5, source_indexes, 0); EXPECT_EQ(10, results.size()); - // TODO(pauldb): Finish unit test once it's clear how these alignments should - // look like. + for (int i = 0; i < 2; ++i) { + for (int j = 4; j <= 6; ++j) { + for (int k = 4; k <= j; ++k) { + vector<string> expected_words; + for (int l = i; l < 2; ++l) { + expected_words.push_back(target_words[l]); + } + for (int l = k; l < j; ++l) { + expected_words.push_back(target_words[l]); + } + + PhraseAlignment expected_alignment; + expected_alignment.push_back(make_pair(1, 1 - i)); + + bool found_expected_pair = false; + for (auto result: results) { + if (result.first.GetWords() == expected_words && + result.second == expected_alignment) { + found_expected_pair = true; + } + } + + EXPECT_TRUE(found_expected_pair); + } + } + } } } // namespace |