prebid.js 6.0.0 → 6.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.babelrc.js +1 -7
- package/.circleci/config.yml +1 -1
- package/README.md +1 -1
- package/browsers.json +13 -29
- package/gulpfile.js +88 -82
- package/integrationExamples/gpt/weboramaRtdProvider_example.html +23 -14
- package/karma.conf.maker.js +2 -2
- package/modules/33acrossBidAdapter.js +189 -102
- package/modules/adagioBidAdapter.js +1 -1
- package/modules/addefendBidAdapter.js +1 -0
- package/modules/adheseBidAdapter.js +7 -2
- package/modules/adkernelBidAdapter.js +147 -61
- package/modules/adlivetechBidAdapter.md +61 -0
- package/modules/adlooxAdServerVideo.js +2 -2
- package/modules/adlooxAnalyticsAdapter.js +4 -4
- package/modules/admanBidAdapter.js +1 -0
- package/modules/admixerBidAdapter.js +3 -2
- package/modules/adnuntiusBidAdapter.js +5 -2
- package/modules/adomikAnalyticsAdapter.js +16 -4
- package/modules/adplusBidAdapter.js +203 -0
- package/modules/adplusBidAdapter.md +39 -0
- package/modules/adxcgBidAdapter.js +311 -359
- package/modules/adxcgBidAdapter.md +22 -21
- package/modules/adyoulikeBidAdapter.js +7 -2
- package/modules/aniviewBidAdapter.js +1 -1
- package/modules/appnexusBidAdapter.js +23 -3
- package/modules/beachfrontBidAdapter.js +14 -17
- package/modules/beopBidAdapter.js +6 -4
- package/modules/bidViewability.js +3 -3
- package/modules/bidViewabilityIO.js +3 -3
- package/modules/codefuelBidAdapter.js +1 -3
- package/modules/codefuelBidAdapter.md +3 -3
- package/modules/colossussspBidAdapter.js +7 -0
- package/modules/compassBidAdapter.js +201 -0
- package/modules/compassBidAdapter.md +79 -0
- package/modules/craftBidAdapter.js +5 -3
- package/modules/criteoBidAdapter.js +1 -1
- package/modules/currency.js +2 -2
- package/modules/cwireBidAdapter.js +3 -0
- package/modules/dailyhuntBidAdapter.js +435 -0
- package/modules/dailyhuntBidAdapter.md +4 -0
- package/modules/datablocksBidAdapter.js +3 -3
- package/modules/dchain.js +149 -0
- package/modules/dchain.md +45 -0
- package/modules/deepintentBidAdapter.js +1 -1
- package/modules/dspxBidAdapter.js +1 -1
- package/modules/emx_digitalBidAdapter.js +9 -1
- package/modules/engageyaBidAdapter.js +68 -54
- package/modules/feedadBidAdapter.js +2 -2
- package/modules/feedadBidAdapter.md +4 -2
- package/modules/freewheel-sspBidAdapter.js +6 -0
- package/modules/futureads.md +48 -0
- package/modules/glimpseBidAdapter.js +44 -16
- package/modules/goldbachBidAdapter.js +1176 -0
- package/modules/goldbachBidAdapter.md +151 -0
- package/modules/gptPreAuction.js +11 -5
- package/modules/gridBidAdapter.js +5 -4
- package/modules/gumgumBidAdapter.js +7 -3
- package/modules/id5IdSystem.md +6 -6
- package/modules/imRtdProvider.js +31 -0
- package/modules/improvedigitalBidAdapter.js +19 -3
- package/modules/instreamTracking.js +4 -4
- package/modules/intersectionRtdProvider.js +114 -0
- package/modules/invibesBidAdapter.js +64 -14
- package/modules/invibesBidAdapter.md +2 -1
- package/modules/ipromBidAdapter.js +79 -0
- package/modules/ixBidAdapter.js +185 -22
- package/modules/kinessoIdSystem.js +1 -1
- package/modules/limelightDigitalBidAdapter.js +2 -1
- package/modules/livewrappedBidAdapter.js +8 -2
- package/modules/lotamePanoramaIdSystem.js +80 -8
- package/modules/luponmediaBidAdapter.js +570 -0
- package/modules/mediasquareBidAdapter.js +1 -9
- package/modules/merkleIdSystem.js +5 -0
- package/modules/missenaBidAdapter.js +89 -0
- package/modules/nativoBidAdapter.js +27 -1
- package/modules/nextMillenniumBidAdapter.js +37 -7
- package/modules/oguryBidAdapter.js +2 -1
- package/modules/openxBidAdapter.js +6 -1
- package/modules/prebidServerBidAdapter/index.js +19 -15
- package/modules/pubgeniusBidAdapter.js +1 -1
- package/modules/pubmaticBidAdapter.js +5 -3
- package/modules/pubxaiAnalyticsAdapter.js +17 -0
- package/modules/relaidoBidAdapter.js +86 -65
- package/modules/richaudienceBidAdapter.js +2 -3
- package/modules/rtdModule/index.js +48 -18
- package/modules/rubiconBidAdapter.js +31 -19
- package/modules/saambaaBidAdapter.js +420 -0
- package/modules/saambaaBidAdapter.md +65 -68
- package/modules/seedtagBidAdapter.js +6 -0
- package/modules/sharedIdSystem.js +27 -1
- package/modules/smaatoBidAdapter.js +9 -1
- package/modules/smartxBidAdapter.js +17 -1
- package/modules/sspBCBidAdapter.js +34 -3
- package/modules/tappxBidAdapter.js +3 -1
- package/modules/targetVideoBidAdapter.js +187 -0
- package/modules/targetVideoBidAdapter.md +34 -0
- package/modules/telariaBidAdapter.js +2 -2
- package/modules/trustxBidAdapter.js +18 -17
- package/modules/undertoneBidAdapter.js +8 -1
- package/modules/userId/index.js +27 -2
- package/modules/ventes.md +71 -0
- package/modules/ventesBidAdapter.js +104 -64
- package/modules/ventesBidAdapter.md +0 -1
- package/modules/vidoomyBidAdapter.js +65 -108
- package/modules/visxBidAdapter.js +20 -3
- package/modules/visxBidAdapter.md +4 -6
- package/modules/weboramaRtdProvider.js +288 -73
- package/modules/weboramaRtdProvider.md +27 -10
- package/modules/yahoosspBidAdapter.js +5 -1
- package/modules/yahoosspBidAdapter.md +1 -1
- package/modules/yieldlabBidAdapter.js +41 -10
- package/modules/yieldlabBidAdapter.md +91 -48
- package/modules/yieldoneBidAdapter.js +115 -11
- package/modules/zetaSspBidAdapter.md +33 -1
- package/modules/zeta_global_sspBidAdapter.js +22 -1
- package/package.json +6 -1
- package/plugins/pbjsGlobals.js +28 -1
- package/src/adapterManager.js +14 -8
- package/src/auction.js +5 -4
- package/src/prebid.js +1 -2
- package/src/targeting.js +24 -3
- package/src/utils.js +41 -7
- package/test/helpers/prebidGlobal.js +1 -0
- package/test/spec/integration/faker/googletag.js +6 -0
- package/test/spec/modules/33acrossBidAdapter_spec.js +300 -78
- package/test/spec/modules/adheseBidAdapter_spec.js +27 -1
- package/test/spec/modules/adlooxAnalyticsAdapter_spec.js +6 -6
- package/test/spec/modules/adnuntiusBidAdapter_spec.js +35 -0
- package/test/spec/modules/adomikAnalyticsAdapter_spec.js +9 -1
- package/test/spec/modules/adplusBidAdapter_spec.js +213 -0
- package/test/spec/modules/adxcgBidAdapter_spec.js +820 -571
- package/test/spec/modules/adyoulikeBidAdapter_spec.js +26 -0
- package/test/spec/modules/appnexusBidAdapter_spec.js +63 -1
- package/test/spec/modules/beachfrontBidAdapter_spec.js +65 -1
- package/test/spec/modules/beopBidAdapter_spec.js +1 -1
- package/test/spec/modules/bidViewabilityIO_spec.js +2 -2
- package/test/spec/modules/bidViewability_spec.js +4 -4
- package/test/spec/modules/codefuelBidAdapter_spec.js +1 -1
- package/test/spec/modules/colossussspBidAdapter_spec.js +9 -0
- package/test/spec/modules/compassBidAdapter_spec.js +397 -0
- package/test/spec/modules/cwireBidAdapter_spec.js +10 -8
- package/test/spec/modules/dailyhuntBidAdapter_spec.js +404 -0
- package/test/spec/modules/datablocksBidAdapter_spec.js +3 -3
- package/test/spec/modules/dchain_spec.js +329 -0
- package/test/spec/modules/emx_digitalBidAdapter_spec.js +10 -0
- package/test/spec/modules/engageyaBidAdapter_spec.js +231 -95
- package/test/spec/modules/eplanningBidAdapter_spec.js +8 -8
- package/test/spec/modules/feedadBidAdapter_spec.js +15 -0
- package/test/spec/modules/freewheel-sspBidAdapter_spec.js +19 -0
- package/test/spec/modules/glimpseBidAdapter_spec.js +33 -0
- package/test/spec/modules/goldbachBidAdapter_spec.js +1359 -0
- package/test/spec/modules/gptPreAuction_spec.js +58 -4
- package/test/spec/modules/gumgumBidAdapter_spec.js +6 -0
- package/test/spec/modules/imRtdProvider_spec.js +25 -0
- package/test/spec/modules/improvedigitalBidAdapter_spec.js +3 -1
- package/test/spec/modules/intersectionRtdProvider_spec.js +141 -0
- package/test/spec/modules/invibesBidAdapter_spec.js +148 -4
- package/test/spec/modules/ipromBidAdapter_spec.js +195 -0
- package/test/spec/modules/ixBidAdapter_spec.js +293 -2
- package/test/spec/modules/konduitWrapper_spec.js +0 -1
- package/test/spec/modules/limelightDigitalBidAdapter_spec.js +10 -7
- package/test/spec/modules/livewrappedBidAdapter_spec.js +31 -0
- package/test/spec/modules/lotamePanoramaIdSystem_spec.js +227 -0
- package/test/spec/modules/luponmediaBidAdapter_spec.js +412 -0
- package/test/spec/modules/mediasquareBidAdapter_spec.js +4 -4
- package/test/spec/modules/merkleIdSystem_spec.js +18 -0
- package/test/spec/modules/missenaBidAdapter_spec.js +134 -0
- package/test/spec/modules/nativoBidAdapter_spec.js +35 -18
- package/test/spec/modules/nextMillenniumBidAdapter_spec.js +26 -1
- package/test/spec/modules/oguryBidAdapter_spec.js +13 -11
- package/test/spec/modules/openxBidAdapter_spec.js +5 -0
- package/test/spec/modules/prebidServerBidAdapter_spec.js +62 -2
- package/test/spec/modules/pubgeniusBidAdapter_spec.js +3 -3
- package/test/spec/modules/pubmaticBidAdapter_spec.js +1 -1
- package/test/spec/modules/pubxaiAnalyticsAdapter_spec.js +11 -0
- package/test/spec/modules/realTimeDataModule_spec.js +135 -49
- package/test/spec/modules/relaidoBidAdapter_spec.js +71 -63
- package/test/spec/modules/richaudienceBidAdapter_spec.js +2 -2
- package/test/spec/modules/rubiconBidAdapter_spec.js +65 -9
- package/test/spec/modules/seedtagBidAdapter_spec.js +3 -0
- package/test/spec/modules/sharedIdSystem_spec.js +52 -6
- package/test/spec/modules/smaatoBidAdapter_spec.js +61 -0
- package/test/spec/modules/smartxBidAdapter_spec.js +9 -0
- package/test/spec/modules/sspBCBidAdapter_spec.js +33 -3
- package/test/spec/modules/tappxBidAdapter_spec.js +4 -0
- package/test/spec/modules/targetVideoBidAdapter_spec.js +96 -0
- package/test/spec/modules/trustxBidAdapter_spec.js +42 -0
- package/test/spec/modules/userId_spec.js +51 -0
- package/test/spec/modules/vidoomyBidAdapter_spec.js +32 -13
- package/test/spec/modules/visxBidAdapter_spec.js +121 -5
- package/test/spec/modules/weboramaRtdProvider_spec.js +408 -214
- package/test/spec/modules/yahoosspBidAdapter_spec.js +28 -1
- package/test/spec/modules/yieldlabBidAdapter_spec.js +81 -0
- package/test/spec/modules/yieldoneBidAdapter_spec.js +299 -53
- package/test/spec/modules/zeta_global_sspBidAdapter_spec.js +33 -1
- package/test/spec/unit/core/adapterManager_spec.js +24 -6
- package/test/spec/unit/core/targeting_spec.js +116 -0
- package/test/spec/utils_spec.js +38 -0
- package/test/test_deps.js +3 -0
- package/test/test_index.js +1 -3
package/.babelrc.js
CHANGED
package/.circleci/config.yml
CHANGED
package/README.md
CHANGED
|
@@ -274,7 +274,7 @@ As you make code changes, the bundles will be rebuilt and the page reloaded auto
|
|
|
274
274
|
|
|
275
275
|
## Contribute
|
|
276
276
|
|
|
277
|
-
Many SSPs, bidders, and publishers have contributed to this project. [Hundreds of bidders](https://github.com/prebid/Prebid.js/tree/master/
|
|
277
|
+
Many SSPs, bidders, and publishers have contributed to this project. [Hundreds of bidders](https://github.com/prebid/Prebid.js/tree/master/modules) are supported by Prebid.js.
|
|
278
278
|
|
|
279
279
|
For guidelines, see [Contributing](./CONTRIBUTING.md).
|
|
280
280
|
|
package/browsers.json
CHANGED
|
@@ -1,65 +1,49 @@
|
|
|
1
1
|
{
|
|
2
|
-
"
|
|
2
|
+
"bs_edge_latest_windows_10": {
|
|
3
3
|
"base": "BrowserStack",
|
|
4
4
|
"os_version": "10",
|
|
5
5
|
"browser": "edge",
|
|
6
|
-
"browser_version": "
|
|
6
|
+
"browser_version": "latest",
|
|
7
7
|
"device": null,
|
|
8
8
|
"os": "Windows"
|
|
9
9
|
},
|
|
10
|
-
"
|
|
11
|
-
"base": "BrowserStack",
|
|
12
|
-
"os_version": "10",
|
|
13
|
-
"browser": "edge",
|
|
14
|
-
"browser_version": "90.0",
|
|
15
|
-
"device": null,
|
|
16
|
-
"os": "Windows"
|
|
17
|
-
},
|
|
18
|
-
"bs_chrome_90_windows_10": {
|
|
10
|
+
"bs_chrome_latest_windows_10": {
|
|
19
11
|
"base": "BrowserStack",
|
|
20
12
|
"os_version": "10",
|
|
21
13
|
"browser": "chrome",
|
|
22
|
-
"browser_version": "
|
|
14
|
+
"browser_version": "latest",
|
|
23
15
|
"device": null,
|
|
24
16
|
"os": "Windows"
|
|
25
17
|
},
|
|
26
|
-
"
|
|
18
|
+
"bs_chrome_87_windows_10": {
|
|
27
19
|
"base": "BrowserStack",
|
|
28
20
|
"os_version": "10",
|
|
29
21
|
"browser": "chrome",
|
|
30
|
-
"browser_version": "
|
|
31
|
-
"device": null,
|
|
32
|
-
"os": "Windows"
|
|
33
|
-
},
|
|
34
|
-
"bs_firefox_88_windows_10": {
|
|
35
|
-
"base": "BrowserStack",
|
|
36
|
-
"os_version": "10",
|
|
37
|
-
"browser": "firefox",
|
|
38
|
-
"browser_version": "88.0",
|
|
22
|
+
"browser_version": "87.0",
|
|
39
23
|
"device": null,
|
|
40
24
|
"os": "Windows"
|
|
41
25
|
},
|
|
42
|
-
"
|
|
26
|
+
"bs_firefox_latest_windows_10": {
|
|
43
27
|
"base": "BrowserStack",
|
|
44
28
|
"os_version": "10",
|
|
45
29
|
"browser": "firefox",
|
|
46
|
-
"browser_version": "
|
|
30
|
+
"browser_version": "latest",
|
|
47
31
|
"device": null,
|
|
48
32
|
"os": "Windows"
|
|
49
33
|
},
|
|
50
|
-
"
|
|
34
|
+
"bs_safari_latest_mac_bigsur": {
|
|
51
35
|
"base": "BrowserStack",
|
|
52
36
|
"os_version": "Big Sur",
|
|
53
37
|
"browser": "safari",
|
|
54
|
-
"browser_version": "
|
|
38
|
+
"browser_version": "latest",
|
|
55
39
|
"device": null,
|
|
56
40
|
"os": "OS X"
|
|
57
41
|
},
|
|
58
|
-
"
|
|
42
|
+
"bs_safari_15_catalina": {
|
|
59
43
|
"base": "BrowserStack",
|
|
60
|
-
"os_version": "
|
|
44
|
+
"os_version": "Catalina",
|
|
61
45
|
"browser": "safari",
|
|
62
|
-
"browser_version": "
|
|
46
|
+
"browser_version": "13.1",
|
|
63
47
|
"device": null,
|
|
64
48
|
"os": "OS X"
|
|
65
49
|
}
|
package/gulpfile.js
CHANGED
|
@@ -76,6 +76,7 @@ function lint(done) {
|
|
|
76
76
|
'modules/**/*.js',
|
|
77
77
|
'test/**/*.js',
|
|
78
78
|
'plugins/**/*.js',
|
|
79
|
+
'!plugins/**/node_modules/**',
|
|
79
80
|
'./*.js'
|
|
80
81
|
], { base: './' })
|
|
81
82
|
.pipe(gulpif(argv.nolintfix, eslint(), eslint({ fix: true })))
|
|
@@ -114,38 +115,6 @@ function viewReview(done) {
|
|
|
114
115
|
|
|
115
116
|
viewReview.displayName = 'view-review';
|
|
116
117
|
|
|
117
|
-
// Watch Task with Live Reload
|
|
118
|
-
function watch(done) {
|
|
119
|
-
var mainWatcher = gulp.watch([
|
|
120
|
-
'src/**/*.js',
|
|
121
|
-
'modules/**/*.js',
|
|
122
|
-
'test/spec/**/*.js',
|
|
123
|
-
'!test/spec/loaders/**/*.js'
|
|
124
|
-
]);
|
|
125
|
-
var loaderWatcher = gulp.watch([
|
|
126
|
-
'loaders/**/*.js',
|
|
127
|
-
'test/spec/loaders/**/*.js'
|
|
128
|
-
]);
|
|
129
|
-
|
|
130
|
-
connect.server({
|
|
131
|
-
https: argv.https,
|
|
132
|
-
port: port,
|
|
133
|
-
host: FAKE_SERVER_HOST,
|
|
134
|
-
root: './',
|
|
135
|
-
livereload: true
|
|
136
|
-
});
|
|
137
|
-
|
|
138
|
-
mainWatcher.on('all', gulp.series(clean, gulp.parallel(lint, 'build-bundle-dev', test)));
|
|
139
|
-
loaderWatcher.on('all', gulp.series(lint));
|
|
140
|
-
done();
|
|
141
|
-
};
|
|
142
|
-
|
|
143
|
-
function makeModuleList(modules) {
|
|
144
|
-
return modules.map(module => {
|
|
145
|
-
return '"' + module + '"'
|
|
146
|
-
});
|
|
147
|
-
}
|
|
148
|
-
|
|
149
118
|
function makeDevpackPkg() {
|
|
150
119
|
var cloned = _.cloneDeep(webpackConfig);
|
|
151
120
|
cloned.devtool = 'source-map';
|
|
@@ -157,7 +126,6 @@ function makeDevpackPkg() {
|
|
|
157
126
|
return gulp.src([].concat(moduleSources, analyticsSources, 'src/prebid.js'))
|
|
158
127
|
.pipe(helpers.nameModules(externalModules))
|
|
159
128
|
.pipe(webpackStream(cloned, webpack))
|
|
160
|
-
.pipe(replace(/('|")v\$prebid\.modulesList\$('|")/g, makeModuleList(externalModules)))
|
|
161
129
|
.pipe(gulp.dest('build/dev'))
|
|
162
130
|
.pipe(connect.reload());
|
|
163
131
|
}
|
|
@@ -175,7 +143,6 @@ function makeWebpackPkg() {
|
|
|
175
143
|
.pipe(helpers.nameModules(externalModules))
|
|
176
144
|
.pipe(webpackStream(cloned, webpack))
|
|
177
145
|
.pipe(terser())
|
|
178
|
-
.pipe(replace(/('|")v\$prebid\.modulesList\$('|")/g, makeModuleList(externalModules)))
|
|
179
146
|
.pipe(gulpif(file => file.basename === 'prebid-core.js', header(banner, { prebid: prebid })))
|
|
180
147
|
.pipe(gulp.dest('build/dist'));
|
|
181
148
|
}
|
|
@@ -254,60 +221,68 @@ function bundle(dev, moduleArr) {
|
|
|
254
221
|
// If --browsers is given, browsers can be chosen explicitly. e.g. --browsers=chrome,firefox,ie9
|
|
255
222
|
// If --notest is given, it will immediately skip the test task (useful for developing changes with `gulp serve --notest`)
|
|
256
223
|
|
|
257
|
-
function
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
}
|
|
261
|
-
let wdioCmd = path.join(__dirname, 'node_modules/.bin/wdio');
|
|
262
|
-
let wdioConf = path.join(__dirname, 'wdio.conf.js');
|
|
263
|
-
let wdioOpts;
|
|
264
|
-
|
|
265
|
-
if (argv.file) {
|
|
266
|
-
wdioOpts = [
|
|
267
|
-
wdioConf,
|
|
268
|
-
`--spec`,
|
|
269
|
-
`${argv.file}`
|
|
270
|
-
]
|
|
271
|
-
} else {
|
|
272
|
-
wdioOpts = [
|
|
273
|
-
wdioConf
|
|
274
|
-
];
|
|
275
|
-
}
|
|
224
|
+
function testTaskMaker(options = {}) {
|
|
225
|
+
['watch', 'e2e', 'file', 'browserstack', 'notest'].forEach(opt => {
|
|
226
|
+
options[opt] = options[opt] || argv[opt];
|
|
227
|
+
})
|
|
276
228
|
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
229
|
+
return function test(done) {
|
|
230
|
+
if (options.notest) {
|
|
231
|
+
done();
|
|
232
|
+
} else if (options.e2e) {
|
|
233
|
+
let wdioCmd = path.join(__dirname, 'node_modules/.bin/wdio');
|
|
234
|
+
let wdioConf = path.join(__dirname, 'wdio.conf.js');
|
|
235
|
+
let wdioOpts;
|
|
236
|
+
|
|
237
|
+
if (options.file) {
|
|
238
|
+
wdioOpts = [
|
|
239
|
+
wdioConf,
|
|
240
|
+
`--spec`,
|
|
241
|
+
`${options.file}`
|
|
242
|
+
]
|
|
243
|
+
} else {
|
|
244
|
+
wdioOpts = [
|
|
245
|
+
wdioConf
|
|
246
|
+
];
|
|
247
|
+
}
|
|
285
248
|
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
.catch(err => {
|
|
294
|
-
// kill fake server
|
|
295
|
-
fakeServer.kill('SIGINT');
|
|
296
|
-
done(new Error(`Tests failed with error: ${err}`));
|
|
297
|
-
process.exit(1);
|
|
249
|
+
// run fake-server
|
|
250
|
+
const fakeServer = spawn('node', ['./test/fake-server/index.js', `--port=${FAKE_SERVER_PORT}`]);
|
|
251
|
+
fakeServer.stdout.on('data', (data) => {
|
|
252
|
+
console.log(`stdout: ${data}`);
|
|
253
|
+
});
|
|
254
|
+
fakeServer.stderr.on('data', (data) => {
|
|
255
|
+
console.log(`stderr: ${data}`);
|
|
298
256
|
});
|
|
299
|
-
} else {
|
|
300
|
-
var karmaConf = karmaConfMaker(false, argv.browserstack, argv.watch, argv.file);
|
|
301
257
|
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
258
|
+
execa(wdioCmd, wdioOpts, { stdio: 'inherit' })
|
|
259
|
+
.then(stdout => {
|
|
260
|
+
// kill fake server
|
|
261
|
+
fakeServer.kill('SIGINT');
|
|
262
|
+
done();
|
|
263
|
+
process.exit(0);
|
|
264
|
+
})
|
|
265
|
+
.catch(err => {
|
|
266
|
+
// kill fake server
|
|
267
|
+
fakeServer.kill('SIGINT');
|
|
268
|
+
done(new Error(`Tests failed with error: ${err}`));
|
|
269
|
+
process.exit(1);
|
|
270
|
+
});
|
|
271
|
+
} else {
|
|
272
|
+
var karmaConf = karmaConfMaker(false, options.browserstack, options.watch, options.file);
|
|
306
273
|
|
|
307
|
-
|
|
274
|
+
var browserOverride = helpers.parseBrowserArgs(argv);
|
|
275
|
+
if (browserOverride.length > 0) {
|
|
276
|
+
karmaConf.browsers = browserOverride;
|
|
277
|
+
}
|
|
278
|
+
|
|
279
|
+
new KarmaServer(karmaConf, newKarmaCallback(done)).start();
|
|
280
|
+
}
|
|
308
281
|
}
|
|
309
282
|
}
|
|
310
283
|
|
|
284
|
+
const test = testTaskMaker();
|
|
285
|
+
|
|
311
286
|
function newKarmaCallback(done) {
|
|
312
287
|
return function (exitCode) {
|
|
313
288
|
if (exitCode) {
|
|
@@ -384,6 +359,35 @@ function startFakeServer() {
|
|
|
384
359
|
});
|
|
385
360
|
}
|
|
386
361
|
|
|
362
|
+
// Watch Task with Live Reload
|
|
363
|
+
function watchTaskMaker(options = {}) {
|
|
364
|
+
if (options.livereload == null) {
|
|
365
|
+
options.livereload = true;
|
|
366
|
+
}
|
|
367
|
+
options.alsoWatch = options.alsoWatch || [];
|
|
368
|
+
|
|
369
|
+
return function watch(done) {
|
|
370
|
+
var mainWatcher = gulp.watch([
|
|
371
|
+
'src/**/*.js',
|
|
372
|
+
'modules/**/*.js',
|
|
373
|
+
].concat(options.alsoWatch));
|
|
374
|
+
|
|
375
|
+
connect.server({
|
|
376
|
+
https: argv.https,
|
|
377
|
+
port: port,
|
|
378
|
+
host: FAKE_SERVER_HOST,
|
|
379
|
+
root: './',
|
|
380
|
+
livereload: options.livereload
|
|
381
|
+
});
|
|
382
|
+
|
|
383
|
+
mainWatcher.on('all', options.task());
|
|
384
|
+
done();
|
|
385
|
+
}
|
|
386
|
+
}
|
|
387
|
+
|
|
388
|
+
const watch = watchTaskMaker({alsoWatch: ['test/**/*.js'], task: () => gulp.series(clean, gulp.parallel(lint, 'build-bundle-dev', test))});
|
|
389
|
+
const watchFast = watchTaskMaker({livereload: false, task: () => gulp.series('build-bundle-dev')});
|
|
390
|
+
|
|
387
391
|
// support tasks
|
|
388
392
|
gulp.task(lint);
|
|
389
393
|
gulp.task(watch);
|
|
@@ -396,7 +400,8 @@ gulp.task('build-bundle-dev', gulp.series(makeDevpackPkg, gulpBundle.bind(null,
|
|
|
396
400
|
gulp.task('build-bundle-prod', gulp.series(makeWebpackPkg, gulpBundle.bind(null, false)));
|
|
397
401
|
|
|
398
402
|
// public tasks (dependencies are needed for each task since they can be ran on their own)
|
|
399
|
-
gulp.task('test',
|
|
403
|
+
gulp.task('test-only', test);
|
|
404
|
+
gulp.task('test', gulp.series(clean, lint, 'test-only'));
|
|
400
405
|
|
|
401
406
|
gulp.task('test-coverage', gulp.series(clean, testCoverage));
|
|
402
407
|
gulp.task(viewCoverage);
|
|
@@ -407,7 +412,8 @@ gulp.task('build', gulp.series(clean, 'build-bundle-prod'));
|
|
|
407
412
|
gulp.task('build-postbid', gulp.series(escapePostbidConfig, buildPostbid));
|
|
408
413
|
|
|
409
414
|
gulp.task('serve', gulp.series(clean, lint, gulp.parallel('build-bundle-dev', watch, test)));
|
|
410
|
-
gulp.task('serve-fast', gulp.series(clean, gulp.parallel('build-bundle-dev',
|
|
415
|
+
gulp.task('serve-fast', gulp.series(clean, gulp.parallel('build-bundle-dev', watchFast)));
|
|
416
|
+
gulp.task('serve-and-test', gulp.series(clean, gulp.parallel('build-bundle-dev', watchFast, testTaskMaker({watch: true}))));
|
|
411
417
|
gulp.task('serve-fake', gulp.series(clean, gulp.parallel('build-bundle-dev', watch), injectFakeServerEndpointDev, test, startFakeServer));
|
|
412
418
|
|
|
413
419
|
gulp.task('default', gulp.series(clean, makeWebpackPkg));
|
|
@@ -17,22 +17,31 @@
|
|
|
17
17
|
debug: true,
|
|
18
18
|
realTimeData: {
|
|
19
19
|
auctionDelay: 1000,
|
|
20
|
-
dataProviders: [
|
|
21
|
-
{
|
|
20
|
+
dataProviders: [{
|
|
22
21
|
name: "weborama",
|
|
23
22
|
waitForIt: true,
|
|
24
23
|
params: {
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
24
|
+
weboCtxConf: {
|
|
25
|
+
token: "to-be-defined", // mandatory
|
|
26
|
+
targetURL: "https://prebid.org", // default is document.URL
|
|
27
|
+
setPrebidTargeting: true, // default
|
|
28
|
+
sendToBidders: true, // default
|
|
29
|
+
defaultProfile: { // optional
|
|
30
|
+
webo_ctx: ['moon'],
|
|
31
|
+
webo_ds: ['bar']
|
|
32
|
+
}
|
|
33
|
+
},
|
|
34
|
+
weboUserDataConf: {
|
|
35
|
+
setPrebidTargeting: true, // default
|
|
36
|
+
sendToBidders: true, // default
|
|
37
|
+
defaultProfile: { // optional
|
|
38
|
+
webo_cs: ['Red'],
|
|
39
|
+
webo_audiences: ['bam']
|
|
40
|
+
},
|
|
41
|
+
localStorageProfileKey: 'webo_wam2gam_entry' // default
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
}]
|
|
36
45
|
}
|
|
37
46
|
});
|
|
38
47
|
});
|
|
@@ -54,7 +63,7 @@
|
|
|
54
63
|
}
|
|
55
64
|
},
|
|
56
65
|
bids: [{
|
|
57
|
-
bidder: '
|
|
66
|
+
bidder: 'smartadserver',
|
|
58
67
|
params: {
|
|
59
68
|
placementId: 1
|
|
60
69
|
}
|
package/karma.conf.maker.js
CHANGED
|
@@ -111,7 +111,7 @@ module.exports = function(codeCoverage, browserstack, watchMode, file) {
|
|
|
111
111
|
var webpackConfig = newWebpackConfig(codeCoverage);
|
|
112
112
|
var plugins = newPluginsArray(browserstack);
|
|
113
113
|
|
|
114
|
-
var files = file ? ['test/
|
|
114
|
+
var files = file ? ['test/test_deps.js', file] : ['test/test_index.js'];
|
|
115
115
|
// This file opens the /debug.html tab automatically.
|
|
116
116
|
// It has no real value unless you're running --watch, and intend to do some debugging in the browser.
|
|
117
117
|
if (watchMode) {
|
|
@@ -166,7 +166,7 @@ module.exports = function(codeCoverage, browserstack, watchMode, file) {
|
|
|
166
166
|
browserNoActivityTimeout: 3e5, // default 10000
|
|
167
167
|
captureTimeout: 3e5, // default 60000,
|
|
168
168
|
browserDisconnectTolerance: 3,
|
|
169
|
-
concurrency:
|
|
169
|
+
concurrency: 6,
|
|
170
170
|
|
|
171
171
|
plugins: plugins
|
|
172
172
|
}
|