/*! * * Copyright (c) 2019-2020 Diality Inc. - All Rights Reserved. * \copyright * THIS CODE MAY NOT BE COPIED OR REPRODUCED IN ANY FORM, IN PART OR IN * WHOLE, WITHOUT THE EXPLICIT PERMISSION OF THE COPYRIGHT OWNER. * * \file tst_logging.cpp * \author (last) Behrouz NematiPour * \date (last) 08-Sep-2020 * \author (original) Behrouz NematiPour * \date (original) 08-Jan-2020 * */ #include "tst_logging.h" // Qt #include #include // Project #include "FileHandler.h" #include "Logger.h" #include "MessageInterpreter.h" using namespace Storage; /*! * \brief tst_logging::tst_logging * \details Constructor * \param parent - QObject parent owner object. * Qt handles the children destruction by their parent objects life-cycle. */ tst_logging::tst_logging(QObject *parent) : QObject(parent) { } void tst_logging::initTestCase() { Threads::registerTypes(); _Logger._timeFormat = ""; QCOMPARE( _Logger.init(), ! _Logger.init() ); QString mContent; FileHandler::read(_Logger._logFileName, mContent); QCOMPARE(mContent, ",E,UI,Storage::Logger Initialized\n"); } void tst_logging::cleanup() { QThread::currentThread()->msleep(1000); } void tst_logging::init() { QString mContent; FileHandler::write(_Logger._logFileName, mContent, false); QCOMPARE(mContent, ""); } void tst_logging::logEvent() { LOG_EVENT("1 - Event log has been created"); QString mContent; FileHandler::read(_Logger._logFileName, mContent); QCOMPARE(mContent, ",E,1 - Event log has been created\n"); } void tst_logging::logDatum() { LOG_DATUM("3 - Datum log has been created"); QString mContent; FileHandler::read(_Logger._logFileName, mContent); QCOMPARE(mContent, ",D,3 - Datum log has been created\n"); } void tst_logging::logError() { LOG_DEBUG("2 - Error log has been created"); QString mContent; FileHandler::read(_Logger._logFileName, mContent); QCOMPARE(mContent, ",2 - Error log has been created\n"); } void tst_logging::logUnknown() { emit Storage::Logger::I().didLog("4 - Datum log has been created", Storage::Logger::LogType::eLogType_Count); QString mContent; FileHandler::read(_Logger._logFileName, mContent); QCOMPARE(mContent, ",Incorrect type of logging 3\n" ",4 - Datum log has been created\n"); } void tst_logging::logError_gDisableUnhandledReport_False() { gDisableUnhandledReport = false; Can::MessageInterpreter iMsg; Can::Message msg; msg.actionId = Gui::GuiActionType::ID_AlarmTriggered; msg.data = {}; iMsg.printUnhandled(msg); QString mContent; FileHandler::read(_Logger._logFileName, mContent); QStringList lines = mContent.split("\n"); QVERIFY(lines.count()); QCOMPARE(lines.first(), ",Unhandled Message ID (HD)"); } void tst_logging::logError_gDisableUnhandledReport_True() { gDisableUnhandledReport = true; Can::MessageInterpreter iMsg; Can::Message msg; msg.actionId = Gui::GuiActionType::ID_AlarmTriggered; msg.data = {}; iMsg.printUnhandled(msg); QString mContent; FileHandler::read(_Logger._logFileName, mContent); QCOMPARE(mContent, ""); } void tst_logging::logError_Unhandled_TreatmentStates() { gDisableUnhandledReport = false; Can::MessageInterpreter iMsg; Can::Message msg; msg.actionId = Gui::GuiActionType::ID_TreatmentStates; msg.data = {}; QVariantList vData {}; QVERIFY(! iMsg.interpretMessage_HD(msg, vData)); QString mContent; FileHandler::read(_Logger._logFileName, mContent); QStringList lines = mContent.split("\n"); QVERIFY(lines.count()); QCOMPARE(lines.first(), ",Incorrect data length for received Message with ID '0x0F00'"); } void tst_logging::setLogPath_F() { _Logger._dir = "/"; bool b = _Logger.setLogPath(); QCOMPARE(b , false); } void tst_logging::setLogPath_T() { _Logger._dir = "/tmp"; bool b = _Logger.setLogPath(); QCOMPARE(b , true); } void tst_logging::readUnknown() { QString mContent; QVERIFY(! FileHandler::read("TheFileWhichDoesntExist.UnknownExtension", mContent)); }