summaryrefslogtreecommitdiffstats
path: root/test/WhiteBoxTests.cpp
diff options
context:
space:
mode:
authorAshod Nakashian <ashod.nakashian@collabora.co.uk>2016-12-17 21:54:34 -0500
committerAshod Nakashian <ashnakash@gmail.com>2016-12-19 05:51:49 +0000
commit7e1529af319bf57ecca61c656ebfe97d44d4e109 (patch)
treec955db668d5812b0dc0b97ba436e4a50e7605b41 /test/WhiteBoxTests.cpp
parentloolwsd: better MessagePayload encapsulation and cleanup (diff)
downloadonline-7e1529af319bf57ecca61c656ebfe97d44d4e109.tar.gz
online-7e1529af319bf57ecca61c656ebfe97d44d4e109.zip
loolwsd: add tokenization to MessagePayload
Change-Id: I39135b2ad65da5abce93848a68faffc93906a0c0 Reviewed-on: https://gerrit.libreoffice.org/32157 Reviewed-by: Ashod Nakashian <ashnakash@gmail.com> Tested-by: Ashod Nakashian <ashnakash@gmail.com>
Diffstat (limited to 'test/WhiteBoxTests.cpp')
-rw-r--r--test/WhiteBoxTests.cpp63
1 files changed, 63 insertions, 0 deletions
diff --git a/test/WhiteBoxTests.cpp b/test/WhiteBoxTests.cpp
index 0b9620a597..03cf59b586 100644
--- a/test/WhiteBoxTests.cpp
+++ b/test/WhiteBoxTests.cpp
@@ -24,6 +24,7 @@ class WhiteBoxTests : public CPPUNIT_NS::TestFixture
CPPUNIT_TEST_SUITE(WhiteBoxTests);
CPPUNIT_TEST(testLOOLProtocolFunctions);
+ CPPUNIT_TEST(testTokenizer);
CPPUNIT_TEST(testRegexListMatcher);
CPPUNIT_TEST(testRegexListMatcher_Init);
CPPUNIT_TEST(testEmptyCellCursor);
@@ -31,6 +32,7 @@ class WhiteBoxTests : public CPPUNIT_NS::TestFixture
CPPUNIT_TEST_SUITE_END();
void testLOOLProtocolFunctions();
+ void testTokenizer();
void testRegexListMatcher();
void testRegexListMatcher_Init();
void testEmptyCellCursor();
@@ -124,6 +126,67 @@ void WhiteBoxTests::testLOOLProtocolFunctions()
CPPUNIT_ASSERT_EQUAL(std::string(""), Util::trim(s));
}
+void WhiteBoxTests::testTokenizer()
+{
+ std::vector<std::string> tokens;
+
+ tokens = LOOLProtocol::tokenize("");
+ CPPUNIT_ASSERT_EQUAL(0UL, tokens.size());
+
+ tokens = LOOLProtocol::tokenize(" ");
+ CPPUNIT_ASSERT_EQUAL(0UL, tokens.size());
+
+ tokens = LOOLProtocol::tokenize("A");
+ CPPUNIT_ASSERT_EQUAL(1UL, tokens.size());
+ CPPUNIT_ASSERT_EQUAL(std::string("A"), tokens[0]);
+
+ tokens = LOOLProtocol::tokenize(" A");
+ CPPUNIT_ASSERT_EQUAL(1UL, tokens.size());
+ CPPUNIT_ASSERT_EQUAL(std::string("A"), tokens[0]);
+
+ tokens = LOOLProtocol::tokenize("A ");
+ CPPUNIT_ASSERT_EQUAL(1UL, tokens.size());
+ CPPUNIT_ASSERT_EQUAL(std::string("A"), tokens[0]);
+
+ tokens = LOOLProtocol::tokenize(" A ");
+ CPPUNIT_ASSERT_EQUAL(1UL, tokens.size());
+ CPPUNIT_ASSERT_EQUAL(std::string("A"), tokens[0]);
+
+ tokens = LOOLProtocol::tokenize(" A Z ");
+ CPPUNIT_ASSERT_EQUAL(2UL, tokens.size());
+ CPPUNIT_ASSERT_EQUAL(std::string("A"), tokens[0]);
+ CPPUNIT_ASSERT_EQUAL(std::string("Z"), tokens[1]);
+
+ tokens = LOOLProtocol::tokenize("\n");
+ CPPUNIT_ASSERT_EQUAL(0UL, tokens.size());
+
+ tokens = LOOLProtocol::tokenize(" A \nZ ");
+ CPPUNIT_ASSERT_EQUAL(1UL, tokens.size());
+ CPPUNIT_ASSERT_EQUAL(std::string("A"), tokens[0]);
+
+ tokens = LOOLProtocol::tokenize(" A Z\n ");
+ CPPUNIT_ASSERT_EQUAL(2UL, tokens.size());
+ CPPUNIT_ASSERT_EQUAL(std::string("A"), tokens[0]);
+ CPPUNIT_ASSERT_EQUAL(std::string("Z"), tokens[1]);
+
+ tokens = LOOLProtocol::tokenize(" A Z \n ");
+ CPPUNIT_ASSERT_EQUAL(2UL, tokens.size());
+ CPPUNIT_ASSERT_EQUAL(std::string("A"), tokens[0]);
+ CPPUNIT_ASSERT_EQUAL(std::string("Z"), tokens[1]);
+
+ tokens = LOOLProtocol::tokenize("tile part=0 width=256 height=256 tileposx=0 tileposy=0 tilewidth=3840 tileheight=3840 ver=-1");
+ CPPUNIT_ASSERT_EQUAL(9UL, tokens.size());
+ CPPUNIT_ASSERT_EQUAL(std::string("tile"), tokens[0]);
+ CPPUNIT_ASSERT_EQUAL(std::string("part=0"), tokens[1]);
+ CPPUNIT_ASSERT_EQUAL(std::string("width=256"), tokens[2]);
+ CPPUNIT_ASSERT_EQUAL(std::string("height=256"), tokens[3]);
+ CPPUNIT_ASSERT_EQUAL(std::string("tileposx=0"), tokens[4]);
+ CPPUNIT_ASSERT_EQUAL(std::string("tileposy=0"), tokens[5]);
+ CPPUNIT_ASSERT_EQUAL(std::string("tilewidth=3840"), tokens[6]);
+ CPPUNIT_ASSERT_EQUAL(std::string("tileheight=3840"), tokens[7]);
+ CPPUNIT_ASSERT_EQUAL(std::string("ver=-1"), tokens[8]);
+}
+
void WhiteBoxTests::testRegexListMatcher()
{
Util::RegexListMatcher matcher;