@smapiot/piral-cli-integration-tests v1.0.0
Piral CLI Acceptance Tests
Integration tests for the piral-cli tool and its default bundler. Can be used as a test bench when implementing a new bundler, too.
Status
| OS | Node | Status |
|---|---|---|
| Linux | 16.x | |
| Linux | 20.x | |
| Linux | 21.x | |
| Windows | 16.x | |
| Windows | 20.x | |
| MacOS | 16.x | |
| MacOS | 20.x |
Important Links
- π’ We are hiring! - work with us on Piral, its ecosystem and our users
- π Website - learn more about Piral
- π Documentation - everything to get started and master micro frontends
- π Help translating Piral! - making PRs in the documentation branch
- π Issue Tracker - report bugs or suggest new features
- π¨ Forums - use the community support on StackOverflow
- πͺ Community Chat - ask questions and provide answers in our Gitter room
Running the Tests
After you cloned the repository run:
npm ior an alternative command using your favorite package manager.
Now you can try running all tests:
npm startYou can also run the tests from a specific file only:
npm start -- src/pilet-build.test.tsIf you are only interested in a single test (e.g., 'can build a standard templated v2 pilet from sample-piral') then run it via:
npm start -- src/pilet-build.test.ts -t 'can build a standard templated v2 pilet from sample-piral'Caution: Tests that leverage the integrated browser (using the page variable) can only be run if the whole test suite (i.e., no -t is specified) is run.
For Ubuntu 18.04 and higher the system dependencies can get installed automatically. Many other systems may just work without any special dependencies:
npx playwright install-deps chromiumTo ensure everything is working with the test browser we recommend also installing the browsers from Playwright via the command line:
npx playwright install chromiumTesting Package
The tests are also available as a drop-in package to test bundler plugins. You can install it with:
npm i @smapiot/piral-cli-integration-testsThen run the tests using
npx piral-cli-tests <your-bundler-name>If you don't specify the bundler name then the current working directory's package.json will be used to infer it.
Tests
Piral
- β Scaffold Piral instance
- β Run/debug Piral instance
- β Build Piral instance release
- β Build Piral instance emulator
- β Build Piral instance emulator sources
- β Generate Piral instance declaration
- β Validate Piral instance
- β Use Piral instance emulator for scaffolding locally
- β Change Piral instance while debugging (HMR)
- β Upgrade Piral instance from older (0.12.0 -> ENV) to recent version
- β
Check Piral instance with debugging API (e.g., for
piral-inspector)
Pilet
- β
Scaffold pilet (using
sample-piral) - β Run/debug new pilet
- β
Build
mfpilet - β
Build
v3pilet - β
Build
v2pilet - β
Build
v1pilet - β
Build
v0pilet - β Build standalone pilet
- β Build pilet manifest file
- β Publish pilet (to temp. feed)
- β Validate pilet
- β Change pilet while debugging (reinject pilet)
- βΈοΈ Upgrade pilet from older
sample-piralto current - β
Check pilet with debugging API (e.g., for
piral-inspector)
The publish pilet command uses:
pilet publish --api-key {key} --url https://feed.piral.cloud/api/v1/pilet/temp --freshIt also can perform against a feed hosted by the sample-pilet-service.
Enviroment variables
| ENV | Description | Default |
|---|---|---|
CLI_VERSION | Version of the piral-cli package | latest |
BUNDLER_PLUGIN | The name of the bundler to use | |
BUNDLER_FEATURES | The features of the bundler plugin | all |
Available features:
codegen, can handle*.codegenfilessplitting, can handleimport()calls with a new JS side-bundlepilet.v0, supports thev0schemapilet.v1, supports thev1schemapilet.v2, supports thev2schemapilet.v3, supports thev3schemapilet.mf, supports themfschemaimportmap.ref, supports usage of an importmapimportmap.local, supports local creation of importmap side-bundlesbuild.pilet, supports building a piletbuild.piral, supports building a Piral instancedebug.pilet, supports debugging a piletdebug.piral, supports debugging a Piral instancehmr, supports hot module reloading (for Piral instances)
License
Piral is released using the MIT license. For more information see the license file.
2 years ago
2 years ago
2 years ago
2 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
