Manual Tests
This folder contains files used for performing manual tests that are non-trivial to automate.
Plugins page on small screens
Use a cluster with several plugins, including one with different running and installed versions and one with a web load error. Compare the Plugins page at 390px and 1440px viewport widths, and check the 768px breakpoint.
- On phones, check that each row shows its name, versions, machine counts, status and update action vertically, without clipping or breaking ordinary words.
- Check that a long plugin name wraps and the header branding stays on one line.
- Search and sort by name, reload, and check that the selected filter and sort order remain applied.
- Open an update or restart checklist, then cancel it; update actions must not navigate to the plugin page.
- Open a plugin by its name and by clicking elsewhere in its row.
- Open the account menu using the user icon on mobile; the full account name should appear in the menu.
- On desktop, check that the name, versions and update action remain separate columns.
Setup test mod
Run node packages/lib/dist/node/build_mod.js --source-dir test/manual/test_mod/ --output-dir mods/ to create the test mod.
Test handling of bad setting values
-
Create a ModPack with missmatched values with
node test/manual/test_settings_mod_pack.jsand import it. -
Run a data export on an instance with the mod pack assigned, the values will get coerced to the correct types.
-
Use ctl to set the settings back to their wrong values:
SETTING_TYPES=(bool-setting int-setting double-setting string-setting color-setting) VALUE_TYPES=(bool int double string color missing) VALUES=( --bool-setting false --int-setting 1 --double-setting 0.5 --string-setting str --color-setting '{"r":0,"g":1,"b":0,"a":1}' --remove-setting ) node packages/ctl mod-pack edit test-settings $( for TYPE in "${SETTING_TYPES[@]}" ; do for (( I = 0; I < ${#VALUE_TYPES[@]}; I++ )); do printf "%s startup %s-with-%s-value %s " ${VALUES[((I * 2))]} $TYPE ${VALUE_TYPES[I]} ${VALUES[((I * 2 + 1))]} done done ) -
Verify that the Web UI gracefully handles all combinations of wrong settings types.