Skip to content

Commit f7b7533

Browse files
committed
chore(test): make e2e tests use the bundles.
After this change, only web_worker thread in its e2e test is not using the bundles. Closes angular#4565
1 parent f7aa890 commit f7b7533

File tree

5 files changed

+72
-36
lines changed

5 files changed

+72
-36
lines changed

gulpfile.js

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1123,11 +1123,11 @@ gulp.task('!bundle.copy', [
11231123
'!bundle.web_worker.js.dev.deps',
11241124
'!bundle.js.sfx.dev.deps',
11251125
'!router.bundle.js.dev'
1126-
], function () {
1127-
return merge2(
1128-
gulp.src('dist/js/bundle/*').pipe(gulp.dest('dist/js/prod/es5/bundle')),
1129-
gulp.src('dist/js/bundle/*').pipe(gulp.dest('dist/js/dev/es5/bundle')));
1130-
});
1126+
],
1127+
function() {
1128+
return merge2(gulp.src('dist/js/bundle/**').pipe(gulp.dest('dist/js/prod/es5/bundle')),
1129+
gulp.src('dist/js/bundle/**').pipe(gulp.dest('dist/js/dev/es5/bundle')));
1130+
});
11311131

11321132
gulp.task('bundles.js', [
11331133
'!bundle.js.prod.deps',
Lines changed: 18 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,23 @@
1-
<script src="es6-shim.js" type="text/javascript"></script>
2-
<script src="zone-microtask.js" type="text/javascript"></script>
3-
<script src="long-stack-trace-zone.js" type="text/javascript"></script>
4-
<script src="system.src.js" type="text/javascript"></script>
5-
<script src="Reflect.js" type="text/javascript"></script>
6-
<script type="text/javascript">
7-
var filename = '@@FILENAME_NO_EXT';
1+
<script src="es6-shim.js"></script>
2+
<script src="system.src.js"></script>
3+
<script>
84
System.config({
95
baseURL: '/',
10-
defaultJSExtensions: true
6+
packages: {
7+
'angular2_material': {defaultExtension: 'js'},
8+
'benchmarks': {defaultExtension: 'js'},
9+
'examples': {defaultExtension: 'js'},
10+
// TODO(rado): These helpers don't end up in the bundle, thus they should
11+
// not even be in src/*. Move them!
12+
'angular2/src/test_lib/benchmark_util': {defaultExtension: 'js'},
13+
'angular2/src/core/facade/browser': {defaultExtension: 'js'},
14+
}
1115
});
16+
</script>
17+
<script src="/bundle/angular2.dev.js"></script>
18+
<script src="/bundle/http.js"></script>
19+
<script src="/bundle/router.dev.js"></script>
20+
<script>
21+
var filename = '@@PATH/@@FILENAME';
1222
System.import(filename).then(function(m) { m.main(); }, console.error.bind(console));
1323
</script>
Lines changed: 17 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,22 @@
1-
<script src="es6-shim.js" type="text/javascript"></script>
2-
<script src="zone-microtask.js" type="text/javascript"></script>
3-
<script src="long-stack-trace-zone.js" type="text/javascript"></script>
4-
<script src="url_params_to_form.js" type="text/javascript"></script>
5-
<script src="system.src.js" type="text/javascript"></script>
6-
<script src="Reflect.js" type="text/javascript"></script>
7-
<script type="text/javascript">
8-
var filename = '@@FILENAME_NO_EXT';
1+
<script src="es6-shim.js"></script>
2+
<script src="url_params_to_form.js"></script>
3+
<script src="system.src.js"></script>
4+
<script>
95
System.config({
106
baseURL: '/',
11-
defaultJSExtensions: true
7+
packages: {
8+
'angular2_material': {defaultExtension: 'js'},
9+
'benchmarks': {defaultExtension: 'js'},
10+
'examples': {defaultExtension: 'js'},
11+
// TODO(rado): These helpers don't end up in the bundle, thus they should
12+
// not even be in src/*. Move them!
13+
'angular2/src/test_lib/benchmark_util': {defaultExtension: 'js'},
14+
'angular2/src/core/facade/browser': {defaultExtension: 'js'},
15+
}
1216
});
17+
</script>
18+
<script src="/bundle/angular2.dev.js"></script>
19+
<script>
20+
var filename = '@@PATH/@@FILENAME';
1321
System.import(filename).then(function(m) { m.main(); }, console.error.bind(console));
1422
</script>
Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,14 @@
1-
<script src="es6-shim.js" type="text/javascript"></script>
2-
<script src="zone-microtask.js" type="text/javascript"></script>
3-
<script src="long-stack-trace-zone.js" type="text/javascript"></script>
4-
<script src="angular.js" type="text/javascript"></script>
5-
<script src="url_params_to_form.js" type="text/javascript"></script>
6-
<script src="system.src.js" type="text/javascript"></script>
7-
<script src="Reflect.js" type="text/javascript"></script>
8-
<script type="text/javascript">
9-
var filename = '@@FILENAME_NO_EXT';
1+
<script src="es6-shim.js"></script>
2+
<script src="zone-microtask.js"></script>
3+
<script src="long-stack-trace-zone.js"></script>
4+
<script src="angular.js"></script>
5+
<script src="url_params_to_form.js"></script>
6+
<script src="system.src.js"></script>
7+
<script>
108
System.config({
119
baseURL: '/',
1210
defaultJSExtensions: true
1311
});
12+
var filename = '@@PATH/@@FILENAME';
1413
System.import(filename).then(function(m) { m.main(); }, console.error.bind(console));
1514
</script>

tools/broccoli/trees/browser_tree.ts

Lines changed: 24 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -90,9 +90,18 @@ module.exports = function makeBrowserTree(options, destinationPath) {
9090
});
9191

9292
var scriptPathPatternReplacement = {
93-
match: '@@FILENAME_NO_EXT',
93+
match: '@@PATH',
9494
replacement: function(replacement, relativePath) {
95-
return relativePath.replace(/\.\w+$/, '').replace(/\\/g, '/');
95+
var parts = relativePath.replace(/\\/g, '/').split('/');
96+
return parts.splice(0, parts.length - 1).join('/');
97+
}
98+
};
99+
100+
var scriptFilePatternReplacement = {
101+
match: '@@FILENAME',
102+
replacement: function(replacement, relativePath) {
103+
var parts = relativePath.replace(/\\/g, '/').split('/');
104+
return parts[parts.length - 1].replace('html', 'js');
96105
}
97106
};
98107

@@ -171,7 +180,8 @@ module.exports = function makeBrowserTree(options, destinationPath) {
171180
files: ['examples*/**/*.html'],
172181
patterns: [
173182
{match: /\$SCRIPTS\$/, replacement: htmlReplace('SCRIPTS')},
174-
scriptPathPatternReplacement
183+
scriptPathPatternReplacement,
184+
scriptFilePatternReplacement
175185
]
176186
});
177187

