Skip to content

Commit

Permalink
AdYouLike Bidder: Handle advertiser domains (#6916)
Browse files Browse the repository at this point in the history
* AdYouLike Bidder: Handle advertiser domains

* fix linting

* update tests

* fix linting

* fix error
  • Loading branch information
ChrisHuie authored Jun 2, 2021
1 parent fbc44aa commit f957aa7
Show file tree
Hide file tree
Showing 2 changed files with 30 additions and 7 deletions.
3 changes: 2 additions & 1 deletion modules/adyoulikeBidAdapter.js
Original file line number Diff line number Diff line change
Expand Up @@ -449,7 +449,8 @@ function createBid(response, bidRequests) {
creativeId: response.CreativeID,
cpm: response.Price,
netRevenue: true,
currency: CURRENCY
currency: CURRENCY,
meta: response.Meta || { advertiserDomains: [] }
};

if (request && request.Native) {
Expand Down
34 changes: 28 additions & 6 deletions test/spec/modules/adyoulikeBidAdapter_spec.js
Original file line number Diff line number Diff line change
Expand Up @@ -290,6 +290,19 @@ describe('Adyoulike Adapter', function () {
'Placement': 'placement_0'
}
];

const testMetaObject = {
'networkId': 123,
'advertiserId': '3',
'advertiserName': 'foobar',
'advertiserDomains': ['foobar.com'],
'brandId': '345',
'brandName': 'Foo',
'primaryCatId': '34',
'secondaryCatIds': ['IAB-222', 'IAB-333'],
'mediaType': 'banner'
};

const admSample = "\u003cscript id=\"ayl-prebid-a11a121205932e75e622af275681965d\"\u003e\n(function(){\n\twindow.isPrebid = true\n\tvar prebidResults = /*PREBID*/{\"OnEvents\":{\"CLICK\":[{\"Kind\":\"PIXEL_URL\",\"Url\":\"https://testPixelCLICK.com/fake\"}],\"IMPRESSION\":[{\"Kind\":\"PIXEL_URL\",\"Url\":\"https://testPixelIMP.com/fake\"},{\"Kind\":\"JAVASCRIPT_URL\",\"Url\":\"https://testJsIMP.com/fake.js\"}]},\"Disabled\":false,\"Attempt\":\"a11a121205932e75e622af275681965d\",\"ApiPrefix\":\"https://fo-api.omnitagjs.com/fo-api\",\"TrackingPrefix\":\"https://tracking.omnitagjs.com/tracking\",\"DynamicPrefix\":\"https://tag-dyn.omnitagjs.com/fo-dyn\",\"StaticPrefix\":\"https://fo-static.omnitagjs.com/fo-static\",\"BlobPrefix\":\"https://fo-api.omnitagjs.com/fo-api/blobs\",\"SspPrefix\":\"https://fo-ssp.omnitagjs.com/fo-ssp\",\"VisitorPrefix\":\"https://visitor.omnitagjs.com/visitor\",\"Trusted\":true,\"Placement\":\"e622af275681965d3095808561a1e510\",\"PlacementAccess\":\"ALL\",\"Site\":\"6e2df7a92203c3c7a25561ed63f25a27\",\"Lang\":\"EN\",\"SiteLogo\":null,\"HasSponsorImage\":false,\"ResizeIframe\":true,\"IntegrationConfig\":{\"Kind\":\"WIDGET\",\"Widget\":{\"ExtraStyleSheet\":\"\",\"Placeholders\":{\"Body\":{\"Color\":{\"R\":77,\"G\":21,\"B\":82,\"A\":100},\"BackgroundColor\":{\"R\":255,\"G\":255,\"B\":255,\"A\":100},\"FontFamily\":\"Lato\",\"Width\":\"100%\",\"Align\":\"\",\"BoxShadow\":true},\"CallToAction\":{\"Color\":{\"R\":26,\"G\":157,\"B\":212,\"A\":100}},\"Description\":{\"Length\":130},\"Image\":{\"Width\":600,\"Height\":600,\"Lowres\":false,\"Raw\":false},\"Size\":{\"Height\":\"250px\",\"Width\":\"300px\"},\"Sponsor\":{\"Color\":{\"R\":35,\"G\":35,\"B\":35,\"A\":100},\"Label\":true,\"WithoutLogo\":false},\"Title\":{\"Color\":{\"R\":219,\"G\":181,\"B\":255,\"A\":100}}},\"Selector\":{\"Kind\":\"CSS\",\"Css\":\"#ayl-prebid-a11a121205932e75e622af275681965d\"},\"Insertion\":\"AFTER\",\"ClickFormat\":true,\"Creative20\":true,\"WidgetKind\":\"CREATIVE_TEMPLATE_4\"}},\"Legal\":\"Sponsored\",\"ForcedCampaign\":\"f1c80d4bb5643c222ae8de75e9b2f991\",\"ForcedTrack\":\"\",\"ForcedCreative\":\"\",\"ForcedSource\":\"\",\"DisplayMode\":\"DEFAULT\",\"Campaign\":\"f1c80d4bb5643c222ae8de75e9b2f991\",\"CampaignAccess\":\"ALL\",\"CampaignKind\":\"AD_TRAFFIC\",\"DataSource\":\"LOCAL\",\"DataSourceUrl\":\"\",\"DataSourceOnEventsIsolated\":false,\"DataSourceWithoutCookie\":false,\"Content\":{\"Preview\":{\"Thumbnail\":{\"Image\":{\"Kind\":\"EXTERNAL\",\"Data\":{\"External\":{\"Url\":\"https://tag-dyn.omnitagjs.com/fo-dyn/native/preview/image?key=fd4362d35bb174d6f1c80d4bb5643c22\\u0026kind=INTERNAL\\u0026ztop=0.000000\\u0026zleft=0.000000\\u0026zwidth=0.333333\\u0026zheight=1.000000\\u0026width=[width]\\u0026height=[height]\"}},\"ZoneTop\":0,\"ZoneLeft\":0,\"ZoneWidth\":1,\"ZoneHeight\":1,\"Smart\":false,\"NoTransform\":false,\"Quality\":\"NORMAL\"}},\"Text\":{\"CALLTOACTION\":\"Click here to learn more\",\"DESCRIPTION\":\"Considérant l'extrémité conjoncturelle, il serait bon d'anticiper toutes les voies de bon sens.\",\"SPONSOR\":\"Tested by\",\"TITLE\":\"Adserver Traffic Redirect Internal\"},\"Sponsor\":{\"Name\":\"QA Team\"},\"Credit\":{\"Logo\":{\"Resource\":{\"Kind\":\"EXTERNAL\",\"Data\":{\"External\":{\"Url\":\"https://fo-static.omnitagjs.com/fo-static/native/images/info-ayl.png\"}},\"ZoneTop\":0,\"ZoneLeft\":0,\"ZoneWidth\":1,\"ZoneHeight\":1,\"Smart\":false,\"NoTransform\":false,\"Quality\":\"NORMAL\"}},\"Url\":\"https://blobs.omnitagjs.com/adchoice/\"}},\"Landing\":{\"Url\":\"https://www.w3.org/People/mimasa/test/xhtml/entities/entities-11.xhtml#lat1\",\"LegacyTracking\":false},\"ViewButtons\":{\"Close\":{\"Skip\":6000}},\"InternalContentFields\":{\"AnimatedImage\":false}},\"AdDomain\":\"adyoulike.com\",\"Opener\":\"REDIRECT\",\"PerformUITriggers\":[\"CLICK\"],\"RedirectionTarget\":\"TAB\"}/*PREBID*/;\n\tvar insertAds = function insertAds() {\insertAds();\n\t}\n})();\n\u003c/script\u003e";
const responseWithSinglePlacement = [
{
Expand All @@ -298,6 +311,7 @@ describe('Adyoulike Adapter', function () {
'Ad': admSample,
'Price': 0.5,
'Height': 600,
'Meta': testMetaObject
}
];

Expand Down Expand Up @@ -365,7 +379,8 @@ describe('Adyoulike Adapter', function () {
privacyLink: 'https://blobs.omnitagjs.com/adchoice/',
sponsoredBy: 'QA Team',
title: 'Adserver Traffic Redirect Internal',
}
},
meta: testMetaObject
}];

const responseWithMultiplePlacements = [
Expand Down Expand Up @@ -617,6 +632,7 @@ describe('Adyoulike Adapter', function () {
expect(result[0].ad).to.equal(admSample);
expect(result[0].width).to.equal(300);
expect(result[0].height).to.equal(600);
expect(result[0].meta).to.deep.equal(testMetaObject);
});

it('receive reponse with multiple placement', function () {
Expand All @@ -636,22 +652,28 @@ describe('Adyoulike Adapter', function () {
expect(result[1].height).to.equal(250);
});

it('receive reponse with Native ad', function () {
serverResponse.body = responseWithSingleNative;
it('receive reponse with Native from ad markup', function () {
serverResponse.body = responseWithSinglePlacement;
let result = spec.interpretResponse(serverResponse, {data: '{"Bids":' + JSON.stringify(sentBidNative) + '}'});

expect(result.length).to.equal(1);

expect(result).to.deep.equal(nativeResult);
});

it('receive reponse with Native from ad markup', function () {
serverResponse.body = responseWithSinglePlacement;
it('receive reponse with Native ad', function () {
serverResponse.body = responseWithSingleNative;
let result = spec.interpretResponse(serverResponse, {data: '{"Bids":' + JSON.stringify(sentBidNative) + '}'});

expect(result.length).to.equal(1);

expect(result).to.deep.equal(nativeResult);
const noMeta = [...nativeResult];
const metaBackup = noMeta[0].meta;

// this test should return default meta object
noMeta[0].meta = { advertiserDomains: [] };

expect(result).to.deep.equal(noMeta);
});
});
});

0 comments on commit f957aa7

Please sign in to comment.