feature/Check mandatory headers of Berlin Group 3

This commit is contained in:
Marko Milić 2025-03-19 23:26:48 +01:00
parent 921fa756f3
commit 928a3d8bfb
2 changed files with 6 additions and 2 deletions

View File

@ -20,9 +20,9 @@ object BerlinGroupCheck {
private def validateHeaders(verb: String, url: String, reqHeaders: List[HTTPParam], forwardResult: (Box[User], Option[CallContext])): (Box[User], Option[CallContext]) = {
val headerMap = reqHeaders.map(h => h.name.toLowerCase -> h).toMap
val missingHeaders = if(url.contains("berlin-group") && url.endsWith("/consent"))
berlinGroupMandatoryHeaders.filterNot(headerMap.contains)
else
(berlinGroupMandatoryHeaders ++ berlinGroupMandatoryHeaderConsent).filterNot(headerMap.contains)
else
berlinGroupMandatoryHeaders.filterNot(headerMap.contains)
if (missingHeaders.isEmpty) {
forwardResult // All mandatory headers are present

View File

@ -57,6 +57,10 @@ trait ServerSetup extends FeatureSpec with SendServerRequests
setPropsValues("api_instance_id" -> "1_final")
setPropsValues("starConnector_supported_types" -> "mapped,internal")
setPropsValues("connector" -> "star")
// Berlin Group
setPropsValues("berlin_group_mandatory_headers" -> "")
setPropsValues("berlin_group_mandatory_header_consent" -> "")
val server = TestServer
def baseRequest = host(server.host, server.port)