File 1512-ssl-Reduce-code-duplication.patch of Package erlang

From 283166e47463463d41f14a07a15e3561f521ef13 Mon Sep 17 00:00:00 2001
From: Ingela Anderton Andin <ingela@erlang.org>
Date: Thu, 16 Oct 2025 10:10:47 +0200
Subject: [PATCH 2/4] ssl: Reduce code duplication

---
 lib/ssl/test/property_test/ssl_eqc_chain.erl | 117 +++++--------------
 1 file changed, 31 insertions(+), 86 deletions(-)

diff --git a/lib/ssl/test/property_test/ssl_eqc_chain.erl b/lib/ssl/test/property_test/ssl_eqc_chain.erl
index 7d53ba4bd9..5eba2dcb64 100644
--- a/lib/ssl/test/property_test/ssl_eqc_chain.erl
+++ b/lib/ssl/test/property_test/ssl_eqc_chain.erl
@@ -59,101 +59,46 @@
 %%--------------------------------------------------------------------
 %% Properties --------------------------------------------------------
 %%--------------------------------------------------------------------
+
+signature_algs_test(ClientOptions, ServerOptions) ->
+    try
+        [TLSVersion] = proplists:get_value(versions, ClientOptions),
+        SigAlgs = signature_algs(TLSVersion),
+        ssl_test_lib:basic_test(SigAlgs ++ ClientOptions,
+                                SigAlgs ++ ServerOptions, [{server_type, erlang},
+                                                           {client_type, erlang},
+                                                           {version, TLSVersion}
+                                                          ]),
+
+        true
+    catch _:_ ->
+            false
+    end.
+
 prop_tls_unordered_path(PrivDir) ->
-    ?FORALL({ClientOptions, ServerOptions}, ?LET(Version, tls_version(), unordered_options(Version, PrivDir)),
-            try
-                [TLSVersion] = proplists:get_value(versions, ClientOptions),
-                SigAlgs = signature_algs(TLSVersion),
-                ssl_test_lib:basic_test(SigAlgs ++ ClientOptions,
-                                        SigAlgs ++ ServerOptions, [{server_type, erlang},
-                                                                   {client_type, erlang},
-                                                                   {version, TLSVersion}
-                                                                  ])
-            of
-                _ ->
-                    true
-            catch
-                _:_ ->
-                    false
-            end
-	   ).
+    ?FORALL({ClientOptions, ServerOptions},
+            ?LET(Version, tls_version(), unordered_options(Version, PrivDir)),
+            signature_algs_test(ClientOptions, ServerOptions)).
 
 prop_tls_extraneous_path(PrivDir) ->
-    ?FORALL({ClientOptions, ServerOptions}, ?LET(Version, tls_version(), extraneous_options(Version, PrivDir)),
-            try
-                [TLSVersion] = proplists:get_value(versions, ClientOptions),
-                SigAlgs = signature_algs(TLSVersion),
-                ssl_test_lib:basic_test(SigAlgs ++ ClientOptions,
-                                        SigAlgs ++ ServerOptions, [{server_type, erlang},
-                                                                   {client_type, erlang},
-                                                                   {version, TLSVersion}
-                                                                  ])
-            of
-                _ ->
-                    true
-            catch
-                _:_ ->
-                    false
-            end
-           ).
+    ?FORALL({ClientOptions, ServerOptions},
+            ?LET(Version, tls_version(), extraneous_options(Version, PrivDir)),
+            signature_algs_test(ClientOptions, ServerOptions)).
 
 prop_tls_extraneous_paths() ->
-    ?FORALL({ClientOptions, ServerOptions}, ?LET(Version, tls_version(), extra_extraneous_options(Version)),
-            try
-                [TLSVersion] = proplists:get_value(versions, ClientOptions),
-                SigAlgs = signature_algs(TLSVersion),
-                ssl_test_lib:basic_test(SigAlgs ++ ClientOptions,
-                                        SigAlgs ++ ServerOptions, [{server_type, erlang},
-                                                                   {client_type, erlang},
-                                                                   {version, TLSVersion}
-                                                                  ])
-            of
-                _ ->
-                    true
-            catch
-                _:_ ->
-                    false
-            end
-           ).
+    ?FORALL({ClientOptions, ServerOptions},
+            ?LET(Version, tls_version(), extra_extraneous_options(Version)),
+            signature_algs_test(ClientOptions, ServerOptions)).
 
 prop_tls_extraneous_and_unordered_path() ->
-    ?FORALL({ClientOptions, ServerOptions}, ?LET(Version, tls_version(), unordered_extraneous_options(Version)),
-            try
-                [TLSVersion] = proplists:get_value(versions, ClientOptions),
-                SigAlgs = signature_algs(TLSVersion),
-                ssl_test_lib:basic_test(SigAlgs ++ ClientOptions,
-                                        SigAlgs ++ ServerOptions, [{server_type, erlang},
-                                                                   {client_type, erlang},
-                                                                   {version, TLSVersion}
-                                                                  ])
-            of
-                _ ->
-                    true
-            catch
-                _:_ ->
-                    false
-            end
-           ).
+    ?FORALL({ClientOptions, ServerOptions},
+            ?LET(Version, tls_version(), unordered_extraneous_options(Version)),
+            signature_algs_test(ClientOptions, ServerOptions)).
 
 prop_client_cert_auth() ->
-    ?FORALL({ClientOptions, ServerOptions}, ?LET(Version, tls_version(), client_cert_auth_opts(Version)),
-            try
-                [TLSVersion] = proplists:get_value(versions, ClientOptions),
-                SigAlgs = signature_algs(TLSVersion),
-                ssl_test_lib:basic_test(SigAlgs ++ ClientOptions,
-                                        SigAlgs ++ ServerOptions,
-                                        [{server_type, erlang},
-                                         {client_type, erlang},
-                                         {version, TLSVersion}
-                                        ])
-            of
-                _ ->
-                    true
-            catch
-                _:_ ->
-                    false
-            end
-           ).
+    ?FORALL({ClientOptions, ServerOptions},
+            ?LET(Version, tls_version(), client_cert_auth_opts(Version)),
+            signature_algs_test(ClientOptions, ServerOptions)).
 
 %%--------------------------------------------------------------------
 %% Chain Generators  -----------------------------------------------
-- 
2.51.0

openSUSE Build Service is sponsored by