Skip to content

Commit a751cc7

Browse files
AdSense Fast Fetch delay 3 viewport experiment - respect loading strategy (ampproject#20866)
* initial commit * modify dep-check * truly fix dep issue
1 parent 806db59 commit a751cc7

3 files changed

Lines changed: 14 additions & 2 deletions

File tree

build-system/dep-check-config.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -235,6 +235,7 @@ exports.rules = [
235235
'extensions/amp-ad/0.1/amp-ad-xorigin-iframe-handler.js->extensions/amp-ad-network-adsense-impl/0.1/adsense-a4a-config.js',
236236

237237
// Ads needs concurrent loading
238+
'extensions/amp-ad-network-adsense-impl/0.1/amp-ad-network-adsense-impl.js->extensions/amp-ad/0.1/concurrent-load.js',
238239
'extensions/amp-ad-network-doubleclick-impl/0.1/amp-ad-network-doubleclick-impl.js->extensions/amp-ad/0.1/concurrent-load.js',
239240
'extensions/amp-a4a/0.1/amp-a4a.js->extensions/amp-ad/0.1/concurrent-load.js',
240241

extensions/amp-ad-network-adsense-impl/0.1/amp-ad-network-adsense-impl.js

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,7 @@ import {domFingerprintPlain} from '../../../src/utils/dom-fingerprint';
6262
import {
6363
getAdSenseAmpAutoAdsResponsiveExperimentBranch,
6464
} from '../../../ads/google/adsense-amp-auto-ads-responsive';
65+
import {getAmpAdRenderOutsideViewport} from '../../amp-ad/0.1/concurrent-load';
6566
import {getDefaultBootstrapBaseUrl} from '../../../src/3p-frame';
6667
import {
6768
getExperimentBranch,
@@ -235,8 +236,10 @@ export class AmpAdNetworkAdsenseImpl extends AmpA4A {
235236

236237
/** @override */
237238
delayAdRequestEnabled() {
238-
return getExperimentBranch(
239-
this.win, DELAY_NUMBER_EXP) == '21063207' ? 3 : true;
239+
if (getExperimentBranch(this.win, DELAY_NUMBER_EXP) != '21063207') {
240+
return true;
241+
}
242+
return getAmpAdRenderOutsideViewport(this.element) || 3;
240243
}
241244

242245
/** @override */

extensions/amp-ad-network-adsense-impl/0.1/test/test-amp-ad-network-adsense-impl.js

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -981,6 +981,14 @@ describes.realWin('amp-ad-network-adsense-impl', {
981981
impl.divertExperiments();
982982
expect(impl.delayAdRequestEnabled()).to.equal(3);
983983
});
984+
985+
it('should respect loading strategy in experiment', () => {
986+
impl.element.setAttribute(
987+
'data-loading-strategy', 'prefer-viewability-over-views');
988+
forceExperimentBranch(impl.win, 'adsense-ff-number-delay', '21063207');
989+
impl.divertExperiments();
990+
expect(impl.delayAdRequestEnabled()).to.equal(1.25);
991+
});
984992
});
985993

986994
describe('#preconnect', () => {

0 commit comments

Comments
 (0)