@@ -180,18 +190,27 @@ module.exports = function makeBrowserTree(options, destinationPath) {
180190
files: ['benchmarks/**'],
181191
patterns: [
182192
{match: /\$SCRIPTS\$/, replacement: htmlReplace('SCRIPTS_benchmarks')},
183-
scriptPathPatternReplacement
193+
scriptPathPatternReplacement,
194+
scriptFilePatternReplacement
184195
]
185196
});
186197

187198
htmlTree = replace(htmlTree, {
188199
files: ['benchmarks_external/**'],
189200
patterns: [
190201
{match: /\$SCRIPTS\$/, replacement: htmlReplace('SCRIPTS_benchmarks_external')},
191-
scriptPathPatternReplacement
202+
scriptPathPatternReplacement,
203+
scriptFilePatternReplacement
192204
]
193205
});
194206

207+
// We need to replace the regular angular bundle with the web-worker bundle
208+
// for web-worker e2e tests.
209+
htmlTree = replace(htmlTree, {
210+
files: ['examples*/**/web_workers/**/*.html'],
211+
patterns: [{match: "/bundle/angular2.dev.js", replacement: "/bundle/web_worker/ui.dev.js"}]
212+
});
213+
195214
var assetsTree =
196215
new Funnel(modulesTree, {include: ['**/*'], exclude: ['**/*.{html,ts,dart}'], destDir: '/'});
197216

0 commit comments

Comments
 (0)