/*! * * Copyright (c) 2021 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 VUIPowerOnSelfTest.h * \author (last) Peter Lucia * \date (last) 21-May-2021 * \author (original) Peter Lucia * \date (original) 21-May-2021 * */ #pragma once // Qt #include #include #include // Project #include "main.h" // Doxygen : don't remove #include "VView.h" #include "GuiController.h" #include "MHDRequestVersions.h" // namespace namespace View { /*! * \brief The VUIPost class * \details View for displaying UI power on self test results * */ class VUIPowerOnSelfTest : public QObject { Q_OBJECT VIEW_DEC_CLASS(VUIPowerOnSelfTest) VIEW_DEC_SLOT(HDRequestVersionsData) private: struct PostTest { QString name; quint32 result = 2; }; const float _rtc_tolerance = 0.050; // seconds QList _tests; void powerOnSelfTests(); QString sha256(const QString &vFilename); bool selfTestFileSystem(); bool selfTestTouchScreenDriver(); bool selfTestWifiDriver(); bool selfTestBluetoothDriver(); bool selfTestCANDriver(); bool selfTestRTCClock(); bool checkFileForRegularExpression(const QString &vFilePath, const QRegularExpression vRegExp); signals: void didAdjustment(const AdjustUIPostFinalResultRequestData &data); void didAdjustment(const AdjustUIPostReportVersionRequestData &data); }; }