-
Notifications
You must be signed in to change notification settings - Fork 18
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Feat: Test cases for Notification test tool #187
Merged
Merged
Changes from 2 commits
Commits
Show all changes
4 commits
Select commit
Hold shift + click to select a range
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,85 @@ | ||
--- | ||
# (Required) Ensure all values are filled up | ||
name: "MAC OS | User can generate test notification from a browser and verify on the Desktop and Mobile app" | ||
status: Active | ||
priority: Normal | ||
folder: Notification Test Tool | ||
authors: "@yasserfaraazkhan" | ||
team_ownership: | ||
- ICU | ||
priority_p1_to_p4: P2 - Core Functions (Do core functions work?) | ||
|
||
# (Optional) | ||
location: null | ||
component: null | ||
tags: [] | ||
labels: [] | ||
tested_by_contributor: '' | ||
|
||
# (Optional) Test type and tools | ||
cypress: N/A | ||
detox: N/A | ||
mmctl: N/A | ||
playwright: N/A | ||
rainforest: [] | ||
manual_test_environments: [] | ||
|
||
# Do not change | ||
id: null | ||
key: null | ||
created_on: null | ||
last_updated: null | ||
case_hashed: null | ||
steps_hashed: null | ||
--- | ||
|
||
**Step 1** | ||
|
||
Prerequisite: | ||
|
||
1. Log in to Browser, Mobile and desktop using 1 user account. | ||
|
||
### Scenario 1: User can generate notification successfully from Chrome/Safari/Firefox and verifies it on Desktop and Mobile app. | ||
|
||
1. Log into server using any browser. | ||
2. Enable browser notification to be received for this server. | ||
3. Go to the Settings > Notification. | ||
4. Click on `Send a test notification`. | ||
5. Verify the browser pop up the notification from @system-bot. | ||
6. Verify the DM list has an unread message from @system-bot. | ||
7. Verify the Desktop pop-up is also visible in the notification center. | ||
8. Look into mobile app notification section. | ||
9. Verify the DM notification from @system-bot is received. | ||
|
||
### Scenario 2: User should not receive notification when the system is in **Focus mode**. | ||
|
||
1. Log into server using any browser. | ||
2. Enable browser notification to be received for this server. | ||
3. Go to the Settings > Notification. | ||
4. Click on `Send a test notification`. | ||
5. Verify the notification is not received on the Browser and Desktop. | ||
6. Verify the notification is received on the mobile app. | ||
|
||
### Scenario 3: User can customize notification permissions at the system level (Mac OS). | ||
|
||
1. Log into the Mattermost desktop app. | ||
2. Open System Preferences > Notifications on macOS. | ||
3. Set Mattermost notifications to Allow. | ||
4. In the Mattermost app, go to Settings > Notifications. | ||
5. Click on Send a test notification. | ||
6. Verify a system pop-up notification is visible. | ||
7. Verify the notification is also available in the macOS Notification Center. | ||
8. Change Mattermost notification settings in macOS to Do Not Disturb. | ||
9. Click Send a test notification again. | ||
10. Verify no notification pop-up is visible on browser and desktop app. | ||
|
||
### Scenario 4: Browser notifications are disabled (Mac OS). | ||
|
||
1. Open Chrome or Safari. | ||
2. Log into the server. | ||
3. Ensure browser notification permissions for Mattermost are disabled. | ||
4. Go to Settings > Notifications in Mattermost. | ||
5. Click Send a test notification. | ||
6. Verify no notification is received in the browser or system. | ||
7. Enable notifications via Browser Settings > Privacy and Security > Notifications. | ||
8. Test again to ensure the browser pop-up appears. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,58 @@ | ||
--- | ||
# (Required) Ensure all values are filled up | ||
name: "WIN OS | User can generate test notification from a browser and verify on the Desktop and Mobile app" | ||
status: Active | ||
priority: Normal | ||
folder: Notification Test Tool | ||
authors: "@yasserfaraazkhan" | ||
team_ownership: | ||
- ICU | ||
priority_p1_to_p4: P2 - Core Functions (Do core functions work?) | ||
|
||
# (Optional) | ||
location: null | ||
component: null | ||
tags: [] | ||
labels: [] | ||
tested_by_contributor: '' | ||
|
||
# (Optional) Test type and tools | ||
cypress: N/A | ||
detox: N/A | ||
mmctl: N/A | ||
playwright: N/A | ||
rainforest: [] | ||
manual_test_environments: [] | ||
|
||
# Do not change | ||
id: null | ||
key: null | ||
created_on: null | ||
last_updated: null | ||
case_hashed: null | ||
steps_hashed: null | ||
--- | ||
|
||
**Step 1** | ||
|
||
Prerequisite: | ||
|
||
1. Log in to Browser, Mobile and desktop using 1 user account. | ||
|
||
### Scenario 5: System-level notifications (Windows 10/11). | ||
|
||
1. Log into the Mattermost desktop app. | ||
2. Go to Settings > Notifications in Mattermost and enable notifications. | ||
3. Open Settings > System > Notifications in Windows. | ||
4. Ensure notifications for Mattermost are enabled. | ||
5. Click Send a test notification. | ||
6. Verify the notification appears in the Windows Action Center. | ||
7. Disable Mattermost notifications in Windows system settings and test again to ensure no notification is shown. | ||
|
||
### Scenario 6: Focus Assist (Windows). | ||
|
||
1. Log into the server on the desktop app or a browser. | ||
2. Enable Focus Assist in Windows settings. | ||
3. Go to Settings > Notifications in Mattermost. | ||
4. Click Send a test notification. | ||
5. Verify that the desktop app does not show notifications during Focus Assist mode but receives them when it is disabled. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,58 @@ | ||
--- | ||
# (Required) Ensure all values are filled up | ||
name: "LINUX OS | User can generate test notification from a browser and verify on the Desktop and Mobile app" | ||
status: Active | ||
priority: Normal | ||
folder: Notification Test Tool | ||
authors: "@yasserfaraazkhan" | ||
team_ownership: | ||
- ICU | ||
priority_p1_to_p4: P2 - Core Functions (Do core functions work?) | ||
|
||
# (Optional) | ||
location: null | ||
component: null | ||
tags: [] | ||
labels: [] | ||
tested_by_contributor: '' | ||
|
||
# (Optional) Test type and tools | ||
cypress: N/A | ||
detox: N/A | ||
mmctl: N/A | ||
playwright: N/A | ||
rainforest: [] | ||
manual_test_environments: [] | ||
|
||
# Do not change | ||
id: null | ||
key: null | ||
created_on: null | ||
last_updated: null | ||
case_hashed: null | ||
steps_hashed: null | ||
--- | ||
|
||
**Step 1** | ||
|
||
Prerequisite: | ||
|
||
1. Log in to Browser, Mobile and desktop using 1 user account. | ||
|
||
### Scenario 1: System notifications via GNOME/KDE (Ubuntu). | ||
|
||
1. Log into the Mattermost desktop app on Ubuntu. | ||
2. Ensure system notification settings allow Mattermost. | ||
3. In Mattermost, go to Settings > Notifications. | ||
4. Click Send a test notification. | ||
5. Verify the notification appears in the GNOME or KDE notification area. | ||
6. Disable notifications in Ubuntu settings and retest to ensure the notification is not displayed. | ||
|
||
### Scenario 2: Browser notifications in Firefox (Ubuntu). | ||
|
||
1. Open Firefox on Ubuntu and log into the server. | ||
2. Disable browser notifications for Mattermost. | ||
3. Go to Settings > Notifications in Mattermost. | ||
4. Click Send a test notification. | ||
5. Verify that no notification is received in Firefox or the system. | ||
6. Re-enable notifications in Firefox and verify a pop-up appears when tested again. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,69 @@ | ||
--- | ||
# (Required) Ensure all values are filled up | ||
name: "iOS app | User can generate test notification from mobile app and verify on the Browser and Desktop and Mobile app" | ||
status: Active | ||
priority: Normal | ||
folder: Notification Test Tool | ||
authors: "@yasserfaraazkhan" | ||
team_ownership: | ||
- ICU | ||
priority_p1_to_p4: P2 - Core Functions (Do core functions work?) | ||
|
||
# (Optional) | ||
location: null | ||
component: null | ||
tags: [] | ||
labels: [] | ||
tested_by_contributor: '' | ||
|
||
# (Optional) Test type and tools | ||
cypress: N/A | ||
detox: N/A | ||
mmctl: N/A | ||
playwright: N/A | ||
rainforest: [] | ||
manual_test_environments: [] | ||
|
||
# Do not change | ||
id: null | ||
key: null | ||
created_on: null | ||
last_updated: null | ||
case_hashed: null | ||
steps_hashed: null | ||
--- | ||
|
||
**Step 1** | ||
|
||
Prerequisite: | ||
|
||
1. Log in to Browser, Mobile and desktop using 1 user account. | ||
|
||
### Scenario 1: Notifications generated from iOS app and verified on Desktop and Web Browser. | ||
|
||
Initial Setup: | ||
|
||
1. Log into the Mattermost mobile app on iOS. | ||
2. Log into the same user account on the desktop (macOS/Windows/Ubuntu) and a web browser (Chrome/Safari/Firefox). | ||
3. Ensure notifications are allowed on all devices. | ||
|
||
Steps: | ||
|
||
1. In the iOS app, go to Settings > Notifications. | ||
2. Enable in-app notifications and system-level notifications. | ||
3. Send a message from the iOS app (e.g., DM or mention @user in a channel). | ||
4. Verify the following: | ||
- A notification pop-up is received on the desktop. | ||
- A notification is visible in the browser. | ||
- The DM or mention is shown as unread in the desktop app and browser. | ||
5. Disable notifications in the iOS Settings > Notifications for the Mattermost app. | ||
6. Send a test notification again from the mobile app. | ||
7. Verify no notifications are received on the iOS app, but they still appear in the desktop app and browser. | ||
|
||
### Scenario 2: iOS Notification Permissions Disabled at the OS Level. | ||
|
||
1. In iOS Settings > Notifications, disable notifications for Mattermost. | ||
2. In the mobile app, go to Settings > Notifications and send a test notification. | ||
3. Verify that no notifications are received on the iOS app. | ||
4. Verify notifications are still received on the desktop app and browser. | ||
5. Enable notifications again in iOS Settings > Notifications and retest to verify that notifications work as expected across all devices. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,80 @@ | ||
--- | ||
# (Required) Ensure all values are filled up | ||
name: "Android app | User can generate test notification from mobile app and verify on the Browser and Desktop and Mobile app" | ||
status: Active | ||
priority: Normal | ||
folder: Notification Test Tool | ||
authors: "@yasserfaraazkhan" | ||
team_ownership: | ||
- ICU | ||
priority_p1_to_p4: P2 - Core Functions (Do core functions work?) | ||
|
||
# (Optional) | ||
location: null | ||
component: null | ||
tags: [] | ||
labels: [] | ||
tested_by_contributor: '' | ||
|
||
# (Optional) Test type and tools | ||
cypress: N/A | ||
detox: N/A | ||
mmctl: N/A | ||
playwright: N/A | ||
rainforest: [] | ||
manual_test_environments: [] | ||
|
||
# Do not change | ||
id: null | ||
key: null | ||
created_on: null | ||
last_updated: null | ||
case_hashed: null | ||
steps_hashed: null | ||
--- | ||
|
||
**Step 1** | ||
|
||
Prerequisite: | ||
|
||
1. Log in to Browser, Mobile and desktop using 1 user account. | ||
|
||
### Scenario 1: Notifications generated from iOS app and verified on Desktop and Web Browser. | ||
|
||
Initial Setup: | ||
|
||
1. Log into the Mattermost mobile app on iOS. | ||
2. Log into the same user account on the desktop (macOS/Windows/Ubuntu) and a web browser (Chrome/Safari/Firefox). | ||
3. Ensure notifications are allowed on all devices. | ||
|
||
Steps: | ||
|
||
1. In the Android app, go to Settings > Notifications. | ||
2. Enable both in-app notifications and system-level notifications. | ||
3. Send a message from the Android app (e.g., DM or mention @user). | ||
4. Verify the following: | ||
- A notification pop-up is received on the desktop app. | ||
- A notification is visible in the web browser. | ||
- The DM or mention is marked as unread on both desktop and web browser. | ||
5. Disable notifications in the Android OS for Mattermost. | ||
6. Send a test notification again from the mobile app. | ||
7. Verify no notifications are received on the Android app, but they still appear in the desktop app and browser. | ||
|
||
### Scenario 2: Android Notification Permissions Disabled at the OS Level. | ||
|
||
1. Disable notifications for Mattermost in Android Settings > Apps > Mattermost > Notifications. | ||
2. Send a message or notification from the mobile app (e.g., mention or DM). | ||
3. Verify that no notifications are received on the Android app. | ||
4. Verify notifications are still received on the desktop app and browser. | ||
5. Enable notifications again in Android settings and retest to confirm all notifications are functioning. | ||
|
||
### Scenario 3: Notifications are limited by Do Not Disturb (DND) mode on mobile apps (iOS and Android). | ||
|
||
Initial Setup: | ||
Log into Mattermost on iOS and Android apps, and the desktop app. | ||
Steps: | ||
Enable Do Not Disturb mode in iOS and Android OS settings. | ||
In the Mattermost mobile app, send a notification (mention or DM). | ||
Verify that no notifications are received on the mobile apps. | ||
Verify that notifications are still received on the desktop app. | ||
Disable DND mode on mobile apps and retest to ensure notifications are received. |
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
But should be visible in mobile app correct?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes.
I'll add a step to verify this.