@@ -948,8 +948,8 @@ public void testSecuritySchemesFilter() {
948948 assertEquals (openAPI .getComponents ().getSecuritySchemes ().containsKey ("openIdConnect1" ), false );
949949 assertEquals (openAPI .getComponents ().getSecuritySchemes ().containsKey ("openIdConnect2" ), false );
950950
951- // Check how we clean up the references to the removed security schemes in the
952- // global security requirement
951+ // Check how we clean up the references to the removed security schemes
952+ // Global security requirements
953953 assertTrue (openAPI .getSecurity ().stream ().anyMatch (map -> map .containsKey ("api_key1" )));
954954 assertFalse (openAPI .getSecurity ().stream ().anyMatch (map -> map .containsKey ("api_key2" )));
955955 assertFalse (openAPI .getSecurity ().stream ().anyMatch (map -> map .containsKey ("http1" )));
@@ -963,8 +963,7 @@ public void testSecuritySchemesFilter() {
963963 // We should leave only one (the original one) empty security requirement object
964964 assertEquals (openAPI .getSecurity ().stream ().filter (map -> map .isEmpty ()).count (), 1 );
965965
966- // Check how we clean up the references to the removed security schemes in the
967- // paths
966+ // Paths
968967 assertTrue (openAPI .getPaths ().get ("/api_keys" ).getGet ().getSecurity ().stream ()
969968 .anyMatch (map -> map .containsKey ("api_key1" )));
970969 assertFalse (openAPI .getPaths ().get ("/api_keys" ).getGet ().getSecurity ().stream ()
@@ -1005,14 +1004,82 @@ public void testSecuritySchemesFilter() {
10051004 .anyMatch (map -> map .containsKey ("openIdConnect1" )));
10061005 assertFalse (openAPI .getPaths ().get ("/openIdConnect2" ).getPost ().getSecurity ().stream ()
10071006 .anyMatch (map -> map .containsKey ("openIdConnect2" )));
1008- // One of security requirements becomes empty after clean up - we should remove it
1007+ // One of security requirements becomes empty after clean up - we should remove
1008+ // it
10091009 assertEquals (openAPI .getPaths ().get ("/multipleSecuritySchemes" ).getGet ().getSecurity ().size (), 1 );
10101010 // Another requirement should contain only api_key1 and oauth2_1 schemes
10111011 assertEquals (openAPI .getPaths ().get ("/multipleSecuritySchemes" ).getGet ().getSecurity ().get (0 ).size (), 2 );
1012- assertTrue (openAPI .getPaths ().get ("/multipleSecuritySchemes" ).getGet ().getSecurity ().get (0 ).containsKey ("api_key1" ));
1013- assertTrue (openAPI .getPaths ().get ("/multipleSecuritySchemes" ).getGet ().getSecurity ().get (0 ).containsKey ("oauth2_1" ));
1014- assertEquals (openAPI .getPaths ().get ("/multipleSecuritySchemes" ).getGet ().getSecurity ().get (0 ).get ("oauth2_1" ).size (), 1 );
1015- assertEquals (openAPI .getPaths ().get ("/multipleSecuritySchemes" ).getGet ().getSecurity ().get (0 ).get ("oauth2_1" ).get (0 ), "read:pets" );
1012+ assertTrue (openAPI .getPaths ().get ("/multipleSecuritySchemes" ).getGet ().getSecurity ().get (0 )
1013+ .containsKey ("api_key1" ));
1014+ assertTrue (openAPI .getPaths ().get ("/multipleSecuritySchemes" ).getGet ().getSecurity ().get (0 )
1015+ .containsKey ("oauth2_1" ));
1016+ assertEquals (
1017+ openAPI .getPaths ().get ("/multipleSecuritySchemes" ).getGet ().getSecurity ().get (0 ).get ("oauth2_1" ).size (),
1018+ 1 );
1019+ assertEquals (
1020+ openAPI .getPaths ().get ("/multipleSecuritySchemes" ).getGet ().getSecurity ().get (0 ).get ("oauth2_1" ).get (0 ),
1021+ "read:pets" );
1022+
1023+ // Webhooks
1024+ assertTrue (openAPI .getWebhooks ().get ("webhookAllSecuritySchemes" ).getPost ().getSecurity ().stream ()
1025+ .anyMatch (map -> map .containsKey ("api_key1" )));
1026+ assertFalse (openAPI .getWebhooks ().get ("webhookAllSecuritySchemes" ).getPost ().getSecurity ().stream ()
1027+ .anyMatch (map -> map .containsKey ("api_key2" )));
1028+ assertFalse (openAPI .getWebhooks ().get ("webhookAllSecuritySchemes" ).getPost ().getSecurity ().stream ()
1029+ .anyMatch (map -> map .containsKey ("http1" )));
1030+ assertFalse (openAPI .getWebhooks ().get ("webhookAllSecuritySchemes" ).getPost ().getSecurity ().stream ()
1031+ .anyMatch (map -> map .containsKey ("http2" )));
1032+ assertFalse (openAPI .getWebhooks ().get ("webhookAllSecuritySchemes" ).getPost ().getSecurity ().stream ()
1033+ .anyMatch (map -> map .containsKey ("mutualTLS1" )));
1034+ assertFalse (openAPI .getWebhooks ().get ("webhookAllSecuritySchemes" ).getPost ().getSecurity ().stream ()
1035+ .anyMatch (map -> map .containsKey ("mutualTLS2" )));
1036+ assertTrue (openAPI .getWebhooks ().get ("webhookAllSecuritySchemes" ).getPost ().getSecurity ().stream ()
1037+ .anyMatch (map -> map .containsKey ("oauth2_1" )));
1038+ assertTrue (openAPI .getWebhooks ().get ("webhookAllSecuritySchemes" ).getPost ().getSecurity ().stream ()
1039+ .anyMatch (map -> map .containsKey ("oauth2_2" )));
1040+ assertFalse (openAPI .getWebhooks ().get ("webhookAllSecuritySchemes" ).getPost ().getSecurity ().stream ()
1041+ .anyMatch (map -> map .containsKey ("openIdConnect1" )));
1042+ assertFalse (openAPI .getWebhooks ().get ("webhookAllSecuritySchemes" ).getPost ().getSecurity ().stream ()
1043+ .anyMatch (map -> map .containsKey ("openIdConnect2" )));
1044+ // We should leave only one (the original one) empty security requirement object
1045+ assertEquals (openAPI .getWebhooks ().get ("webhookAllSecuritySchemes" ).getPost ().getSecurity ().stream ()
1046+ .filter (map -> map .isEmpty ()).count (), 1 );
1047+
1048+ // Callbacks
1049+ assertTrue (openAPI .getComponents ().getCallbacks ().get ("callbackAllSecuritySchemes" )
1050+ .get ("{$request.body#/callbackUrl}" ).getPost ().getSecurity ().stream ()
1051+ .anyMatch (map -> map .containsKey ("api_key1" )));
1052+ assertFalse (openAPI .getComponents ().getCallbacks ().get ("callbackAllSecuritySchemes" )
1053+ .get ("{$request.body#/callbackUrl}" ).getPost ().getSecurity ().stream ()
1054+ .anyMatch (map -> map .containsKey ("api_key2" )));
1055+ assertFalse (openAPI .getComponents ().getCallbacks ().get ("callbackAllSecuritySchemes" )
1056+ .get ("{$request.body#/callbackUrl}" ).getPost ().getSecurity ().stream ()
1057+ .anyMatch (map -> map .containsKey ("http1" )));
1058+ assertFalse (openAPI .getComponents ().getCallbacks ().get ("callbackAllSecuritySchemes" )
1059+ .get ("{$request.body#/callbackUrl}" ).getPost ().getSecurity ().stream ()
1060+ .anyMatch (map -> map .containsKey ("http2" )));
1061+ assertFalse (openAPI .getComponents ().getCallbacks ().get ("callbackAllSecuritySchemes" )
1062+ .get ("{$request.body#/callbackUrl}" ).getPost ().getSecurity ().stream ()
1063+ .anyMatch (map -> map .containsKey ("mutualTLS1" )));
1064+ assertFalse (openAPI .getComponents ().getCallbacks ().get ("callbackAllSecuritySchemes" )
1065+ .get ("{$request.body#/callbackUrl}" ).getPost ().getSecurity ().stream ()
1066+ .anyMatch (map -> map .containsKey ("mutualTLS2" )));
1067+ assertTrue (openAPI .getComponents ().getCallbacks ().get ("callbackAllSecuritySchemes" )
1068+ .get ("{$request.body#/callbackUrl}" ).getPost ().getSecurity ().stream ()
1069+ .anyMatch (map -> map .containsKey ("oauth2_1" )));
1070+ assertTrue (openAPI .getComponents ().getCallbacks ().get ("callbackAllSecuritySchemes" )
1071+ .get ("{$request.body#/callbackUrl}" ).getPost ().getSecurity ().stream ()
1072+ .anyMatch (map -> map .containsKey ("oauth2_2" )));
1073+ assertFalse (openAPI .getComponents ().getCallbacks ().get ("callbackAllSecuritySchemes" )
1074+ .get ("{$request.body#/callbackUrl}" ).getPost ().getSecurity ().stream ()
1075+ .anyMatch (map -> map .containsKey ("openIdConnect1" )));
1076+ assertFalse (openAPI .getComponents ().getCallbacks ().get ("callbackAllSecuritySchemes" )
1077+ .get ("{$request.body#/callbackUrl}" ).getPost ().getSecurity ().stream ()
1078+ .anyMatch (map -> map .containsKey ("openIdConnect2" )));
1079+ // We should leave only one (the original one) empty security requirement object
1080+ assertEquals (openAPI .getComponents ().getCallbacks ().get ("callbackAllSecuritySchemes" )
1081+ .get ("{$request.body#/callbackUrl}" ).getPost ().getSecurity ().stream ().filter (map -> map .isEmpty ())
1082+ .count (), 1 );
10161083 }
10171084
10181085 @ Test
0 commit comments