-
Notifications
You must be signed in to change notification settings - Fork 0
Description
Feature: As a user I want to communicate with other users so that we may organize and have fun.
Scenario: The user wishes to communicate to all other connected users.
- Given the user is staff,
- When the user attempts to broadcast a message to all connected users,
- Then all connected users receive the message.
- When the user attempts to broadcast a message to all connected users,
- Given the user is not staff,
- When the user attempts to broadcast a message to all connected users,
- Then the user receives a generic 'command not found' error message.
- And the request fails.
- When the user attempts to broadcast a message to all connected users,
Scenario: The user wants to communicate to all other connected users within the user's location.
- Given the sender is
muted,- When the sender attempts to communicate the sender's location,
- Then the sender is reminded that they are
mutedand may not do so. - And the action fails.
- Then the sender is reminded that they are
- When the sender attempts to communicate the sender's location,
- Given the sender is
deaf,- When the sender attempts to communicate to the sender's location,
- Then the sender is reminded that they are
deaf, and will not hear any response. - And all connected users within the sender's location who are not set
deafwill receive the communication. - And connected users within the sender's location who are set
deafwill not receive the communication. - And connected users not within the sender's location will not receive the communication.
- Then the sender is reminded that they are
- When the sender attempts to communicate to the sender's location,
- Given the sender is
dark,- When the sender attempts to communicate to a location,
- Then all connected users within the location who are
staffand notdeafwill receive the communication with identifying its source. - And all connected users within the location who are not
staffand notdeafwill receive the communication without identifying its source. - And connected users within the sender's location who are set
deafwill not receive the communication. - And connected users not within the sender's location will not receive the communication.
- Then all connected users within the location who are
- When the sender attempts to communicate to a location,
- Given the sender is neither
mutenordeaf,- When the sender attempts to communicate to a location,
- Then the sender is not reminded that they are
deaf. - And all connected users within the location who are not
deafwill receive the communication. - And connected users within the sender's location who are set
deafwill not receive the communication. - And connected users not within the sender's location will not receive the communication.
- Then the sender is not reminded that they are
- When the sender attempts to communicate to a location,
Scenario: The user wants to privately communicate to a user-specified subset of connected users within the user's location # whisper
- Given the sender is
mute,- When the user attempts to communicate to a user-specified subset of connected users within the user's location,
- Then the sender is reminded that they are
mutedand may not do so. - And the action fails.
- Then the sender is reminded that they are
- When the user attempts to communicate to a user-specified subset of connected users within the user's location,
- Given the sender is
deaf,- When the user attempts to communicate to a user-specified subset of connected users within the user's location,
- Then the sender is reminded that they are
deaf, and will not hear any response. - And user-specified subset of connected users within the user's location who are not set
deafwill receive the communication.
- Then the sender is reminded that they are
- When the user attempts to communicate to a user-specified subset of connected users within the user's location,
- **Given the recipient does not exist,
- When the user attempts to communicate to a user-specified subset of connected users within the user's location,
- Then
- When the user attempts to communicate to a user-specified subset of connected users within the user's location,
- Given the recipient is not present in the sender's location
- When
- Then
- When
- Given the recipient not connected
- When
- Then
- When
- Given the recipient
deaf- When
- Then
- When
- Given the recipient has
blockedthe sender- When
- Then
- When
- Given the sender is not prohibited from sending a message,
- And the recipient is present in the location of the sender, connected, and able to receive a message,
- When
- Then
- When
Does the user want to obscure the list (bcc) or is the list public to all on it?
Scenario: The user wants to privately communicate to a user-specified subset of connected users regardless of location. # tells
- Given the sender mute,
- When
- Then
- When
- Given the sender is deaf,
- When
- Then
- When
- Given the recipient does not exist,
- When
- Then
- When
- Given the recipient is not connected,
- When
- Then
- When
- Given the recipient is
deaf,- When
- Then
- When
- Given the recipient has
blockedthe sender,- When
- Then
- When
- Given the sender is not prohibited from sending a message,
- And the recipient is connected and able to receive a message,
- When
- Then
- When
Does the user want to obscure the list (bcc) or is the list public to all on it?
Scenario: The user wants to privately communicate to a system-specified subset of connected users. # chat channels
- Given the subset of connected users does not exist,
- When
- Then
- When
- Given the sender is not a member of the subset of connected users,
- When
- Then
- When
- Given the sender is a member of the subset of connected users,
- And is restricted from sending to that subset,
- When
- Then
- When
- Given the sender is
mute,- When
- Then
- When
- Given the sender is
deaf,- When
- Then
- When
- Given the subset of connected users exists,
- And the sender is a member of the subset of connected users with send-access privileges and is not otherwise restricted from communication,
- When
- Then send the message to all members of the subset of connected users who have not blocked the sender and are not
deaf. # Do I need to check for deafness/blocked status in this scenario, or is this sufficient to indicate that must happen?
- Then send the message to all members of the subset of connected users who have not blocked the sender and are not
- When
Do join, leave, and mute scenarios go here?
Scenario: The user wants to communicate in a longer, persistent form to a user-specified subset of users. # Mail
- is the sender restricted # how does this differ from mute?
- does the recipient exist
- has the recipient blocked the sender # cannot block staff
- is the message missing a vital attribute [subject, content]
- is the message of malicious size # maximum file size?
- send message
- store message
- sender is notified their message has been sent
- if online, recipient is notified they have received a message
- if offline, recipient will be notified upon next connection that they have a message
** Do read scenarios go here? **
Scenario: The user wants to communicate in a longer, persistent form to a system-specified subset of users. # Mail List
- does subset exist
- is user a member of subset (with sending privileges)
- is the sender restricted # how does this differ from mute?
- does the recipient exist
- has the recipient blocked the sender # cannot block staff
- is the message missing a vital attribute [subject, content]
- is the message of malicious size # maximum file size?
- send message
- store message
- sender is notified their message has been sent
- if online, recipient is notified they have received a message
- if offline, recipient will be notified they have a message upon connection
** Do read scenarios go here? **
** Do join and leave scenarios go here?**
Scenario: The user wants to communicate in a longer, persistent form to a system-specified subset of users. # BB
- does subset exist
- is user a member of subset (with writing privileges)
- is the sender restricted # how does this differ from mute?
- is the message missing a vital attribute [subject, content]
- is the message of malicious size # maximum file size?
- post/store message
- online members of subset are notified there is a new message
- offline members of subset will be notified there is a new message upon connection # if they have not muted notifications?
Scenario: User wants to mute communications. # all channels/deaf
Scenario: User wants to reinitiate communications.
Scenario: User wants to mute a subset of users. # block an individual, all tells, one chat, all chat, notifications for mail or bb
Scenario: User wants to unmute a subset of users.