Improve code coverage and debug server handler
This commit is contained in:
parent
568cb749b1
commit
eafa59b32f
@ -223,6 +223,7 @@ QByteArray DebugServerHandler::createDebugXmlDocument()
|
||||
|
||||
writer.writeStartElement("tr");
|
||||
writer.writeTextElement("th", QCoreApplication::translate("main", "Log database"));
|
||||
writer.writeTextElement("td", GuhSettings::logPath());
|
||||
writer.writeStartElement("td");
|
||||
writer.writeStartElement("form");
|
||||
writer.writeAttribute("method", "get");
|
||||
@ -236,7 +237,8 @@ QByteArray DebugServerHandler::createDebugXmlDocument()
|
||||
writer.writeEndElement(); // tr
|
||||
|
||||
writer.writeStartElement("tr");
|
||||
writer.writeTextElement("th", QCoreApplication::translate("main", "Syslog"));
|
||||
writer.writeTextElement("th", QCoreApplication::translate("main", "System logs"));
|
||||
writer.writeTextElement("td", "/var/log/syslog");
|
||||
writer.writeStartElement("td");
|
||||
writer.writeStartElement("form");
|
||||
writer.writeAttribute("method", "get");
|
||||
@ -262,6 +264,7 @@ QByteArray DebugServerHandler::createDebugXmlDocument()
|
||||
|
||||
writer.writeStartElement("tr");
|
||||
writer.writeTextElement("th", QCoreApplication::translate("main", "Guhd settings"));
|
||||
writer.writeTextElement("td", GuhSettings(GuhSettings::SettingsRoleGlobal).fileName());
|
||||
writer.writeStartElement("td");
|
||||
writer.writeStartElement("form");
|
||||
writer.writeAttribute("method", "get");
|
||||
@ -276,6 +279,7 @@ QByteArray DebugServerHandler::createDebugXmlDocument()
|
||||
|
||||
writer.writeStartElement("tr");
|
||||
writer.writeTextElement("th", QCoreApplication::translate("main", "Device settings"));
|
||||
writer.writeTextElement("td", GuhSettings(GuhSettings::SettingsRoleDevices).fileName());
|
||||
writer.writeStartElement("td");
|
||||
writer.writeStartElement("form");
|
||||
writer.writeAttribute("method", "get");
|
||||
@ -290,6 +294,7 @@ QByteArray DebugServerHandler::createDebugXmlDocument()
|
||||
|
||||
writer.writeStartElement("tr");
|
||||
writer.writeTextElement("th", QCoreApplication::translate("main", "Device state settings"));
|
||||
writer.writeTextElement("td", GuhSettings(GuhSettings::SettingsRoleDeviceStates).fileName());
|
||||
writer.writeStartElement("td");
|
||||
writer.writeStartElement("form");
|
||||
writer.writeAttribute("method", "get");
|
||||
@ -305,6 +310,7 @@ QByteArray DebugServerHandler::createDebugXmlDocument()
|
||||
|
||||
writer.writeStartElement("tr");
|
||||
writer.writeTextElement("th", QCoreApplication::translate("main", "Rules settings"));
|
||||
writer.writeTextElement("td", GuhSettings(GuhSettings::SettingsRoleRules).fileName());
|
||||
writer.writeStartElement("td");
|
||||
writer.writeStartElement("form");
|
||||
writer.writeAttribute("method", "get");
|
||||
@ -317,6 +323,21 @@ QByteArray DebugServerHandler::createDebugXmlDocument()
|
||||
writer.writeEndElement(); // td
|
||||
writer.writeEndElement(); // tr
|
||||
|
||||
writer.writeStartElement("tr");
|
||||
writer.writeTextElement("th", QCoreApplication::translate("main", "Plugins settings"));
|
||||
writer.writeTextElement("td", GuhSettings(GuhSettings::SettingsRolePlugins).fileName());
|
||||
writer.writeStartElement("td");
|
||||
writer.writeStartElement("form");
|
||||
writer.writeAttribute("method", "get");
|
||||
writer.writeAttribute("action", "/debug/settings/plugins");
|
||||
writer.writeStartElement("button");
|
||||
writer.writeAttribute("type", "submit");
|
||||
writer.writeCharacters(QCoreApplication::translate("main", "Download"));
|
||||
writer.writeEndElement(); // button
|
||||
writer.writeEndElement(); // form
|
||||
writer.writeEndElement(); // td
|
||||
writer.writeEndElement(); // tr
|
||||
|
||||
writer.writeEndElement(); // table
|
||||
|
||||
writer.writeEmptyElement("hr");
|
||||
@ -385,17 +406,52 @@ QByteArray DebugServerHandler::loadResourceFile(const QString &resourceFileName)
|
||||
return inputStream.readAll().toUtf8();
|
||||
}
|
||||
|
||||
bool DebugServerHandler::resourceFileExits(const QString &resourceFileName)
|
||||
QString DebugServerHandler::getResourceFileName(const QString &requestPath)
|
||||
{
|
||||
QFile resourceFile(QString(":%1").arg(resourceFileName));
|
||||
return QString(requestPath).remove("/debug");
|
||||
}
|
||||
|
||||
bool DebugServerHandler::resourceFileExits(const QString &requestPath)
|
||||
{
|
||||
QFile resourceFile(QString(":%1").arg(getResourceFileName(requestPath)));
|
||||
return resourceFile.exists();
|
||||
}
|
||||
|
||||
HttpReply *DebugServerHandler::processDebugFileRequest(const QString &requestPath)
|
||||
{
|
||||
// Here we already know that the resource file exists
|
||||
QString resourceFileName = getResourceFileName(requestPath);
|
||||
QByteArray data = loadResourceFile(resourceFileName);
|
||||
|
||||
// Create reply for resource file
|
||||
HttpReply *reply = RestResource::createSuccessReply();
|
||||
reply->setPayload(data);
|
||||
|
||||
// Check content type
|
||||
if (resourceFileName.endsWith(".css")) {
|
||||
reply->setHeader(HttpReply::ContentTypeHeader, "text/css; charset=\"utf-8\";");
|
||||
} else if (resourceFileName.endsWith(".svg")) {
|
||||
reply->setHeader(HttpReply::ContentTypeHeader, "image/svg+xml; charset=\"utf-8\";");
|
||||
}
|
||||
|
||||
return reply;
|
||||
}
|
||||
|
||||
|
||||
HttpReply *DebugServerHandler::processDebugRequest(const QString &requestPath)
|
||||
{
|
||||
qCDebug(dcWebServer()) << "Debug request for" << requestPath;
|
||||
|
||||
// Check if debug page request
|
||||
if (requestPath == "/debug" || requestPath == "/debug/") {
|
||||
qCDebug(dcWebServer()) << "Create debug interface page";
|
||||
// Fallback default debug page
|
||||
HttpReply *reply = RestResource::createSuccessReply();
|
||||
reply->setHeader(HttpReply::ContentTypeHeader, "text/html");
|
||||
reply->setPayload(createDebugXmlDocument());
|
||||
return reply;
|
||||
}
|
||||
|
||||
// Check if this is a logdb requested
|
||||
if (requestPath.startsWith("/debug/logdb.sql")) {
|
||||
qCDebug(dcWebServer()) << "Loading" << GuhSettings::logPath();
|
||||
@ -573,66 +629,46 @@ HttpReply *DebugServerHandler::processDebugRequest(const QString &requestPath)
|
||||
reply->setPayload(settingsFileData);
|
||||
return reply;
|
||||
}
|
||||
}
|
||||
|
||||
// Check if a resource file was requested
|
||||
if (requestPath.startsWith("/debug/settings/plugins")) {
|
||||
QString settingsFileName = GuhSettings(GuhSettings::SettingsRolePlugins).fileName();
|
||||
qCDebug(dcWebServer()) << "Loading" << settingsFileName;
|
||||
QFile settingsFile(settingsFileName);
|
||||
if (!settingsFile.exists()) {
|
||||
qCWarning(dcWebServer()) << "Could not read file for debug download" << settingsFileName << "file does not exist.";
|
||||
HttpReply *reply = RestResource::createErrorReply(HttpReply::NotFound);
|
||||
reply->setHeader(HttpReply::ContentTypeHeader, "text/html");
|
||||
reply->setPayload(createErrorXmlDocument(HttpReply::NotFound, QCoreApplication::translate("main", "Could not find file") + " " + settingsFileName));
|
||||
return reply;
|
||||
}
|
||||
|
||||
if (requestPath.startsWith("/debug/styles.css")) {
|
||||
QString resourceFileName = "/styles.css";
|
||||
// Check if exists
|
||||
if (!resourceFileExits(resourceFileName)) {
|
||||
qCWarning(dcWebServer()) << "The requested resource file" << resourceFileName << "does not exist";
|
||||
HttpReply *reply = RestResource::createErrorReply(HttpReply::NotFound);
|
||||
if (!settingsFile.open(QFile::ReadOnly)) {
|
||||
qCWarning(dcWebServer()) << "Could not read file for debug download" << settingsFileName;
|
||||
HttpReply *reply = RestResource::createErrorReply(HttpReply::Forbidden);
|
||||
reply->setHeader(HttpReply::ContentTypeHeader, "text/html");
|
||||
reply->setPayload(createErrorXmlDocument(HttpReply::NotFound, QCoreApplication::translate("main", "Could not open file") + " " + settingsFileName));
|
||||
return reply;
|
||||
}
|
||||
|
||||
QByteArray settingsFileData = settingsFile.readAll();
|
||||
settingsFile.close();
|
||||
|
||||
HttpReply *reply = RestResource::createSuccessReply();
|
||||
reply->setHeader(HttpReply::ContentTypeHeader, "text/plain");
|
||||
reply->setPayload(createErrorXmlDocument(HttpReply::NotFound, QCoreApplication::translate("main", "Could not find find") + " " + resourceFileName));
|
||||
reply->setPayload(settingsFileData);
|
||||
return reply;
|
||||
}
|
||||
|
||||
QByteArray data = loadResourceFile(resourceFileName);
|
||||
|
||||
// Check if content loaded
|
||||
if (data.isEmpty()) {
|
||||
qCWarning(dcWebServer()) << "Empty resource file" << resourceFileName;
|
||||
HttpReply *reply = RestResource::createErrorReply(HttpReply::NoContent);
|
||||
reply->setHeader(HttpReply::ContentTypeHeader, "text/plain");
|
||||
reply->setPayload(createErrorXmlDocument(HttpReply::NotFound, QCoreApplication::translate("main", "Could not find find") + " " + resourceFileName));
|
||||
return reply;
|
||||
}
|
||||
|
||||
HttpReply *reply = RestResource::createSuccessReply();
|
||||
reply->setHeader(HttpReply::ContentTypeHeader, "text/css; charset=\"utf-8\";");
|
||||
reply->setPayload(data);
|
||||
return reply;
|
||||
}
|
||||
|
||||
// Check if this is a resource file request
|
||||
if (resourceFileExits(requestPath)) {
|
||||
return processDebugFileRequest(requestPath);
|
||||
}
|
||||
|
||||
|
||||
// if (!fileName.endsWith(".png"))
|
||||
// return RestResource::createErrorReply(HttpReply::NotFound);
|
||||
|
||||
// QByteArray imageData;
|
||||
|
||||
// QImage image(":" + fileName);
|
||||
// QBuffer buffer(&imageData);
|
||||
// buffer.open(QIODevice::WriteOnly);
|
||||
// image.save(&buffer, "png");
|
||||
|
||||
// if (!imageData.isEmpty()) {
|
||||
// HttpReply *reply = RestResource::createSuccessReply();
|
||||
// reply->setHeader(HttpReply::ContentTypeHeader, "image/png");
|
||||
// reply->setPayload(imageData);
|
||||
// return reply;
|
||||
// }
|
||||
|
||||
// return RestResource::createErrorReply(HttpReply::NotFound);
|
||||
|
||||
|
||||
qCDebug(dcWebServer()) << "Create debug interface page";
|
||||
|
||||
// Fallback default debug page
|
||||
HttpReply *reply = RestResource::createSuccessReply();
|
||||
reply->setHeader(HttpReply::ContentTypeHeader, "text/html");
|
||||
reply->setPayload(createDebugXmlDocument());
|
||||
// If nothing matches, redirect to /debug page
|
||||
qCWarning(dcWebServer()) << "Resource for debug interface not found. Redirecting to /debug";
|
||||
HttpReply *reply = RestResource::createErrorReply(HttpReply::PermanentRedirect);
|
||||
reply->setHeader(HttpReply::LocationHeader, "/debug");
|
||||
return reply;
|
||||
}
|
||||
|
||||
|
||||
@ -39,7 +39,11 @@ private:
|
||||
QByteArray createDebugXmlDocument();
|
||||
QByteArray createErrorXmlDocument(HttpReply::HttpStatusCode statusCode, const QString &errorMessage);
|
||||
QByteArray loadResourceFile(const QString &resourceFileName);
|
||||
bool resourceFileExits(const QString &resourceFileName);
|
||||
QString getResourceFileName(const QString &requestPath);
|
||||
bool resourceFileExits(const QString &requestPath);
|
||||
|
||||
HttpReply *processDebugFileRequest(const QString &requestPath);
|
||||
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@ -47,6 +47,8 @@
|
||||
The request has no content but it was expected.
|
||||
\value Found
|
||||
The resource was found.
|
||||
\value PermanentRedirect
|
||||
The resource redirects permanent to given url.
|
||||
\value BadRequest
|
||||
The request was bad formatted. Also if a \l{Param} was not understood or the header is not correct.
|
||||
\value Forbidden
|
||||
@ -352,6 +354,8 @@ QByteArray HttpReply::getHttpReasonPhrase(const HttpReply::HttpStatusCode &statu
|
||||
return "No Content";
|
||||
case Found:
|
||||
return "Found";
|
||||
case PermanentRedirect:
|
||||
return "Permanent Redirect";
|
||||
case BadRequest:
|
||||
return "Bad Request";
|
||||
case Forbidden:
|
||||
|
||||
@ -42,6 +42,7 @@ public:
|
||||
Accepted = 202,
|
||||
NoContent = 204,
|
||||
Found = 302,
|
||||
PermanentRedirect = 308,
|
||||
BadRequest = 400,
|
||||
Forbidden = 403,
|
||||
NotFound = 404,
|
||||
|
||||
@ -482,6 +482,13 @@ void TestWebserver::getDebugServer_data()
|
||||
QTest::addColumn<bool>("serverEnabled");
|
||||
QTest::addColumn<int>("expectedStatusCode");
|
||||
|
||||
// Resource files
|
||||
QTest::newRow("GET /debug/styles.css | server enabled | 200") << "get" << "/debug/styles.css" << true << 200;
|
||||
QTest::newRow("GET /debug/logo.svg | server enabled | 200") << "get" << "/debug/logo.svg" << true << 200;
|
||||
|
||||
// Check redirection
|
||||
QTest::newRow("GET /debug/thisresourcedoesnotexist | server enabled | 308-200") << "get" << "/debug/thisresourcedoesnotexist" << true << 308;
|
||||
|
||||
// debug enabled
|
||||
QTest::newRow("GET /debug | server enabled | 200") << "get" << "/debug" << true << 200;
|
||||
QTest::newRow("OPTIONS /debug | server enabled | 200") << "options" << "/debug" << true << 200;
|
||||
@ -496,19 +503,33 @@ void TestWebserver::getDebugServer_data()
|
||||
QTest::newRow("POST /debug | server disabled | 404") << "post" << "/debug" << false << 404;
|
||||
QTest::newRow("DELETE /debug | server disabled | 404") << "delete" << "/debug" << false << 404;
|
||||
|
||||
// styles.css enabled
|
||||
QTest::newRow("GET /debug/styles.css | server enabled | 200") << "get" << "/debug/styles.css" << true << 200;
|
||||
QTest::newRow("OPTIONS /debug/styles.css | server enabled | 200") << "options" << "/debug/styles.css" << true << 200;
|
||||
QTest::newRow("PUT /debug/styles.css | server enabled | 405") << "put" << "/debug/styles.css" << true << 405;
|
||||
QTest::newRow("POST /debug/styles.css | server enabled | 405") << "post" << "/debug/styles.css" << true << 405;
|
||||
QTest::newRow("DELETE /debug/styles.css | server enabled | 405") << "delete" << "/debug/styles.css" << true << 405;
|
||||
|
||||
// styles.css disabled
|
||||
QTest::newRow("GET /debug/styles.css | server disabled | 404") << "get" << "/debug/styles.css" << false << 404;
|
||||
QTest::newRow("OPTIONS /debug/styles.css | server disabled | 404") << "options" << "/debug/styles.css" << false << 404;
|
||||
QTest::newRow("PUT /debug/styles.css | server disabled | 404") << "put" << "/debug/styles.css" << false << 404;
|
||||
QTest::newRow("POST /debug/styles.css | server disabled | 404") << "post" << "/debug/styles.css" << false << 404;
|
||||
QTest::newRow("DELETE /debug/styles.css | server disabled | 404") << "delete" << "/debug/styles.css" << false << 404;
|
||||
|
||||
// logdb enabled
|
||||
QTest::newRow("GET /debug/logdb | server enabled | 200") << "get" << "/debug/logdb" << true << 200;
|
||||
QTest::newRow("OPTIONS /debug/logdb | server enabled | 200") << "options" << "/debug/logdb" << true << 200;
|
||||
QTest::newRow("PUT /debug/logdb | server enabled | 405") << "put" << "/debug/logdb" << true << 405;
|
||||
QTest::newRow("POST /debug/logdb | server enabled | 405") << "post" << "/debug/logdb" << true << 405;
|
||||
QTest::newRow("DELETE /debug/logdb | server enabled | 405") << "delete" << "/debug/logdb" << true << 405;
|
||||
QTest::newRow("GET /debug/logdb.sql | server enabled | 200") << "get" << "/debug/logdb.sql" << true << 200;
|
||||
QTest::newRow("OPTIONS /debug/logdb.sql | server enabled | 200") << "options" << "/debug/logdb.sql" << true << 200;
|
||||
QTest::newRow("PUT /debug/logdb.sql | server enabled | 405") << "put" << "/debug/logdb.sql" << true << 405;
|
||||
QTest::newRow("POST /debug/logdb.sql | server enabled | 405") << "post" << "/debug/logdb.sql" << true << 405;
|
||||
QTest::newRow("DELETE /debug/logdb.sql | server enabled | 405") << "delete" << "/debug/logdb.sql" << true << 405;
|
||||
|
||||
// logdb disabled
|
||||
QTest::newRow("GET /debug/logdb | server enabled | 404") << "get" << "/debug/logdb" << false << 404;
|
||||
QTest::newRow("OPTIONS /debug/logdb | server enabled | 404") << "options" << "/debug/logdb" << false << 404;
|
||||
QTest::newRow("PUT /debug/logdb | server enabled | 404") << "put" << "/debug/logdb" << false << 404;
|
||||
QTest::newRow("POST /debug/logdb | server enabled | 404") << "post" << "/debug/logdb" << false << 404;
|
||||
QTest::newRow("DELETE /debug/logdb | server enabled | 404") << "delete" << "/debug/logdb" << false << 404;
|
||||
QTest::newRow("GET /debug/logdb.sql | server disabled | 404") << "get" << "/debug/logdb.sql" << false << 404;
|
||||
QTest::newRow("OPTIONS /debug/logdb.sql | server disabled | 404") << "options" << "/debug/logdb.sql" << false << 404;
|
||||
QTest::newRow("PUT /debug/logdb.sql | server disabled | 404") << "put" << "/debug/logdb.sql" << false << 404;
|
||||
QTest::newRow("POST /debug/logdb.sql | server disabled | 404") << "post" << "/debug/logdb.sql" << false << 404;
|
||||
QTest::newRow("DELETE /debug/logdb.sql | server disabled | 404") << "delete" << "/debug/logdb.sql" << false << 404;
|
||||
|
||||
// Check if syslog is accessable
|
||||
QFileInfo syslogFileInfo("/var/log/syslog");
|
||||
@ -516,17 +537,17 @@ void TestWebserver::getDebugServer_data()
|
||||
if (syslogFileInfo.exists() && syslogFileInfo.isReadable()) {
|
||||
// syslog enabled
|
||||
QTest::newRow("GET /debug/syslog | server enabled | 200") << "get" << "/debug/syslog" << true << 200;
|
||||
QTest::newRow("OPTIONS /debug/syslog | server enabled | 200") << "options" << "/debug/logdb" << true << 200;
|
||||
QTest::newRow("PUT /debug/syslog | server enabled | 405") << "put" << "/debug/logdb" << true << 405;
|
||||
QTest::newRow("POST /debug/syslog | server enabled | 405") << "post" << "/debug/logdb" << true << 405;
|
||||
QTest::newRow("DELETE /debug/syslog | server enabled | 405") << "delete" << "/debug/logdb" << true << 405;
|
||||
QTest::newRow("OPTIONS /debug/syslog | server enabled | 200") << "options" << "/debug/syslog" << true << 200;
|
||||
QTest::newRow("PUT /debug/syslog | server enabled | 405") << "put" << "/debug/syslog" << true << 405;
|
||||
QTest::newRow("POST /debug/syslog | server enabled | 405") << "post" << "/debug/syslog" << true << 405;
|
||||
QTest::newRow("DELETE /debug/syslog | server enabled | 405") << "delete" << "/debug/syslog" << true << 405;
|
||||
} else {
|
||||
// syslog enabled, but not readable
|
||||
QTest::newRow("GET /debug/syslog | server enabled | 200") << "get" << "/debug/syslog" << true << 403;
|
||||
QTest::newRow("OPTIONS /debug/syslog | server enabled | 200") << "options" << "/debug/logdb" << true << 200;
|
||||
QTest::newRow("PUT /debug/syslog | server enabled | 405") << "put" << "/debug/logdb" << true << 405;
|
||||
QTest::newRow("POST /debug/syslog | server enabled | 405") << "post" << "/debug/logdb" << true << 405;
|
||||
QTest::newRow("DELETE /debug/syslog | server enabled | 405") << "delete" << "/debug/logdb" << true << 405;
|
||||
QTest::newRow("OPTIONS /debug/syslog | server enabled | 200") << "options" << "/debug/syslog" << true << 200;
|
||||
QTest::newRow("PUT /debug/syslog | server enabled | 405") << "put" << "/debug/syslog" << true << 405;
|
||||
QTest::newRow("POST /debug/syslog | server enabled | 405") << "post" << "/debug/syslog" << true << 405;
|
||||
QTest::newRow("DELETE /debug/syslog | server enabled | 405") << "delete" << "/debug/syslog" << true << 405;
|
||||
}
|
||||
|
||||
// syslog disabled
|
||||
@ -544,11 +565,11 @@ void TestWebserver::getDebugServer_data()
|
||||
QTest::newRow("DELETE /debug/settings/guhd | server enabled | 405") << "delete" << "/debug/settings/guhd" << true << 405;
|
||||
|
||||
// settings/guhd disabled
|
||||
QTest::newRow("GET /debug/settings/guhd | server enabled | 404") << "get" << "/debug/settings/guhd" << false << 404;
|
||||
QTest::newRow("OPTIONS /debug/settings/guhd | server enabled | 404") << "options" << "/debug/settings/guhd" << false << 404;
|
||||
QTest::newRow("PUT /debug/settings/guhd | server enabled | 404") << "put" << "/debug/settings/guhd" << false << 404;
|
||||
QTest::newRow("POST /debug/settings/guhd | server enabled | 404") << "post" << "/debug/settings/guhd" << false << 404;
|
||||
QTest::newRow("DELETE /debug/settings/guhd | server enabled | 404") << "delete" << "/debug/settings/guhd" << false << 404;
|
||||
QTest::newRow("GET /debug/settings/guhd | server disabled | 404") << "get" << "/debug/settings/guhd" << false << 404;
|
||||
QTest::newRow("OPTIONS /debug/settings/guhd | server disabled | 404") << "options" << "/debug/settings/guhd" << false << 404;
|
||||
QTest::newRow("PUT /debug/settings/guhd | server disabled | 404") << "put" << "/debug/settings/guhd" << false << 404;
|
||||
QTest::newRow("POST /debug/settings/guhd | server disabled | 404") << "post" << "/debug/settings/guhd" << false << 404;
|
||||
QTest::newRow("DELETE /debug/settings/guhd | server disabled | 404") << "delete" << "/debug/settings/guhd" << false << 404;
|
||||
|
||||
// settings/devices enabled
|
||||
QTest::newRow("GET /debug/settings/devices | server enabled | 200") << "get" << "/debug/settings/devices" << true << 200;
|
||||
@ -558,11 +579,11 @@ void TestWebserver::getDebugServer_data()
|
||||
QTest::newRow("DELETE /debug/settings/devices | server enabled | 405") << "delete" << "/debug/settings/devices" << true << 405;
|
||||
|
||||
// settings/devices disabled
|
||||
QTest::newRow("GET /debug/settings/devices | server enabled | 404") << "get" << "/debug/settings/devices" << false << 404;
|
||||
QTest::newRow("OPTIONS /debug/settings/devices | server enabled | 404") << "options" << "/debug/settings/devices" << false << 404;
|
||||
QTest::newRow("PUT /debug/settings/devices | server enabled | 404") << "put" << "/debug/settings/devices" << false << 404;
|
||||
QTest::newRow("POST /debug/settings/devices | server enabled | 404") << "post" << "/debug/settings/devices" << false << 404;
|
||||
QTest::newRow("DELETE /debug/settings/devices | server enabled | 404") << "delete" << "/debug/settings/devices" << false << 404;
|
||||
QTest::newRow("GET /debug/settings/devices | server disabled | 404") << "get" << "/debug/settings/devices" << false << 404;
|
||||
QTest::newRow("OPTIONS /debug/settings/devices | server disabled | 404") << "options" << "/debug/settings/devices" << false << 404;
|
||||
QTest::newRow("PUT /debug/settings/devices | server disabled | 404") << "put" << "/debug/settings/devices" << false << 404;
|
||||
QTest::newRow("POST /debug/settings/devices | server disabled | 404") << "post" << "/debug/settings/devices" << false << 404;
|
||||
QTest::newRow("DELETE /debug/settings/devices | server disabled | 404") << "delete" << "/debug/settings/devices" << false << 404;
|
||||
|
||||
// settings/rules enabled
|
||||
QTest::newRow("GET /debug/settings/rules | server enabled | 200") << "get" << "/debug/settings/rules" << true << 200;
|
||||
@ -572,11 +593,11 @@ void TestWebserver::getDebugServer_data()
|
||||
QTest::newRow("DELETE /debug/settings/rules | server enabled | 405") << "delete" << "/debug/settings/rules" << true << 405;
|
||||
|
||||
// settings/rules disabled
|
||||
QTest::newRow("GET /debug/settings/rules | server enabled | 404") << "get" << "/debug/settings/rules" << false << 404;
|
||||
QTest::newRow("OPTIONS /debug/settings/rules | server enabled | 404") << "options" << "/debug/settings/rules" << false << 404;
|
||||
QTest::newRow("PUT /debug/settings/rules | server enabled | 404") << "put" << "/debug/settings/rules" << false << 404;
|
||||
QTest::newRow("POST /debug/settings/rules | server enabled | 404") << "post" << "/debug/settings/rules" << false << 404;
|
||||
QTest::newRow("DELETE /debug/settings/rules | server enabled | 404") << "delete" << "/debug/settings/rules" << false << 404;
|
||||
QTest::newRow("GET /debug/settings/rules | server disabled | 404") << "get" << "/debug/settings/rules" << false << 404;
|
||||
QTest::newRow("OPTIONS /debug/settings/rules | server disabled | 404") << "options" << "/debug/settings/rules" << false << 404;
|
||||
QTest::newRow("PUT /debug/settings/rules | server disabled | 404") << "put" << "/debug/settings/rules" << false << 404;
|
||||
QTest::newRow("POST /debug/settings/rules | server disabled | 404") << "post" << "/debug/settings/rules" << false << 404;
|
||||
QTest::newRow("DELETE /debug/settings/rules | server disabled | 404") << "delete" << "/debug/settings/rules" << false << 404;
|
||||
|
||||
// settings/devicestates enabled
|
||||
QTest::newRow("GET /debug/settings/devicestates | server enabled | 200") << "get" << "/debug/settings/devicestates" << true << 200;
|
||||
@ -586,11 +607,12 @@ void TestWebserver::getDebugServer_data()
|
||||
QTest::newRow("DELETE /debug/settings/devicestates | server enabled | 405") << "delete" << "/debug/settings/devicestates" << true << 405;
|
||||
|
||||
// settings/devicestates disabled
|
||||
QTest::newRow("GET /debug/settings/devicestates | server enabled | 404") << "get" << "/debug/settings/devicestates" << false << 404;
|
||||
QTest::newRow("OPTIONS /debug/settings/devicestates | server enabled | 404") << "options" << "/debug/settings/devicestates" << false << 404;
|
||||
QTest::newRow("PUT /debug/settings/devicestates | server enabled | 404") << "put" << "/debug/settings/devicestates" << false << 404;
|
||||
QTest::newRow("POST /debug/settings/devicestates | server enabled | 404") << "post" << "/debug/settings/devicestates" << false << 404;
|
||||
QTest::newRow("DELETE /debug/settings/devicestates | server enabled | 404") << "delete" << "/debug/settings/devicestates" << false << 404;
|
||||
QTest::newRow("GET /debug/settings/devicestates | server disabled | 404") << "get" << "/debug/settings/devicestates" << false << 404;
|
||||
QTest::newRow("OPTIONS /debug/settings/devicestates | server disabled | 404") << "options" << "/debug/settings/devicestates" << false << 404;
|
||||
QTest::newRow("PUT /debug/settings/devicestates | server disabled | 404") << "put" << "/debug/settings/devicestates" << false << 404;
|
||||
QTest::newRow("POST /debug/settings/devicestates | server disabled | 404") << "post" << "/debug/settings/devicestates" << false << 404;
|
||||
QTest::newRow("DELETE /debug/settings/devicestates | server disabled | 404") << "delete" << "/debug/settings/devicestates" << false << 404;
|
||||
|
||||
}
|
||||
|
||||
void TestWebserver::getDebugServer()
|
||||
|
||||
Reference in New Issue
Block a user