summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2014-05-28 11:50:15 +0100
committerCarl Hetherington <cth@carlh.net>2014-05-28 11:50:15 +0100
commitcd0958260b54af3514ac12b936bb76ca6de6978b (patch)
treea06591bfc901d950290e6c3ba2aad1dcf123921e /test
parent14fa24a1aabda7925f4842ab7f7e13c1798182a4 (diff)
More STL binary reading stuff.
Diffstat (limited to 'test')
-rw-r--r--test/iso6937_test.cc34
-rw-r--r--test/test.cc3
-rw-r--r--test/wscript1
3 files changed, 38 insertions, 0 deletions
diff --git a/test/iso6937_test.cc b/test/iso6937_test.cc
new file mode 100644
index 0000000..e8563b8
--- /dev/null
+++ b/test/iso6937_test.cc
@@ -0,0 +1,34 @@
+/*
+ Copyright (C) 2014 Carl Hetherington <cth@carlh.net>
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+
+*/
+
+#include <boost/test/unit_test.hpp>
+#include <boost/locale.hpp>
+#include "iso6937.h"
+
+using std::cout;
+using boost::locale::conv::utf_to_utf;
+
+BOOST_AUTO_TEST_CASE (iso6937_test)
+{
+ BOOST_CHECK_EQUAL (utf_to_utf<char> (sub::iso6937_to_utf16 ("Hello world")), "Hello world");
+ BOOST_CHECK_EQUAL (utf_to_utf<char> (sub::iso6937_to_utf16 ("Testing \xA9testing\xB9")), "Testing ‘testing’");
+ BOOST_CHECK_EQUAL (utf_to_utf<char> (sub::iso6937_to_utf16 ("All must have \xCB""cedillas")), "All must have çedillas");
+ BOOST_CHECK_EQUAL (utf_to_utf<char> (sub::iso6937_to_utf16 ("M\xC8otorhead")), "Mötorhead");
+ BOOST_CHECK_EQUAL (utf_to_utf<char> (sub::iso6937_to_utf16 ("Pass\nnewlines\nthrough")), "Pass\nnewlines\nthrough");
+}
diff --git a/test/test.cc b/test/test.cc
index f6714af..6bb8b5b 100644
--- a/test/test.cc
+++ b/test/test.cc
@@ -23,6 +23,7 @@
#include <boost/filesystem.hpp>
#include <fstream>
#include <string>
+#include "iso6937_tables.h"
using std::string;
using std::cerr;
@@ -40,6 +41,8 @@ struct TestConfig
} else {
BOOST_TEST_MESSAGE ("Private data libsub-test-private not found; some tests will not run");
}
+
+ sub::make_iso6937_tables ();
}
};
diff --git a/test/wscript b/test/wscript
index 630a6a0..c3ee7f4 100644
--- a/test/wscript
+++ b/test/wscript
@@ -18,6 +18,7 @@ def build(bld):
obj.source = """
dcp_reader_test.cc
dcp_to_stl_text_test.cc
+ iso6937_test.cc
stl_binary_reader_test.cc
stl_text_reader_test.cc
stl_text_writer_test.cc