OpenSslCertificateCompressionTest Class — netty Architecture
Architecture documentation for the OpenSslCertificateCompressionTest class in OpenSslCertificateCompressionTest.java from the netty codebase.
Entity Profile
Dependency Diagram
graph TD 7111b952_7007_d5c2_8ec1_ca1531aba650["OpenSslCertificateCompressionTest"] d25c0995_133b_eb64_125b_b43330550916["OpenSslCertificateCompressionTest.java"] 7111b952_7007_d5c2_8ec1_ca1531aba650 -->|defined in| d25c0995_133b_eb64_125b_b43330550916 f4947413_f812_1ffc_3ad7_ab02ad76c4ee["init()"] 7111b952_7007_d5c2_8ec1_ca1531aba650 -->|method| f4947413_f812_1ffc_3ad7_ab02ad76c4ee e0d4978d_dbdc_1ac5_077c_cf4ea86310a1["refreshAlgos()"] 7111b952_7007_d5c2_8ec1_ca1531aba650 -->|method| e0d4978d_dbdc_1ac5_077c_cf4ea86310a1 ecc05a42_10d4_8814_def3_f08c34c7ba37["testSimple()"] 7111b952_7007_d5c2_8ec1_ca1531aba650 -->|method| ecc05a42_10d4_8814_def3_f08c34c7ba37 5a075c83_ad27_9143_b9b3_a4dc4f073c26["testServerPriority()"] 7111b952_7007_d5c2_8ec1_ca1531aba650 -->|method| 5a075c83_ad27_9143_b9b3_a4dc4f073c26 bf4761c9_9124_5790_451e_fe716b0883f8["testServerPriorityReverse()"] 7111b952_7007_d5c2_8ec1_ca1531aba650 -->|method| bf4761c9_9124_5790_451e_fe716b0883f8 ea524a2c_67ae_b50c_c024_1bfe185fae51["testFailedNegotiation()"] 7111b952_7007_d5c2_8ec1_ca1531aba650 -->|method| ea524a2c_67ae_b50c_c024_1bfe185fae51 cbc839aa_0653_2312_82b5_0803d9132d54["testAlgoFailure()"] 7111b952_7007_d5c2_8ec1_ca1531aba650 -->|method| cbc839aa_0653_2312_82b5_0803d9132d54 b917e8d0_9037_a4c1_4074_074df38a7ff9["testAlgoException()"] 7111b952_7007_d5c2_8ec1_ca1531aba650 -->|method| b917e8d0_9037_a4c1_4074_074df38a7ff9 2a16e92e_f131_81da_847a_0897a58b2197["testTlsLessThan13()"] 7111b952_7007_d5c2_8ec1_ca1531aba650 -->|method| 2a16e92e_f131_81da_847a_0897a58b2197 db72d557_c3a0_0fd0_73e5_e9ffc7bde00d["testDuplicateAdd()"] 7111b952_7007_d5c2_8ec1_ca1531aba650 -->|method| db72d557_c3a0_0fd0_73e5_e9ffc7bde00d da534ace_90fe_535e_ccb5_cc77ef21f8fb["testNotBoringAdd()"] 7111b952_7007_d5c2_8ec1_ca1531aba650 -->|method| da534ace_90fe_535e_ccb5_cc77ef21f8fb 03f43b9a_8720_381a_6b49_75148cbb5e23["runCertCompressionTest()"] 7111b952_7007_d5c2_8ec1_ca1531aba650 -->|method| 03f43b9a_8720_381a_6b49_75148cbb5e23 f948c316_b1c4_8933_26d6_59650a7a4b76["SslContext()"] 7111b952_7007_d5c2_8ec1_ca1531aba650 -->|method| f948c316_b1c4_8933_26d6_59650a7a4b76
Relationship Graph
Source Code
handler/src/test/java/io/netty/handler/ssl/OpenSslCertificateCompressionTest.java lines 50–445
public class OpenSslCertificateCompressionTest {
private static SelfSignedCertificate cert;
private TestCertCompressionAlgo testZLibAlgoServer;
private TestCertCompressionAlgo testBrotliAlgoServer;
private TestCertCompressionAlgo testZstdAlgoServer;
private TestCertCompressionAlgo testZlibAlgoClient;
private TestCertCompressionAlgo testBrotliAlgoClient;
@BeforeAll
public static void init() throws Exception {
assumeTrue(OpenSsl.isTlsv13Supported());
cert = new SelfSignedCertificate();
}
@BeforeEach
public void refreshAlgos() {
testZLibAlgoServer = new TestCertCompressionAlgo(CertificateCompressionAlgo.TLS_EXT_CERT_COMPRESSION_ZLIB);
testBrotliAlgoServer = new TestCertCompressionAlgo(CertificateCompressionAlgo.TLS_EXT_CERT_COMPRESSION_BROTLI);
testZstdAlgoServer = new TestCertCompressionAlgo(CertificateCompressionAlgo.TLS_EXT_CERT_COMPRESSION_ZSTD);
testZlibAlgoClient = new TestCertCompressionAlgo(CertificateCompressionAlgo.TLS_EXT_CERT_COMPRESSION_ZLIB);
testBrotliAlgoClient = new TestCertCompressionAlgo(CertificateCompressionAlgo.TLS_EXT_CERT_COMPRESSION_BROTLI);
}
@Test
public void testSimple() throws Throwable {
assumeTrue(OpenSsl.isBoringSSL() || OpenSsl.isAWSLC());
final SslContext clientSslContext = buildClientContext(
OpenSslCertificateCompressionConfig.newBuilder()
.addAlgorithm(testBrotliAlgoClient,
OpenSslCertificateCompressionConfig.AlgorithmMode.Decompress)
.build()
);
final SslContext serverSslContext = buildServerContext(
OpenSslCertificateCompressionConfig.newBuilder()
.addAlgorithm(testBrotliAlgoServer, OpenSslCertificateCompressionConfig.AlgorithmMode.Compress)
.build()
);
runCertCompressionTest(clientSslContext, serverSslContext);
assertCompress(testBrotliAlgoServer);
assertDecompress(testBrotliAlgoClient);
}
@Test
public void testServerPriority() throws Throwable {
assumeTrue(OpenSsl.isBoringSSL() || OpenSsl.isAWSLC());
final SslContext clientSslContext = buildClientContext(
OpenSslCertificateCompressionConfig.newBuilder()
.addAlgorithm(testBrotliAlgoClient,
OpenSslCertificateCompressionConfig.AlgorithmMode.Decompress)
.addAlgorithm(testZlibAlgoClient, OpenSslCertificateCompressionConfig.AlgorithmMode.Decompress)
.build()
);
final SslContext serverSslContext = buildServerContext(
OpenSslCertificateCompressionConfig.newBuilder()
.addAlgorithm(testZLibAlgoServer, OpenSslCertificateCompressionConfig.AlgorithmMode.Compress)
.addAlgorithm(testBrotliAlgoServer, OpenSslCertificateCompressionConfig.AlgorithmMode.Compress)
.build()
);
runCertCompressionTest(clientSslContext, serverSslContext);
assertCompress(testZLibAlgoServer);
assertDecompress(testZlibAlgoClient);
assertNone(testBrotliAlgoClient, testBrotliAlgoServer);
}
@Test
public void testServerPriorityReverse() throws Throwable {
assumeTrue(OpenSsl.isBoringSSL() || OpenSsl.isAWSLC());
final SslContext clientSslContext = buildClientContext(
OpenSslCertificateCompressionConfig.newBuilder()
.addAlgorithm(testBrotliAlgoClient,
OpenSslCertificateCompressionConfig.AlgorithmMode.Decompress)
.addAlgorithm(testZlibAlgoClient, OpenSslCertificateCompressionConfig.AlgorithmMode.Decompress)
.build()
);
final SslContext serverSslContext = buildServerContext(
OpenSslCertificateCompressionConfig.newBuilder()
Source
Frequently Asked Questions
What is the OpenSslCertificateCompressionTest class?
OpenSslCertificateCompressionTest is a class in the netty codebase, defined in handler/src/test/java/io/netty/handler/ssl/OpenSslCertificateCompressionTest.java.
Where is OpenSslCertificateCompressionTest defined?
OpenSslCertificateCompressionTest is defined in handler/src/test/java/io/netty/handler/ssl/OpenSslCertificateCompressionTest.java at line 50.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free