#****************************************************************************** # Status.im #*****************************************************************************/ #/** # * \file test.feature # * # * \test Status Desktop - Community # * \date July 2022 # ** # *****************************************************************************/ Feature: Status Desktop community As a user I want to create a community and chat The following scenarios cover basic flows of a community Background: Given A first time user lands on the status desktop and generates new key When user signs up with username tester123 and password TesTEr16843/!@00 Then the user lands on the signed in app When the user opens the community portal section Then the user lands on the community portal section @merge Scenario Outline: User creates a community When the user creates a community named , with description , intro and outro Then the user lands on the community named Examples: | community_name | community_description | community_intro | community_outro | | testCommunity1 | Community tested 1 | My intro for the community | My community outro | @merge @mayfail Scenario Outline: Admin creates a community channel When the user creates a community named myCommunity, with description My community description, intro Community Intro and outro Community Outro Then the user lands on the community named myCommunity When the admin creates a community channel named , with description with the method Then the user lands on the channel named Examples: | community_channel_name | community_channel_description | method | | test-channel | Community channel description tested 1 | bottom_menu | | test-channel2 | Community channel description tested 2 | right_click_menu | @mayfail Scenario Outline: Admin edits a community channel When the user creates a community named myCommunity, with description My community description, intro Community Intro and outro Community Outro Then the user lands on the community named myCommunity When the admin creates a community channel named test-channel, with description My description with the method bottom_menu Then the user lands on the channel named test-channel When the admin edits the current community channel to the name Then the user lands on the channel named Examples: | community_channel_name | community_channel_description | new_community_channel_name | | test-channel | Community channel description tested 1 | new-test-channel | @merge @mayfail Scenario: Admin deletes a community channel When the user creates a community named myCommunity, with description My community description, intro Community Intro and outro Community Outro Then the user lands on the community named myCommunity When the admin creates a community channel named test-channel, with description My description with the method bottom_menu Then the user lands on the channel named test-channel And the channel count is 2 When the admin deletes current channel Then the channel count is 1 @merge @mayfail Scenario Outline: Admin creates a community category When the user creates a community named myCommunity, with description My community description, intro Community Intro and outro Community Outro Then the user lands on the community named myCommunity When the admin creates a community channel named , with description Some description with the method And the admin creates a community category named , with channels and with the method Then the category named has channels Examples: | community_channel_name | community_category_name | method | | test-channel-1 | test-category-1 | bottom_menu | | test-channel-2 | test-category-2 | right_click_menu | Scenario: Admin edits a community category When the user creates a community named myCommunity, with description My community description, intro Community Intro and outro Community Outro Then the user lands on the community named myCommunity When the admin creates a community channel named test-channel, with description My description with the method bottom_menu And the admin creates a community category named test-category, with channels test-channel and with the method bottom_menu Then the category named test-category has channels test-channel When the admin edits category named test-category to the name new-test-category and channels test-channel, general Then the category named new-test-category has channels general And the category named test-category is missing @merge Scenario: Admin deletes a community category When the user creates a community named myCommunity, with description My community description, intro Community Intro and outro Community Outro Then the user lands on the community named myCommunity When the admin creates a community channel named test-channel, with description My description with the method bottom_menu And the admin creates a community category named test-category, with channels test-channel and with the method bottom_menu Then the category named test-category has channels test-channel When the admin deletes category named test-category Then the category named test-category is missing @merge @mayfail Scenario Outline: Admin edits a community When the user creates a community named myCommunity, with description My community description, intro Community Intro and outro Community Outro Then the user lands on the community named myCommunity When the admin edits the current community to the name and description and color When the admin goes back to the community Then the user lands on the community named Examples: | new_community_name | new_community_description | new_community_color | | myCommunityNamedChanged | Cool new description 123 | #ff0000 | @merge Scenario: User leaves community When the user creates a community named testCommunity, with description My community description, intro Community Intro and outro Community Outro Then the user lands on the community named testCommunity When the user opens app settings screen And the user opens the communities settings And the user leaves the community Then the count of communities in navbar is 0 @merge @mayfail Scenario Outline: User changes the emoji of a channel When the user creates a community named myCommunity, with description My community description, intro Community Intro and outro Community Outro Then the user lands on the community named myCommunity When the admin creates a community channel named test-channel, with description My description with the method bottom_menu Then the user lands on the channel named test-channel When the user changes emoji of the current community channel with emoji by description Then the community channel has emoji Examples: | new_emoji_description | new_emoji | | thumbs up | 👍 |