'When calling L{sslverify.OpenSSLCertificateOptions} with
C{insecurelyLowerMinimumTo} set to TLSv1.0 and
C{lowerMaximumSecurityTo} to TLSv1.2, it will exclude both SSLs and
the (unreleased) TLSv1.3.'

def test_tlsProtocolsAllModernTLS(self):

    opts = sslverify.OpenSSLCertificateOptions(privateKey=self.sKey, certificate=self.sCert, insecurelyLowerMinimumTo=sslverify.TLSVersion.TLSv1_0, lowerMaximumSecurityTo=sslverify.TLSVersion.TLSv1_2)
    opts._contextFactory = FakeContext
    ctx = opts.getContext()
    options = ((((SSL.OP_NO_SSLv2 | SSL.OP_NO_COMPRESSION) | SSL.OP_CIPHER_SERVER_PREFERENCE) | SSL.OP_NO_SSLv3) | opts._OP_NO_TLSv1_3)
    self.assertEqual(options, (ctx._options & options))
