11 KiB
Functional tests
Regressions:
- https://github.com/microsoft/PowerToys/issues/1414#issuecomment-593529038
- https://github.com/microsoft/PowerToys/issues/1524
Localization
Change the Windows language to a language different than English. Then verify if the following screens change their language:
- System tray menu items
- Settings
- OOBE (What's new)
- Keyboard Manager Editor
- Color Picker (check the tooltips)
- FancyZones Editor
- Power Rename (new WinUI 3 may not be localized)
- PowerToys Run ("Start typing" string is localized, for example)
- Image Resizer
- Shortcut Guide (Windows controls are localized)
- File Explorer menu entries for Image Resizer and Power Rename
- Hosts File Editor
- File Locksmith
File Explorer Add-ons
- Running as user:
- go to PowerToys repo root
- verify the README.md Preview Pane shows the correct content
- go to PowerToys repo and visit src\modules\ShortcutGuide\ShortcutGuide\svgs
- verify Preview Pane works for the SVG files
- 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
- verify Preview Pane works for the PDF file
- 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
- verify Preview Pane works for the gcode file
- 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
- verify the Icon Preview works for the stl file (loop through different icon preview sizes)
- go to PowerToys repo and visit src\runner
- 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
- verify the README.md Preview Pane doesn't show any content
- go to PowerToys repo and visit src\modules\ShortcutGuide\ShortcutGuide\svgs
- 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.
- 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
- verify Preview Pane doesn't show the preview for the PDF file
- go to PowerToys repo and visit src\modules\previewpane\UnitTests-GcodePreviewHandler\HelperFiles
- verify Preview Pane doesn't show the preview for the gcode file
- go to PowerToys repo and visit src\modules\previewpane\UnitTests-StlThumbnailProvider\HelperFiles
- 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
- verify Preview Pane doesn't show the preview for source code files or that it's a default previewer instead of Monaco
Image Resizer
-
Disable the Image Resizer and check that
Resize images
is absent in the context menu -
Enable the Image Resizer and check that
Resize images
is present in the context menu -
Remove one image size and add a custom image size. Open the Image Resize window from the context menu and verify that changes are populated
-
Resize one image
-
Resize multiple images
-
Open the image resizer to resize a
.gif
file and verify the "Gif files with animations may not be correctly resized." warning appears. -
Resize images with
Fill
option -
Resize images with
Fit
option -
Resize images with
Stretch
option -
Resize images using dimension: Centimeters
-
Resize images using dimension: Inches
-
Resize images using dimension: Percents
-
Resize images using dimension: Pixels
-
Change
Filename format
to%1 - %2 - %3 - %4 - %5 - %6
and check if the new format is applied to resized images -
Check
Use original date modified
and verify that modified date is not changed for resized images. Take into account thatResize the original pictures(don't create copy)
should be selected -
Check
Make pictures smaller but not larger
and verify that smaller pictures are not resized -
Check
Resize the original pictures (don't create copies)
and verify that the original picture is resized and a copy is not created -
Uncheck
Ignore the orientation of pictures
and verify that swapped width and height will actually resize a picture if the width is not equal to the height
PowerRename
- Check if disable and enable of the module works.
- Check that with the
Show icon on context menu
icon is shown and vice versa. - Check if
Appear only in extended context menu
works. - Enable/disable autocomplete.
- Enable/disable
Show values from last use
.
- Select several files and folders and check PowerRename options:
- Make Uppercase/Lowercase/Titlecase (could be selected only one at the time)
- Exclude Folders/Files/Subfolder Items (could be selected several)
- Item Name/Extension Only (one at the time)
- Enumerate Items
- Case Sensitive
- Match All Occurrences. If checked, all matches of text in the
Search
field will be replaced with the Replace text. Otherwise, only the first instance of theSearch
for text in the file name will be replaced (left to right).
- Use regular expressions
- Search with an expression (e.g.
(.*).png
) - Replace with an expression (e.g.
foo_$1.png
) - Replace using file creation date and time (e.g.
$hh-$mm-$ss-$fff
$DD_$MMMM_$YYYY
) - Turn on
Use Boost library
and test with Perl Regular Expression Syntax (e.g.(?<=t)est
)
- Search with an expression (e.g.
- File list filters.
- In the
preview
window uncheck some items to exclude them from renaming. - Click on the
Renamed
column to filter results. - Click on the
Original
column to cycle between checked and unchecked items.
- In the
Shortcut Guide
- Run PowerToys as user:
- Verify
Win + Shift + /
opens the guide - Change the hotkey to a different shortcut (e.g.
Win + /
) and verify it works - Set Shortcut Guide to start with a Windows key press and verify it works.
- Verify
- Restore the
Win + Shift + /
hotkey.- Open the guide and close it pressing
Esc
- Open the guide and close it pressing and releasing the
Win
key
- Open the guide and close it pressing
- With PowerToys running as a user, open an elevated app and keep it on foreground:
- Verify
Win + Shift + /
opens the guide - Verify some of the shortcuts shown in the guide work and the guide is closed when pressed
- Verify
Always on Top
- Pin/unpin a window, verify it's topmost/not topmost.
- Pin/unpin a window, verify the border appeared/disappeared.
- Switch virtual desktop, verify border doesn't show up on another desktop.
- Minimize and maximize pinned window, verify the border looks as usual.
- Change border color and thickness.
- Verify if sound is played according to the sound setting.
- Exclude app, try to pin it.
- Exclude already pinned app, verify it was unpinned.
- Try to pin the app in the Game Mode.
Quick Accent
- Enable Quick Accent and open notepad. Then:
- Press
a
and the left or right arrow and verify the accent menu appears and adds the accented letter you've selected. Use left and arrow keys to cycle through the options. - Press
a
and the space key and verify the accent menu appears and adds the accented letter you've selected. Use Space to navigate forward, Space + Shift to navigate backward. - Disable Quick Accent and verify you can no longer add accented characters through Quick Accent.
- Press
- Test the different settings and verify they are applied:
- Activation key
- Language (for example, Currency has no accents for 'a' but has for 's')
- Toolbar position (test every option, some had issues before)
- Input delay
- Exclude some apps. Verify that Quick Accent is not activated for them.
- Sort characters by frequency.
- Always start on the first character when using left/right arrows as activation method.
GPO
- Copy the "PowerToys.admx" file to your Policy Definition template folder. (Example: C:\Windows\PolicyDefinitions) and copy the "PowerToys.adml" file to the matching language folder in your Policy Definition folder. (Example: C:\Windows\PolicyDefinitions\en-US)
- Open the "Local Group Policy Editor" on Windows and verify there is a "Microsoft PowerToys" folder in Administrative Templates for both Computer Configuration and User Configuration.
- In GPO, disable a module that can run as a standalone (FancyZones sounds good for this). Restart PowerToys.
- Verify the module is not enabled.
- Open settings and verify the module is not enabled and you can't enable it.
- Try to open FancyZones Editor directly from the install folder and verify it doesn't run and adds a message to the log saying it didn't run because of GPO.
- Verify the module can't be launched from the quick launcher system tray flyout launcher screen (FancyZones editor in this case).
- Verify the module can't be enabled/disabled from the quick launcher system tray flyout.
- In GPO, enable a module that can run as a standalone (FancyZones sounds good for this). Restart PowerToys.
- Verify the module is enabled.
- Open settings and verify the module is enabled and you can't disable it.
- Verify the module can't be enabled/disabled from the quick launcher system tray flyout.
- In GPO, try to set different settings in the Computer and User Configurations for a PowerToy. Restart PowerToys.
- Verify that the setting in Computer Configuration has priority over the setting in User Configuration.
- In GPO, disable a module that has a context menu entry (File Locksmith sounds good for this). Restart PowerToys.
- Verify the module is not enabled. (No context menu entry)
- Open settings and verify the module is not enabled and you can't enable it.
- Try to open File Locksmith directly from the install folder and verify it doesn't run and adds a message to the log saying it didn't run because of GPO.
- In GPO, disable a module that is a Preview Handler (Markdown Preview is good for this). Restart PowerToys.
- Verify the module is not enabled. (Markdown files won't appear in the preview pane)
- Open settings and verify the module is not enabled and you can't enable it.
- Remember to reset all you Settings to Not Configured after the tests, both in Conputer and User Configurations.