# Test helper that redirects to "trusted-scoring-signals.py" or # "trusted-bidding-signals.py", depending on whether the query params have an # "interestGroupNames" entry or not. Query parameters are preserved across the # redirect. Used to make sure that trusted signals requests don't follow # redirects. Response includes the "Ad-Auction-Allowed" header, which should # make no difference; it's present to make sure its absence isn't the reason a # redirect was blocked. def main(request, response): response.status = (302, "Found") response.headers.set(b"Ad-Auction-Allowed", "true") # If there's an "interestGroupNames" query parameter, redirect to bidding # signals. Otherwise, redirect to scoring signals. location = b"trusted-scoring-signals.py?" for param in request.url_parts.query.split("&"): pair = param.split("=", 1) if pair[0] == "interestGroupNames": location = b"trusted-bidding-signals.py?" # Append query parameter from current URL to redirect location. location += request.url_parts.query.encode("ASCII") response.headers.set(b"Location", location)