## Install tests * install a **previous version** on a clean machine (a clean machine doesn't have the `%localappdata%\Microsoft\PowerToys` folder) * open the Settings and for each module change at least one option * open the FancyZones editor and create two custom layouts: * a canvas layout with 2 zones, use unicode chars in the layout's name * one from grid template using 4 zones and splitting one zone * apply the custom canvas layout to the primary desktop * create a virtual desktop and apply the custom grid layout * if you have a second monitor apply different templates layouts for the primary desktop and for the second virtual desktop * install the new version (it will uninstall the old version and install the new version) - [x] verify the settings are preserved and FancyZones configuration is still the same ## General Settings **Admin mode:** - [x] restart PT and verify it runs as user - [x] restart as admin and set "Always run as admin" - [x] restart PT and verify it runs as admin * if it's not on, turn on "Run at startup" - [x] reboot the machine and verify PT runs as admin (it should not prompt the UAC dialog) * turn Always run as admin" off - [x] reboot the machine and verify it now runs as user **Modules on/off:** - [x] turn off all the modules and verify all module are off - [x] restart PT and verify that all module are still off in the settings page and they are actually inactive - [x] turn on all the module, all module are now working - [x] restart PT and verify that all module are still on in the settings page and they are actually working ## FancyZones Editor - [x] Open editor from the settings - [x] Open editor with a shortcut - [x] Create a new layout (grid and canvas) - [x] Duplicate a template and a custom layout - [x] Delete layout - [x] Edit templates (number of zones, spacing, distance to highlight adjacent zones). Verify after reopening the editor that saved settings are kept the same. - [x] Edit canvas layout: zones size and position, create or delete zones. - [x] Edit grid layout: split, merge, resize zones. - [x] Check `Save and apply` and `Cancel` buttons behavior after editing. - [x] Assign a layout to each monitor. - [x] Assign keys to quickly switch layouts (custom layouts only), `Win + Ctrl + Alt + number`. - [x] Test duplicate layout focus * Select any layout X in 'Templates' or 'Custom' section by click left mouse button * Mouse right button click on any layout Y in 'Templates' or 'Custom' sections * Duplicate it by clicking 'Create custom layout' (Templates section) or 'Duplicate' in 'Custom' section * Expect the layout Y is duplicated ## FancyZones - [x] Switch between `Allow zones to span across monitors` on and off. Verify that layouts are applied correctly in both cases. - [x] Change zone colors and opacity. - [x] Exclude some apps, verify that they're not applicable to a zone. - [x] Launch PT in user mode, try to assign a window with administrator privileges to a zone. Verify the notification is shown. - [x] Launch PT in administrator mode, assign a window with administrator privileges. - [x] Create virtual desktop, verify that there are the same layouts as applied to the previous virtual desktop. - [x] After creating a virtual desktop apply another layout or edit the applied one. Verify that the other virtual desktop layout wasn't changed. - [x] Delete an applied custom layout in the Editor, verify that there is no layout applied instead of it. * Open `Task view` , right-click on the window, check the `Show this window on all desktops` or the `Show windows from this app on all desktops` option to turn it on. - [x] Turn Show this window on all desktops on, verify you can snap this window to a zone. - [x] Turn Show windows from this app on all desktops on, verify you can snap this window to a zone. * Switch between layouts with quick keys. - [x] Switch with `Win` + `Ctrl` + `Alt` + `key` - [x] Switch with just a key while dragging a window. * Change screen resolution or scaling. - [x] Assign grid layout, verify that the assigned layout fits the screen. NOTE: canvas layout could not fit the screen if it was created on a monitor with a different resolution. - [x] Disable FZ - [x] Re-enable FZ, verify that everything is in the same state as it was before disabling. * Test layout resetting. Before testing * Remove all virtual desktops * Remove `CurrentVirtualDesktop` from `\HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\SessionInfo\1\VirtualDesktops` * Remove `VirtualDesktopIDs` from `\HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\VirtualDesktops` - [x] Test screen locking * Set custom layouts on each monitor * Lock screen / unplug monitor / plug monitor * Verify that layouts weren't reset to defaults - [x] Test restart * Set custom layouts on each monitor * Restart the computer * Verify that layouts weren't reset to defaults ## File Explorer Add-ons * Running as user: * go to PowerToys repo root - [x] verify the README.md Preview Pane shows the correct content * go to PowerToys repo and visit src\modules\ShortcutGuide\ShortcutGuide\svgs - [x] verify Preview Pane works for the SVG files - [x] verify the Icon Preview works for the SVG file (loop through different icon preview sizes) * go to PowerToys repo and visit src\modules\previewpane\UnitTests-PdfPreviewHandler\HelperFiles - [x] verify Preview Pane works for the PDF file - [x] verify the Icon Preview works for the PDF file (loop through different icon preview sizes) * go to PowerToys repo and visit src\modules\previewpane\UnitTests-GcodePreviewHandler\HelperFiles - [x] verify Preview Pane works for the gcode file - [x] verify the Icon Preview works for the gcode file (loop through different icon preview sizes) * go to PowerToys repo and visit src\modules\previewpane\UnitTests-StlThumbnailProvider\HelperFiles - [x] verify the Icon Preview works for the stl file (loop through different icon preview sizes) * go to PowerToys repo and visit src\runner - [x] verify Preview Pane works for source files (shows syntax highlighting) * Running as admin (or user since recently): * open the Settings and turn off the Preview Pane and Icon Previous toggles * go to PowerToys repo root - [x] verify the README.md Preview Pane doesn't show any content * go to PowerToys repo and visit src\modules\ShortcutGuide\ShortcutGuide\svgs - [x] verify Preview Pane doesn't show the preview for the SVG files * the Icon Preview for the existing SVG will still show since the icons are cached (you can also use `cleanmgr.exe` to clean all thumbnails cached in your system). You may need to restart the machine for this setting to apply as well. - [x] copy and paste one of the SVG file and verify the new file show the generic SVG icon * go to PowerToys repo and visit src\modules\previewpane\UnitTests-PdfPreviewHandler\HelperFiles - [x] verify Preview Pane doesn't show the preview for the PDF file * go to PowerToys repo and visit src\modules\previewpane\UnitTests-GcodePreviewHandler\HelperFiles - [x] verify Preview Pane doesn't show the preview for the gcode file * go to PowerToys repo and visit src\modules\previewpane\UnitTests-StlThumbnailProvider\HelperFiles - [x] verify Preview Pane doesn't show the preview for the stl file (a generated thumbnail would show when there's no preview) * go to PowerToys repo and visit src\runner - [x] verify Preview Pane doesn't show the preview for source code files or that it's a default previewer instead of Monaco ## Awake - [x] Try out the features and see if they work, no list at this time. ### Text Extractor * Enable Text Extractor. Then: - [x] Press the activation shortcut and verify the overlay appears. - [x] Press Escape and verify the overlay disappears. - [x] Press the activation shortcut and verify the overlay appears. - [x] Right-click and select Cancel. Verify the overlay disappears. - [x] Disable Text Extractor and verify that the activation shortuct no longer activates the utility. * With Text Extractor enabled and activated: - [x] Try to select text and verify it is copied to the clipboard. * In a multi-monitor setup with different dpis on each monitor: - [x] Verify text is correctly captured on all monitors. * Test the different settings and verify they are applied: - [x] Activation shortcut