@@ -180,4 +180,43 @@ class AmpSpec extends BaseSpec {
180180 assert bidderRequest. imp[0 ]?. banner?. format[0 ]?. weight == ampStoredRequest. imp[0 ]. banner. format[0 ]. weight
181181 assert bidderRequest. regs?. gdpr == ampStoredRequest. regs. gdpr
182182 }
183+
184+ def " PBS should pass addtl_consent to user.ext.consented_providers_settings.consented_providers" () {
185+ given : " Default amp request with addtlConsent"
186+ def randomAddtlConsent = PBSUtils . randomString
187+ def ampRequest = AmpRequest . defaultAmpRequest. tap {
188+ addtlConsent = randomAddtlConsent
189+ }
190+
191+ and : " Save storedRequest into DB"
192+ def ampStoredRequest = BidRequest . defaultBidRequest
193+ def storedRequest = StoredRequest . getStoredRequest(ampRequest, ampStoredRequest)
194+ storedRequestDao. save(storedRequest)
195+
196+ when : " PBS processes amp request"
197+ defaultPbsService. sendAmpRequest(ampRequest)
198+
199+ then : " Bidder request should contain addtl consent"
200+ def bidderRequest = bidder. getBidderRequest(ampStoredRequest. id)
201+ assert bidderRequest. user. ext. consentedProvidersSettings. consentedProviders == randomAddtlConsent
202+ }
203+
204+ def " PBS shouldn't pass addtl_consent to user.ext.consented_providers_settings.consented_providers when addtl_consent not specified" () {
205+ given : " Default amp request without addtl_consent"
206+ def ampRequest = AmpRequest . defaultAmpRequest. tap {
207+ addtlConsent = null
208+ }
209+
210+ and : " Save storedRequest into DB"
211+ def ampStoredRequest = BidRequest . defaultBidRequest
212+ def storedRequest = StoredRequest . getStoredRequest(ampRequest, ampStoredRequest)
213+ storedRequestDao. save(storedRequest)
214+
215+ when : " PBS processes amp request"
216+ defaultPbsService. sendAmpRequest(ampRequest)
217+
218+ then : " Bidder request shouldn't contain addtl consent"
219+ def bidderRequest = bidder. getBidderRequest(ampStoredRequest. id)
220+ assert ! bidderRequest. user. ext. consentedProvidersSettings. consentedProviders
221+ }
183222}
0 commit comments