refactor(tests): Update bootstrap.js
to better support generator chunks
#7171
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The basics
npm run format
andnpm run lint
The details
Resolves
There are some issues with how
tests/bootstrap.js
loads modules in compiled and uncompiled mode:goog.module
IDs loaded in uncompressed mode vs. the compiled chunk file names loaded in compressed mode.goog.require('Blockly.JavaScript.all')
to load the whole chunk via it's official entry point, but then dovar {javascriptGenerator} = goog.module.get('Blockly.JavaScript')
to get thejavascriptGenerator
object, since it is exported from bothBlockly.JavaScript
andBlockly.JavaScript.all
. This prevents certain desirable refactorings of the generator modules.Proposed Changes
Refactor
bootstrap.js
andbootstrap_helper.js
to be able to deal with generator chunks. In particular for each chunk, specify:goog.module
ID togoog.require()
in uncompressed mode.This allows the bootstrap scripts to be slightly simpler while also being more flexible.
Test Coverage
npm test
.No special manual testing changes required: any additional problems will become abundantly clear!