diff options
author | Patrick Simianer <p@simianer.de> | 2013-06-24 14:40:07 +0200 |
---|---|---|
committer | Patrick Simianer <p@simianer.de> | 2013-06-24 14:40:07 +0200 |
commit | e547ab5f765c72ad326b1d3a79f26bb221364d7d (patch) | |
tree | e205609de0adce98bdf4ec4e799cd776cebe8b72 /extractor/alignment_test.cc | |
parent | becb1347773ebaae8cab2669afe4bad048cda992 (diff) | |
parent | 5794c0109902cf19a52cc8f1799353270ed9d85d (diff) |
Merge remote-tracking branch 'upstream/master'
Diffstat (limited to 'extractor/alignment_test.cc')
-rw-r--r-- | extractor/alignment_test.cc | 26 |
1 files changed, 21 insertions, 5 deletions
diff --git a/extractor/alignment_test.cc b/extractor/alignment_test.cc index 43c37ebd..1b8ff531 100644 --- a/extractor/alignment_test.cc +++ b/extractor/alignment_test.cc @@ -1,12 +1,16 @@ #include <gtest/gtest.h> -#include <memory> +#include <sstream> #include <string> +#include <boost/archive/binary_iarchive.hpp> +#include <boost/archive/binary_oarchive.hpp> + #include "alignment.h" using namespace std; using namespace ::testing; +namespace ar = boost::archive; namespace extractor { namespace { @@ -14,19 +18,31 @@ namespace { class AlignmentTest : public Test { protected: virtual void SetUp() { - alignment = make_shared<Alignment>("sample_alignment.txt"); + alignment = Alignment("sample_alignment.txt"); } - shared_ptr<Alignment> alignment; + Alignment alignment; }; TEST_F(AlignmentTest, TestGetLinks) { vector<pair<int, int>> expected_links = { make_pair(0, 0), make_pair(1, 1), make_pair(2, 2) }; - EXPECT_EQ(expected_links, alignment->GetLinks(0)); + EXPECT_EQ(expected_links, alignment.GetLinks(0)); expected_links = {make_pair(1, 0), make_pair(2, 1)}; - EXPECT_EQ(expected_links, alignment->GetLinks(1)); + EXPECT_EQ(expected_links, alignment.GetLinks(1)); +} + +TEST_F(AlignmentTest, TestSerialization) { + stringstream stream(ios_base::binary | ios_base::out | ios_base::in); + ar::binary_oarchive output_stream(stream, ar::no_header); + output_stream << alignment; + + Alignment alignment_copy; + ar::binary_iarchive input_stream(stream, ar::no_header); + input_stream >> alignment_copy; + + EXPECT_EQ(alignment, alignment_copy); } } // namespace |