diff --git a/tests/helloutl/Makefile b/tests/helloutl/Makefile new file mode 100644 index 0000000..5200910 --- /dev/null +++ b/tests/helloutl/Makefile @@ -0,0 +1,11 @@ +.PHONY: all +all: test_utl + +# Needs a valid build directory to get SeerUtl.cpp.o +test_utl: test_utl.cpp + g++ -I/usr/include/qt5 -g -o test_utl test_utl.cpp ../../src/build/CMakeFiles/seergdb.dir/SeerUtl.cpp.o -L/usr/lib64 -lQt5Core + +.PHONY: clean +clean: + rm -f test_utl test_utl.o + diff --git a/tests/helloutl/test_utl.cpp b/tests/helloutl/test_utl.cpp new file mode 100644 index 0000000..ae050cd --- /dev/null +++ b/tests/helloutl/test_utl.cpp @@ -0,0 +1,98 @@ +#include "../../src/SeerUtl.h" +#include +#include +#include +#include +#include + +int main (int argc, char** argv) { + + Q_UNUSED(argc); + Q_UNUSED(argv); + + // + // + // + + //QString test = "\"r0\",\"\",\"\",\"r4\""; + QString test = "\"\",\"r0\",\"\",\"r4\""; + QString newtest = Seer::filterEscapes(test); + + std::cout << test.toStdString() << std::endl; + std::cout << newtest.toStdString() << std::endl; + + QStringList list = Seer::parse(test, "", '"', '"', false); + + for ( const auto& name : list ) { + std::cout << name.toStdString() << std::endl; + } + + // + // + // + + QString text = "1^done,value=\"0\""; + + if (text.contains(QRegExp("^([0-9]+)\\^"))) { + qDebug() << text << "matches"; + }else{ + qDebug() << text << "doesn't match"; + } + + // + // + // + + QString text2 = "1^done,value=\"\\\"Hello, World!\\\"\""; + + qDebug() << text2; + + QStringList list2 = Seer::parse(text2, "value=", '"', '"', false); + + for ( const auto& name : list2 ) { + std::cout << name.toStdString() << std::endl; + } + + // + // + // + + QString text3 = "name = \"Pasveer, Ernie\", age = 60, salary = 0.25, location = {city = \"Houston\", state = \"Texas\", zip = 77063}"; + + qDebug() << text3; + + QStringList list3 = Seer::parseCommaList(text3, '{', '}'); + + for ( const auto& name : list3 ) { + + QStringPair pair = Seer::parseNameValue(name, '='); + + std::cout << name.toStdString() << std::endl; + std::cout << pair.first.toStdString() << std::endl; + std::cout << pair.second.toStdString() << std::endl; + std::cout << std::endl; + } + + // + // + // + + QStringList lines; + + bool f = Seer::readFile("test_utl.cpp", lines); + + if (f == false) { + std::cout << "== Can't open file for Seer::readFile()" << std::endl; + } + + std::cout << "== Lines from Seer::readFile()" << std::endl; + + for ( const auto& line : lines ) { + std::cout << line.toStdString(); + } + + std::cout << "== Done." << std::endl; + + return 0; +} +