diff options
author | Mattes D <github@xoft.cz> | 2016-03-13 19:34:56 +0100 |
---|---|---|
committer | Mattes D <github@xoft.cz> | 2016-06-18 13:12:08 +0200 |
commit | db17f585afc283a107b8fbec078e1d2d674e52b0 (patch) | |
tree | c5377aa39f2862a5ea220d3c0d7bf2166ab78540 /tests/CompositeChat/CompositeChatTest.cpp | |
parent | SelfTests: Moved ByteBuffer test to a separate project. (diff) | |
download | cuberite-db17f585afc283a107b8fbec078e1d2d674e52b0.tar cuberite-db17f585afc283a107b8fbec078e1d2d674e52b0.tar.gz cuberite-db17f585afc283a107b8fbec078e1d2d674e52b0.tar.bz2 cuberite-db17f585afc283a107b8fbec078e1d2d674e52b0.tar.lz cuberite-db17f585afc283a107b8fbec078e1d2d674e52b0.tar.xz cuberite-db17f585afc283a107b8fbec078e1d2d674e52b0.tar.zst cuberite-db17f585afc283a107b8fbec078e1d2d674e52b0.zip |
Diffstat (limited to '')
-rw-r--r-- | tests/CompositeChat/CompositeChatTest.cpp | 112 |
1 files changed, 112 insertions, 0 deletions
diff --git a/tests/CompositeChat/CompositeChatTest.cpp b/tests/CompositeChat/CompositeChatTest.cpp new file mode 100644 index 000000000..12d9de673 --- /dev/null +++ b/tests/CompositeChat/CompositeChatTest.cpp @@ -0,0 +1,112 @@ + +// CompositeChatTest.cpp + +// Implements the main app entrypoint for the cCompositeChat class test + +#include "Globals.h" +#include "CompositeChat.h" + + + + + +static void TestParser1(void) +{ + cCompositeChat Msg; + Msg.ParseText("Testing @2color codes and http://links parser"); + const cCompositeChat::cParts & Parts = Msg.GetParts(); + assert_test(Parts.size() == 4); + assert_test(Parts[0]->m_PartType == cCompositeChat::ptText); + assert_test(Parts[1]->m_PartType == cCompositeChat::ptText); + assert_test(Parts[2]->m_PartType == cCompositeChat::ptUrl); + assert_test(Parts[3]->m_PartType == cCompositeChat::ptText); + assert_test(Parts[0]->m_Style == ""); + assert_test(Parts[1]->m_Style == "@2"); + assert_test(Parts[2]->m_Style == "@2"); + assert_test(Parts[3]->m_Style == "@2"); +} + + + + + +static void TestParser2(void) +{ + cCompositeChat Msg; + Msg.ParseText("@3Advanced stuff: @5overriding color codes and http://links.with/@4color-in-them handling"); + const cCompositeChat::cParts & Parts = Msg.GetParts(); + assert_test(Parts.size() == 4); + assert_test(Parts[0]->m_PartType == cCompositeChat::ptText); + assert_test(Parts[1]->m_PartType == cCompositeChat::ptText); + assert_test(Parts[2]->m_PartType == cCompositeChat::ptUrl); + assert_test(Parts[3]->m_PartType == cCompositeChat::ptText); + assert_test(Parts[0]->m_Style == "@3"); + assert_test(Parts[1]->m_Style == "@5"); + assert_test(Parts[2]->m_Style == "@5"); + assert_test(Parts[3]->m_Style == "@5"); +} + + + + + +static void TestParser3(void) +{ + cCompositeChat Msg; + Msg.ParseText("http://links.starting the text"); + const cCompositeChat::cParts & Parts = Msg.GetParts(); + assert_test(Parts.size() == 2); + assert_test(Parts[0]->m_PartType == cCompositeChat::ptUrl); + assert_test(Parts[1]->m_PartType == cCompositeChat::ptText); + assert_test(Parts[0]->m_Style == ""); + assert_test(Parts[1]->m_Style == ""); +} + + + + + +static void TestParser4(void) +{ + cCompositeChat Msg; + Msg.ParseText("links finishing the text: http://some.server"); + const cCompositeChat::cParts & Parts = Msg.GetParts(); + assert_test(Parts.size() == 2); + assert_test(Parts[0]->m_PartType == cCompositeChat::ptText); + assert_test(Parts[1]->m_PartType == cCompositeChat::ptUrl); + assert_test(Parts[0]->m_Style == ""); + assert_test(Parts[1]->m_Style == ""); +} + + + + + +static void TestParser5(void) +{ + cCompositeChat Msg; + Msg.ParseText("http://only.links"); + const cCompositeChat::cParts & Parts = Msg.GetParts(); + assert_test(Parts.size() == 1); + assert_test(Parts[0]->m_PartType == cCompositeChat::ptUrl); + assert_test(Parts[0]->m_Style == ""); +} + + + + + +int main(int argc, char * argv[]) +{ + TestParser1(); + TestParser2(); + TestParser3(); + TestParser4(); + TestParser5(); + LOG("CompositeChat test finished."); +} + + + + + |