diff options
author | Richard J. Moore <rich@kde.org> | 2014-05-05 16:42:14 +0100 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2014-05-06 16:35:56 +0200 |
commit | 9b1746c49912028c05683d0ce76af968e7ee96f8 (patch) | |
tree | ad71edfcab90cb4786c0911c0f4c127e9807a928 /tests/auto | |
parent | 1d6695451fb5716451b3ac9c05af11eff00f5864 (diff) |
Add autotest for the QSslCertificate QIODevice constructor.
Change-Id: I92fa083665509932b75ff1037904a6f78a950fd6
Reviewed-by: Jeremy Lainé <jeremy.laine@m4x.org>
Reviewed-by: Peter Hartmann <phartmann@blackberry.com>
Diffstat (limited to 'tests/auto')
-rw-r--r-- | tests/auto/network/ssl/qsslcertificate/tst_qsslcertificate.cpp | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/tests/auto/network/ssl/qsslcertificate/tst_qsslcertificate.cpp b/tests/auto/network/ssl/qsslcertificate/tst_qsslcertificate.cpp index f5d65d960c..4f62076870 100644 --- a/tests/auto/network/ssl/qsslcertificate/tst_qsslcertificate.cpp +++ b/tests/auto/network/ssl/qsslcertificate/tst_qsslcertificate.cpp @@ -81,6 +81,7 @@ private slots: void emptyConstructor(); void constructor_data(); void constructor(); + void constructor_device(); void constructingGarbage(); void copyAndAssign_data(); void copyAndAssign(); @@ -227,6 +228,47 @@ void tst_QSslCertificate::constructor() QVERIFY(!certificate.isNull()); } +void tst_QSslCertificate::constructor_device() +{ + if (!QSslSocket::supportsSsl()) + return; + + QFile f(testDataDir + "/verify-certs/test-ocsp-good-cert.pem"); + bool ok = f.open(QIODevice::ReadOnly); + QVERIFY(ok); + + QSslCertificate cert(&f); + QVERIFY(!cert.isNull()); + f.close(); + + // Check opening a DER as a PEM fails + QFile f2(testDataDir + "/certificates/cert.der"); + ok = f2.open(QIODevice::ReadOnly); + QVERIFY(ok); + + QSslCertificate cert2(&f2); + QVERIFY(cert2.isNull()); + f2.close(); + + // Check opening a DER as a DER works + QFile f3(testDataDir + "/certificates/cert.der"); + ok = f3.open(QIODevice::ReadOnly); + QVERIFY(ok); + + QSslCertificate cert3(&f3, QSsl::Der); + QVERIFY(!cert3.isNull()); + f3.close(); + + // Check opening a PEM as a DER fails + QFile f4(testDataDir + "/verify-certs/test-ocsp-good-cert.pem"); + ok = f4.open(QIODevice::ReadOnly); + QVERIFY(ok); + + QSslCertificate cert4(&f4, QSsl::Der); + QVERIFY(cert4.isNull()); + f4.close(); +} + void tst_QSslCertificate::constructingGarbage() { if (!QSslSocket::supportsSsl()) |