From Fedora Project Wiki

Description

This test case ensures that the bamf and bamf-daemon effectively match and manage application windows.

Setup

  1. Ensure you have a Fedora system.
  2. Install the bamf and bamf-daemon packages: sudo dnf install bamf bamf-daemon.
  3. Start the bamf-daemon: systemctl --user start bamfdaemon.service.

How to test

  1. Open a terminal.
  2. Ensure the daemon is running: sudo systemctl status bamf-daemon.
  3. Launch multiple applications (e.g., Firefox, Terminal, LibreOffice).
  4. List matched applications: bamf-matcher --list-desktop-files.
  5. Check if the launched applications are listed.
  6. Use bamf-matcher to check for a specific application's state: bamf-matcher --for-window=<Window XID>. (Replace <Window XID> with the XID of an application window, which can be obtained using tools like xwininfo).
  7. Verify that it correctly identifies the state and type of the window.
  8. Intentionally close and launch various applications, and periodically check their state using bamf-matcher.

Expected Results

  1. The bamf-daemon should be active and running without any errors.
  2. The bamf-matcher --list-desktop-files should list all opened applications.
  3. The bamf-matcher --for-window should accurately represent the state and type of the specified window.
  4. Closing and launching applications should be accurately reflected when querying with bamf-matcher.

Optional

For deeper testing:

  1. Test bamf and bamf-daemon on multiple desktop environments (e.g., GNOME, KDE, XFCE).
  2. Observe the behavior when rapidly switching, launching, and closing various applications.
  3. Test the integration of bamf with application switchers or launchers.