32class TestHTTPServer :
public QObject
41 QUrl url(
const QString &documentPath)
const;
42 QString urlString(
const QString &documentPath)
const;
43 QString errorString()
const;
45 enum Mode { Normal, Delay, Disconnect };
46 bool serveDirectory(
const QString &, Mode = Normal);
48 bool wait(
const QUrl &expect,
const QUrl &reply,
const QUrl &body);
49 bool hasFailed()
const;
51 void addAlias(
const QString &filename,
const QString &aliasName);
52 void addRedirect(
const QString &filename,
const QString &redirectName);
54 void registerFileNameForContentSubstitution(
const QString &fileName);
57 void sendDelayedItem();
59 qsizetype chunkSize()
const {
return m_chunkSize; }
60 void setChunkSize(qsizetype chunkSize) { m_chunkSize = chunkSize; }
76 void serveGET(QTcpSocket *,
const QByteArray &);
77 bool reply(QTcpSocket *,
const QByteArray &);
79 QList<std::pair<QString, Mode> > m_directories;
80 QHash<QTcpSocket *, QByteArray> m_dataCache;
81 QList<std::pair<QTcpSocket *, QByteArray> > m_toSend;
82 QSet<QString> m_contentSubstitutedFileNames;
85 QList<QByteArray> headerExactMatches;
86 QList<QByteArray> headerPrefixes;
89 QByteArray m_replyData;
90 QByteArray m_bodyData;
94 QHash<QString, QString> m_aliases;
95 QHash<QString, QString> m_redirects;
99 qsizetype m_chunkSize = std::numeric_limits<qsizetype>::max();