Skip to content
Snippets Groups Projects
Commit 95b7f74b authored by ilor's avatar ilor
Browse files

expand ioann test to check head indices

parent 98fc083d
Branches
No related merge requests found
......@@ -170,6 +170,24 @@ std::string AnnotationChannel::dump_iob() const
return ss.str();
}
std::string AnnotationChannel::dump_segments() const
{
std::stringstream ss;
foreach (int s, segments_) {
ss << s;
}
return ss.str();
}
std::string AnnotationChannel::dump_heads() const
{
std::stringstream ss;
foreach (bool b, heads_) {
ss << (b ? "H" : " ");
}
return ss.str();
}
void AnnotationChannel::do_counts(int& annotations, int& disjoint, int& unannotated) const
{
std::set<int> used_sids;
......
......@@ -147,6 +147,16 @@ public:
*/
std::string dump_iob() const;
/**
* Compose a string consisting of all segment indices in order.
*/
std::string dump_segments() const;
/**
* Compose a string consisting of all head flags in order
*/
std::string dump_heads() const;
void do_counts(int& annotations, int& disjoint, int& unannotated) const;
private:
......
......@@ -102,6 +102,9 @@ BOOST_AUTO_TEST_CASE( iobase )
BOOST_REQUIRE(chunk);
std::stringstream ss;
boost::shared_ptr<Corpus2::TokenWriter> w(Corpus2::TokenWriter::create("xces,flat", ss, tagset));
//boost::shared_ptr<Corpus2::TokenWriter> wann(Corpus2::TokenWriter::create("ccl", std::cerr, tagset));
//wann->write_chunk(*chunk);
//wann->finish();
w->write_chunk(*chunk);
w->finish();
BOOST_CHECK_EQUAL(ss.str(), swiatopoglad);
......@@ -113,6 +116,8 @@ BOOST_AUTO_TEST_CASE( iobase )
BOOST_REQUIRE(as->has_channel("cute"));
as->get_channel("cute").make_iob_from_segments();
BOOST_CHECK_EQUAL(as->get_channel("cute").dump_iob(), "BIOB");
BOOST_CHECK_EQUAL(as->get_channel("cute").dump_segments(), "1102");
BOOST_CHECK_EQUAL(as->get_channel("cute").dump_heads(), " ");
Corpus2::Sentence::Ptr cute = Corpus2::create_view(as, "cute");
BOOST_REQUIRE_EQUAL(cute->size(), 3);
BOOST_CHECK_EQUAL(cute->tokens()[0]->orth_utf8(), "Uważam,");
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment