test for debuging - ssl socket

This commit is contained in:
Ondřej Fischer 2019-10-07 12:00:04 +02:00
parent 0903322e41
commit cc9e9978ff
3 changed files with 57 additions and 4 deletions

View File

@ -56,13 +56,13 @@ void RequestManager::getRequest(QString endpoint)
if (!loginStatus)
{
login(config.object()["host"].toString(), config.object()["username"].toString(), config.object()["password"].toString());
QEventLoop loop;
QObject::connect(this, &RequestManager::successLogin, &loop, &QEventLoop::quit);
loop.exec();
// QEventLoop loop;
// QObject::connect(this, &RequestManager::successLogin, &loop, &QEventLoop::quit);
// loop.exec();
}
//
host = config.object()["host"].toString();
//host = config.object()["host"].toString();
//
QNetworkRequest request;
@ -70,6 +70,7 @@ void RequestManager::getRequest(QString endpoint)
qDebug() << authHeader;
request.setRawHeader("Authorization", authHeader.toLocal8Bit());
request.setRawHeader("User-Agent", "curl/7.65.3");
request.setRawHeader("Connection", "Keep-Alive");
request.setRawHeader("Accept", "*/*");
request.setRawHeader("Accept-Encoding", "*");
request.setRawHeader("Accept-Language", "*");

View File

@ -122,5 +122,54 @@ void UnitTest::connectToDB()
QCOMPARE(db->getTestMessage(2), "Does it work?");
}
void UnitTest::debugConnection()
{
QSslSocket ssl;// = new QSslSocket();
ssl.connectToHostEncrypted("192.168.1.3", 8443);
ssl.ignoreSslErrors();
if (!ssl.waitForEncrypted())
{
qDebug() << ssl.errorString();
}
QString tmp = "POST /AaaManager/authSession HTTP/1.1\r\nHost: 192.168.1.3:8443\r\nAuthorization: Basic c3BhY2V0aTpFN0ZFQTA3REJDODJGQjlCQTM0QjJFNDUzRTJFRkU4OUYwNTgzRTcxODc1NDM1MDdFRjExRTg0NzI2MDcxRkU0Mjg0NDUzNzJGMkU0NkI0NTVFQjBDNzk3NDdDNTFFMzYyRjQwM0NFMzk0NzNBMkE4QzJERkEwQ0U1Qzk4MjZDMA==\r\nUser-Agent: curl/7.65.3\r\nAccept: */*\r\nContent-Type: application/json\r\nContent-Length: 164\r\n\r\n{\"password\":\"E7FEA07DBC82FB9BA34B2E453E2EFE89F0583E7187543507EF11E84726071FE428445372F2E46B455EB0C79747C51E362F403CE39473A2A8C2DFA0CE5C9826C0\",\"username\":\"spaceti\"}";
/*POST /AaaManager/authSession HTTP/1.1
Host: localhost:8080
Authorization: Basic c3BhY2V0aTpFN0ZFQTA3REJDODJGQjlCQTM0QjJFNDUzRTJFRkU4OUYwNTgzRTcxODc1NDM1MDdFRjExRTg0NzI2MDcxRkU0Mjg0NDUzNzJGMkU0NkI0NTVFQjBDNzk3NDdDNTFFMzYyRjQwM0NFMzk0NzNBMkE4QzJERkEwQ0U1Qzk4MjZDMA==
User-Agent: curl/7.65.3
Accept:
Content-Type: application/json
Content-Length: 164
{"password":"E7FEA07DBC82FB9BA34B2E453E2EFE89F0583E7187543507EF11E84726071FE428445372F2E46B455EB0C79747C51E362F403CE39473A2A8C2DFA0CE5C9826C0","username":"spaceti"}*/
qDebug() << tmp.toUtf8();
ssl.write(tmp.toUtf8());
QString data;
while (ssl.waitForReadyRead() && data.isEmpty())
{
data.append(ssl.readAll().data());
}
qDebug() << data;
int index = data.lastIndexOf("id");
QString tkn = data.mid( index + 5, 36);
tkn = tkn + ":";
qDebug() << "parsed token : " <<tkn;
/*
RequestManager* testAccess = new RequestManager();
QJsonDocument config = testAccess->getConfig();
QSignalSpy spy(testAccess, SIGNAL(successLogin()));
testAccess->login(host, email, password);
spy.wait();
QString token = testAccess->getToken();
token = token + ":";*/
tmp = "POST /SubjectManager/getSubjects\r\nHTTP/1.1 Host: 192.168.1.3:8443\r\nAuthorization: Basic " + tkn.toUtf8().toBase64() + "\r\nUser-Agent: curl/7.65.3\r\nAccept: */*)";
qDebug() << tmp.toUtf8();
ssl.write(tmp.toUtf8());
while (ssl.waitForReadyRead())
qDebug() << ssl.readAll().data();
QVERIFY(true);
}
QTEST_MAIN(UnitTest)

View File

@ -1,3 +1,4 @@
#pragma once
#include <QtTest/QtTest>
@ -5,6 +6,7 @@
#include <requestmanager.h>
#include "subject.h"
#include "databasemanager.h"
#include <QSslSocket>
class UnitTest : public QObject
@ -20,6 +22,7 @@ private slots:
void subjectJSONParser();
void tokenJSONParser();
void connectToDB();
void debugConnection();
private:
//QString host = "http://localhost:8080"; //colnod server (ssh -L 8080:192.168.254.11:8443 penta-master)