diff --git a/integration_testing/features/access-kolibri-studio/explore-without-an-account.feature b/integration_testing/features/access-kolibri-studio/explore-without-an-account.feature index a1bd0c0457..6101177892 100755 --- a/integration_testing/features/access-kolibri-studio/explore-without-an-account.feature +++ b/integration_testing/features/access-kolibri-studio/explore-without-an-account.feature @@ -7,5 +7,7 @@ Feature: Explore without an account Scenario: Explore without an account When I click the *Explore without an account* link Then I see the *Content Library* page with available public channels - And I can filter the search results - And I can view or download the channel summary + And I can filter the search results by keyword, language, license, format, starred status, resources for coaches, captions or subtitles + When I click on a channel card + Then I can see the channel's details + And I can view or download the channel summary diff --git a/integration_testing/features/access-kolibri-studio/reset-your-password.feature b/integration_testing/features/access-kolibri-studio/reset-your-password.feature index 46bb82b954..a6deb9c814 100755 --- a/integration_testing/features/access-kolibri-studio/reset-your-password.feature +++ b/integration_testing/features/access-kolibri-studio/reset-your-password.feature @@ -7,7 +7,7 @@ Feature: Reset your password Scenario: Request a link to reset my password When I click the *Forgot your password?* link - Then I see a page with option to enter my email address + Then I see the *Reset your password* page with option to enter my email address When I type an existing valid email address in the *Email* field And I press the *Submit* button Then I see a message that the instructions are sent @@ -18,7 +18,7 @@ Feature: Reset your password Given I've requested and received an email with a link to reset my password When I click the link in the email Then I see a page with a *Reset your password* form - And I fill in the *New password* field + When I fill in the *New password* field And I fill in the *Confirm password* field with the same password And I press the *Submit* button Then I see the following message: Password reset successfully diff --git a/integration_testing/features/access-kolibri-studio/sign-in.feature b/integration_testing/features/access-kolibri-studio/sign-in.feature index 1678e03bac..478826102e 100755 --- a/integration_testing/features/access-kolibri-studio/sign-in.feature +++ b/integration_testing/features/access-kolibri-studio/sign-in.feature @@ -5,7 +5,7 @@ Feature: Sign in to Studio And I am at Studio's sign-in page And I have already registered with my email - Scenario: Sign in to Studio + Scenario: Sign in to Studio using valid credentials When I fill in my email And I fill in my password And I click the *Sign in* button @@ -17,8 +17,13 @@ Feature: Sign in to Studio And I click the *Sign in* button Then I see the following validation message above the form: *Email or password is incorrect* - Scenario: See validation messages for the required fields + Scenario: See error notification for invalid email + When I fill in an invalid email such as test@ + And I click the *Sign in* button + Then I see the following validation message under the email field: *Please enter a valid email* + + Scenario: See validation messages for the empty required fields When I leave one or both of the *Email* and *Password* fields empty And I click the *Sign in* button Then I see the fields colored in red - And I see a *Field is required* message under each empty field + And I see a *This field is required* message under each empty field diff --git a/integration_testing/features/common/change-language.feature b/integration_testing/features/common/change-language.feature index f642029fde..80e8f421a9 100755 --- a/integration_testing/features/common/change-language.feature +++ b/integration_testing/features/common/change-language.feature @@ -3,7 +3,7 @@ Feature: Change language Scenario: Change language when you are not signed-in Given I am not signed-in to Studio - And I am on the Studio home page + And I am at Studio's sign-in page When I click on one of the available languages Then the language interface changes to the selected language And the selected language is no longer clickable @@ -13,16 +13,16 @@ Feature: Change language And I have clicked the *Explore without an account link* When I click on the user profile icon And I click *Change language* - Then I see a *Change language* modal window displayed with several languages to choose from + Then I see a *Change language* modal window with the available languages When I click on a language which is not currently selected And I click the *Confirm* button Then the interface language changes to the selected language - Scenario: Change language as a signed-in user + Scenario: Change the language as a signed-in user Given I am signed-in to Studio And I click the user profile icon When I click *Change language* - Then I see a *Change language* modal window displayed with several languages to choose from + Then I see a *Change language* modal window with the available languages When I click on a language which is not currently selected And I click the *Confirm* button Then the interface language changes to the selected language diff --git a/integration_testing/features/common/open-sidebar-and-user-menus.feature b/integration_testing/features/common/open-sidebar-and-user-menus.feature index f52112570f..539c6194db 100755 --- a/integration_testing/features/common/open-sidebar-and-user-menus.feature +++ b/integration_testing/features/common/open-sidebar-and-user-menus.feature @@ -3,18 +3,19 @@ User needs to be able to open and close the sidebar menu and the user menu Background: Given I am signed in to Studio - And I am on any of the tabs (*My Channels*, *Starred*, *View only*, *Content Library*, or *Collections*) Scenario: Open and close the sidebar menu When I click the hamburger menu button in the upper left screen corner Then I see the sidebar menu - And I can select any of the options inside + And I can see the following options: *Channels*, *Settings*, *Change language*, *Help and support*, *Sign out*, the LE logo, *© 2025 Learning Equality", *Give feedback* + And I can click any of the options inside When I click the *X* button, or anywhere on the browser screen Then I don't see the sidebar menu anymore Scenario: Open and close the user menu When I click the user menu button in the upper right screen corner Then I see the user menu - And I can select any of the options inside + And I can see the following options: *Settings*, *Change language*, *Help and support*, *Sign out* + And I can click any of the options inside When I click the user menu button again, or anywhere on the browser screen - Then I don't see the user menu anymore + Then I don't see the user menu anymore diff --git a/integration_testing/features/manage-account/edit-account-information.feature b/integration_testing/features/manage-account/edit-account-information.feature deleted file mode 100755 index fa9ecb46de..0000000000 --- a/integration_testing/features/manage-account/edit-account-information.feature +++ /dev/null @@ -1,23 +0,0 @@ -Feature: Edit account information - - Background: - Given I am signed in to Studio - And I am on Studio *Settings > Account* page - - Scenario: Changing password - When I click on the *Change password* hyperlink - And I make changes to my password - And I press *Save changes* button in the modal - Then I see a snackbar appears to confirm my password was updated - And the modal is dismissed - - Scenario: Editing full name - When I click the *Edit* hyperlink near my username - And I make changes to my full name - And I click *Save changes* button in the modal - Then I see a snackbar appears to confirm changes are saved - And the modal is dismissed - - Scenario: Copying API token - When I click the copy button in the token text field - Then a snackbar appears to confirm the code is copied diff --git a/integration_testing/features/manage-account/export-account-information.feature b/integration_testing/features/manage-account/export-account-information.feature deleted file mode 100755 index 95d3b9c2b4..0000000000 --- a/integration_testing/features/manage-account/export-account-information.feature +++ /dev/null @@ -1,17 +0,0 @@ -Feature: Export account information - - Background: - Given I have a Studio account - And I am signed in to Studio - And I have interacted with various data and channels - And I am on the *Settings > Account* page - - Scenario: Export account data - When I click the *Export Data* button - Then I see a modal appears to confirm export is in-progress - When I click *Ok* to dismiss the modal - Then I see the modal disappears - - Scenario: Viewing the exported data - When I check the Inbox of my email account registered at Studio - Then I see an email with an attachment that contains my account data diff --git a/integration_testing/features/manage-account/report-issue.feature b/integration_testing/features/manage-account/report-issue.feature deleted file mode 100755 index 27ee5105bb..0000000000 --- a/integration_testing/features/manage-account/report-issue.feature +++ /dev/null @@ -1,23 +0,0 @@ -Feature: Report an issue - - Background: - Given I am signed in to Studio - And I am on the *Settings > About Studio* page - - Scenario: Report an issue - When I click the *Report an issue* button - Then I see a dialog modal appears - And I see text input fields - When I input issue information - And click the *Submit* button - Then I see the modal disappears - And a snackbar appears to confirm the submission - - Scenario: Error in issue report submission - When I input some issue information - And skip at least one field - Then I see error validation text beneath the error fields - When I resolve those errors - And click the *Submit* button - Then I see the modal disappears - And a snackbar appears to confirm the submission diff --git a/integration_testing/features/manage-account/request-more-storage-space.feature b/integration_testing/features/manage-account/request-more-storage-space.feature deleted file mode 100755 index bac9d32f63..0000000000 --- a/integration_testing/features/manage-account/request-more-storage-space.feature +++ /dev/null @@ -1,19 +0,0 @@ -Feature: Request more storage space - - Background: - Given I am signed in to Studio - And I am on Studio *Settings > Storage* page - And I click *Show form* on the page - - Scenario: Submit more space request - When I fill in all the space request text fields - And I click the *Send request* submit button - Then I see all the text fields clear - And a snackbar appears to confirm the submission - - Scenario: Submit more space request with errors - When I do not fill in all the required text fields - And I click the *Send request* submit button - Then I see a system error message above the form - And I see my text field inputs still intact - And I see error validation text near fields that need input diff --git a/integration_testing/features/manage-account/review-used-storage.feature b/integration_testing/features/manage-account/review-used-storage.feature deleted file mode 100755 index 743b36c1ac..0000000000 --- a/integration_testing/features/manage-account/review-used-storage.feature +++ /dev/null @@ -1,15 +0,0 @@ -Feature: Review used storage - - Background: - Given I am signed in to Studio - And I am on the *Settings > Storage* page - - Scenario: Review used storage - Given I have uploaded some resources in my channels - When I look under the *% storage used* heading - Then I see the storage use broken down by resources type - - Scenario: No storage used - Given that I have not uploaded any resources in my channels - When I look under the *% storage used* heading - Then I see that there is 0% storage used diff --git a/integration_testing/features/manage-account/view-about-studio-page.feature b/integration_testing/features/manage-account/view-about-studio-page.feature new file mode 100755 index 0000000000..344d4f3978 --- /dev/null +++ b/integration_testing/features/manage-account/view-about-studio-page.feature @@ -0,0 +1,11 @@ +Feature: About Studio + + Background: + Given I am signed in to Studio + And I am at *Settings > About Studio* page + + Scenario: Read the available info and follow the links + When I look at the page + Then I see the following sections: *Kolibri Studio resources*, *About Kolibri Studio*, *Best practices* and *Notable issues* + When I click on any of the provided links + Then I can go to the linked page diff --git a/integration_testing/features/manage-account/view-and-edit-account-information.feature b/integration_testing/features/manage-account/view-and-edit-account-information.feature new file mode 100755 index 0000000000..12730dced5 --- /dev/null +++ b/integration_testing/features/manage-account/view-and-edit-account-information.feature @@ -0,0 +1,43 @@ +Feature: View and edit the account information + + Background: + Given I am signed in to Studio + And I am at the *Settings > Account* page + + Scenario: View the account information + When I look at the page + Then I see the *Basic information* section with, *Username*, *Full name* and *Password* + And I see the *API token* section with the token + And I see the *Export account data* section with *Export data* button + And I see the *Delete account* section + + Scenario: Edit the full name + When I click the *Edit full name* link next to my username + Then I see the *Edit full name* modal + When I make changes to my full name + And I click the *Save changes* button + Then the modal closes + And I see a *Changes saved* snackbar + + Scenario: Change the password + When I click on the *Change password* link + Then I see the *Change password* modal + When I enter a new password + And I click the *Save changes* button + Then the modal closes + And I see a *Changes saved* snackbar + + Scenario: Copy the API token + When I click the copy button in the token text field + Then I see a *Token copied* snackbar + + Scenario: Export account data + When I click the *Export data* button + Then I see the *Data export started* modal + When I click the *OK* button + Then the modal closes + + Scenario: View the exported data + When after a period of time I check the Inbox of my email account registered at Studio + Then I see an email with the exported account data as an attachment + And I can view the exported account data diff --git a/integration_testing/features/manage-account/view-and-request-more-storage.feature b/integration_testing/features/manage-account/view-and-request-more-storage.feature new file mode 100755 index 0000000000..e3f0b0995b --- /dev/null +++ b/integration_testing/features/manage-account/view-and-request-more-storage.feature @@ -0,0 +1,32 @@ +Feature: View the storage and request more storage space + + Background: + Given I am signed in to Studio + And I am at the *Settings > Storage* page + And I have uploaded some resources to my channels + + Scenario: Review used storage + When I look at the *Settings > Storage* page + Then I see the *% storage used* progress bar + And I see the remaining storage as *NNN MB of NNN MB* + And I see the amount of storage used broken down by resources type + + Scenario: No storage used + Given that I have not uploaded any resources in my channels + When I look under the *% storage used* heading + Then I see that there is 0% storage used + + Scenario: Request more space + When I click the *Open form* link under the *Request more space* section + And I fill in all the space request required fields + And I click the *Send request* button + Then the form disappears + And I see a *Your storage request has been submitted for processing* snackbar message + When after a period of time I open my email + Then I see a *Kolibri Studio storage request from user@user.com* email + + Scenario: Submit more space request with errors + When I leave the required fields empty + And I click the *Send request* button + Then I see a *Please fix N errors below* error message above the form + And I see a *Field is required* text below each required field diff --git a/integration_testing/features/manage-account/view-support-links.feature b/integration_testing/features/manage-account/view-support-links.feature deleted file mode 100755 index 8013621f30..0000000000 --- a/integration_testing/features/manage-account/view-support-links.feature +++ /dev/null @@ -1,14 +0,0 @@ -Feature: View support links - - Background: - Given I am signed in to Studio - And I am on Studio *Settings > About Studio* page - - Scenario: View resources - When I click the *Kolibri Studio User Guide* link - Then a new browser tab opens with the ReadTheDocs page - # Privacy Policy page not yet implemented - - Scenario: View notable issues - When I click one of the notable issue hyperlinks - Then a new browser tab opens with the GitHub issue in question diff --git a/integration_testing/features/manage-channels/add-channel-to-starred.feature b/integration_testing/features/manage-channels/add-channel-to-starred.feature index 91da946562..aee4d9838a 100755 --- a/integration_testing/features/manage-channels/add-channel-to-starred.feature +++ b/integration_testing/features/manage-channels/add-channel-to-starred.feature @@ -13,7 +13,7 @@ Feature: Add a channel to the *Starred* tab When I click and open the *Starred* tab Then I see that the channel is displayed among the starred channels - Scenario: Unstar a channel + Scenario: Remove a channel from the starred channels Given I am on *My Channels*, *View only*, or *Public* tabs And I see a channel that is starred (black star) When I click the *Remove from starred channels* button for the channel @@ -21,17 +21,16 @@ Feature: Add a channel to the *Starred* tab And I see a message that the channel was removed from the starred channels When I click and open the *Starred* tab Then I see the list of starred channels - But I don't see the unstarred channel on the list Scenario: Remove channel directly from the *Starred* tab Given I am on the *Starred* tab And I see a starred channel When I click the *Remove from starred channels* button for the channel - Then I don't see the unstarred channel any more + Then I don't see the removed channel any more Scenario: Remove a starred channel form the *Content Library* tab with *Starred* filter on Given I am on the *Content Library* tab And I've selected the *Starred* checkbox When I click on the star button of a starred channel. - Then I should see a message that the channel was removed from the starred channels - And the channel should no longer be displayed in the list with the filtered channels + Then I see a message that the channel was removed from the starred channels + And the channel is no longer displayed in the list with the filtered channels diff --git a/integration_testing/features/manage-channels/create-a-channel.feature b/integration_testing/features/manage-channels/create-a-channel.feature index 5e4b357fd0..d448a239a2 100755 --- a/integration_testing/features/manage-channels/create-a-channel.feature +++ b/integration_testing/features/manage-channels/create-a-channel.feature @@ -2,18 +2,19 @@ Feature: Create a channel Background: Given I am signed in to Studio - And I am on the *My Channels* tab + And I am at *My Channels* tab - Scenario: Create a channel + Scenario: Create a new channel When I click the *New channel* button Then I see the *New channel* page - When I enter channel name - And I enter channel description - And I select a language - And I upload the image file as a channel thumbnail + When I upload an image file as a channel thumbnail (optional) + And I enter a channel name + And I select a language + And I enter channel description (optional) + And I fill in the default copyright fields (optional) And I click the *Create* button - Then I see the channel on *My Channels* list - - Examples: - | channel_name | channel_description | language | - | ck-12 | sample channel | english | + Then I am at the channel editor view + And I see the title of the channel to the left + And I see a disabled *Publish* button + And I see *Click "ADD" to start building your channel Create, upload, or import resources from other channels* + And I see a blue *Add* button diff --git a/integration_testing/features/manage-channels/delete-channel.feature b/integration_testing/features/manage-channels/delete-channel.feature index 8e774a2cd7..56a1f14769 100755 --- a/integration_testing/features/manage-channels/delete-channel.feature +++ b/integration_testing/features/manage-channels/delete-channel.feature @@ -1,23 +1,25 @@ -Feature: Delete channel +Feature: Delete a channel Background: Given I am signed in to Studio - And I have permissions to edit - And I am on *My Channels* tab + And I have permissions to edit a channel + And I am at *My channels* tab - Scenario: Delete channel + Scenario: Delete a channel When I click the *Options* button of a channel #the three dots to the right Then I see a *Delete channel* option When I click the *Delete channel* option - And I click the *Delete channel* button - Then I see a message that the channel is deleted - And the deleted channel is no longer displayed on *My Channels* tab + Then I see a *Delete this channel* confirmation modal + When I click the *Delete channel* button + Then I see a *Channel deleted* snackbar message + And the deleted channel is no longer displayed on *My channels* tab - Scenario: Cancel deleting a channel + Scenario: Cancel the deletion of a channel When I click the *Options* button of a channel #the three dots to the right Then I see a *Delete channel* option When I click the *Delete channel* option - And I click the *Cancel* button + Then I see a *Delete this channel* confirmation modal + When I click the *Cancel* button Then the *Delete this channel* modal window is closed And the channel is not deleted @@ -26,8 +28,8 @@ Feature: Delete channel Then I see the channel resources page When I click the *Options* button to the right side of the topbar Then I see a *Delete channel* option colored in red - When I click the *Delete channel* option + When I click the *Delete this channel* option And I click the *Delete channel* button - Then I see a message that the channel is deleted - And I am brought back on *My channels* tab - And the deleted channel is no longer displayed on *My Channels* tab + Then I am brought back to *My channels* tab + And I see a *Channel deleted* snackbar message + And the deleted channel is no longer displayed in *My channels* list diff --git a/integration_testing/features/manage-channels/edit-channel-details.feature b/integration_testing/features/manage-channels/edit-channel-details.feature index 53dbf8a136..a668ffcdac 100755 --- a/integration_testing/features/manage-channels/edit-channel-details.feature +++ b/integration_testing/features/manage-channels/edit-channel-details.feature @@ -10,5 +10,5 @@ Feature: Edit channel details And I see the details for the channel - channel name, language, channel description etc. When I modify any of the details And I click the *Save changes* button - Then I see a message: Changes saved + Then I see *Changes saved* snackbar message And I can close the modal window diff --git a/integration_testing/features/manage-channels/get-channel-token-after-publishing.feature b/integration_testing/features/manage-channels/get-channel-token-after-publishing.feature index 68701049fc..536744a46d 100755 --- a/integration_testing/features/manage-channels/get-channel-token-after-publishing.feature +++ b/integration_testing/features/manage-channels/get-channel-token-after-publishing.feature @@ -2,15 +2,15 @@ Feature: Get channel token after publishing the channel Background: Given I am signed in to Studio - And I am on the editor page - And the has recently been published + And I am on the channel editor page + And the channel has recently been published - Scenario: Get channel token after publishing the channel + Scenario: Get channel token after publishing the channel When I click on the ellipsis button in the top right corner And I click on the *Get token* menu option - Then I see a modal appears with an option to copy the channel token + Then I see the *Copy channel token* + And I see the channel token e.g. hufim-lolib When I click on the copy button - Then a snackbar appears to confirm the code is copied to the clipboard - - Examples: - | channel | + Then a *Token copied* snackbar message + When I click the *Close* button + Then the modal closes diff --git a/integration_testing/features/manage-channels/manage-additional-channel-options.feature b/integration_testing/features/manage-channels/manage-additional-channel-options.feature deleted file mode 100755 index d0578dfc3c..0000000000 --- a/integration_testing/features/manage-channels/manage-additional-channel-options.feature +++ /dev/null @@ -1,39 +0,0 @@ -Feature: Access and use additional options on channel list - User needs to be able to access additional options to manage channels from the channel list - - Background: - Given I am signed in to Studio - And I am at *My Channels* tab - - Scenario: Edit channel details - When I click the *⋮* button - And I click the *Edit channel details* option - Then I see a modal window with the channel details - And I see the details for the channel - channel name, language, channel description etc. - When I modify any of the details - And I click the *Save changes* button - Then I see a message: Changes saved - And I can close the modal window - - Scenario: Copy channel token - When I click the *⋮* button - And I click the *Copy channel token* option - Then I see the *Copy channel token* modal window - When I click on the icon to the right of the token - Then I see a *Token copied* message - And I can paste the copied token wherever I need to paste it - - Scenario: Delete channel - When I click the *⋮* button - And I click the *Delete channel* option - Then I see the *Delete this channel* modal window - And I see a message *This channel will be permanently deleted. This cannot be undone.* - When I click the *Delete channel* button - Then the channel is deleted and is no longer displayed - - Scenario: View channel details - When I click the *i* button - Then I see a modal window with the channel details - When I click the *Download channel summary button* - And I click one of the available options - Then I can download the channel summary either as a .pdf or a .csv file diff --git a/integration_testing/features/manage-channels/open-a-channel-in-a-new-tab.feature b/integration_testing/features/manage-channels/open-a-channel-in-a-new-tab.feature deleted file mode 100755 index 5afb28ba91..0000000000 --- a/integration_testing/features/manage-channels/open-a-channel-in-a-new-tab.feature +++ /dev/null @@ -1,12 +0,0 @@ -Feature: Open channel in new tab - - Background: - Given I am signed in to Studio - And I am on the channel editor view - - Scenario: Open channel in new tab - When I click on clipboard button on the bottom-right of the screen - Then the clipboard opens up - When I right click a channel item on the clipboard - And click *Open in new tab* on the dropdown menu that appears - Then a tab opens with the view-only or editable channel in question diff --git a/integration_testing/features/manage-channels/publish-channel.feature b/integration_testing/features/manage-channels/publish-channel.feature index bcf8d4732f..86e965286f 100755 --- a/integration_testing/features/manage-channels/publish-channel.feature +++ b/integration_testing/features/manage-channels/publish-channel.feature @@ -2,29 +2,84 @@ Feature: Publish a channel Background: Given I am signed in to Studio - And I am in the channel editor page - And I have write access to the channel - And the channel has had modifications + And I am at the channel editor page for a channel created by me + And the there are unpublished resources Scenario: Publish a channel - When I click the *Publish* button in the top right corner - Then the *Publish modal* appears - And I see steps for resolving errors and describing new changes - When I click *Publish* - Then I see the *Publishing channel* progress bar appears - When the progress bar reaches 100% - And I click *Refresh* - Then the browser refreshes - And the published version is updated - And I receive an email for channel published successfully + When I click the *Publish* button + Then I see the *Publish modal* + And I see the title of the channel + And I see a *Version description* field + When I enter a description + And I click the *Publish* button + Then the modal disappears + And I see the *Publishing channel 0%* progress indicator to the left of the *Publish* button + When the channel has been published successfully + Then the progress indicator text changes to *Published NN seconds ago* + And the *Publish* button remains disabled + When after a period of time I check my email + Then I see that I have received a confirmation email that the channel has been published successfully Scenario: Publish a large channel - When the channel as at least 5000 nodes - And I click the *Publish* button in the top right corner - Then the *Publish modal* appears - And I see a loading spinner while it loads the channel's size - And I see the *Continue* button is disabled - When the channel's size has loaded - Then the loading spinner disappears - And I see the *Continue* button isn't disabled - And I can continue publishing + Given there is an unpublished channel with more than 5000 nodes + When I click the *Publish* button + Then I see the *Publish modal* + And I see the title of the channel + And I see a *Version description* field + When I enter a description + And I click the *Publish* button + Then the modal disappears + And I see the *Publishing channel 0%* progress indicator to the left of the *Publish* button + When the channel has been published successfully + Then the progress indicator text changes to *Published NN seconds ago* + And the *Publish* button remains disabled + When after a period of time I check my email + Then I see that I have received a confirmation email that the channel has been published successfully + + Scenario: Publish a channel with incomplete resources + Given the channel contains incomplete resources + When I look to the left of the *Publish* button + Then I see a yellow icon with exclamation + And I see a the number of incomplete resources + And when I hover over the icon I see *N resources are incomplete and cannot be published* + When I click the *Publish* button + Then I see the *Publish modal* + And I see text informing me of the number of incomplete resources and they won't be published + When I click the *Continue* button + Then I see the *Publish modal* + And I see the title of the channel + And I see a *Version description* field + When I enter a description + And I click the *Publish* button + Then the modal disappears + And I see the *Publishing channel 0%* progress indicator to the left of the *Publish* button + When the channel has been published successfully + Then the progress indicator text changes to *Published NN seconds ago* + And the *Publish* button remains disabled + When after a period of time I check my email + Then I see that I have received a confirmation email that the channel has been published successfully + + Scenario: Publish a channel with resources in different languages + Given the channel contains multiple resources in different languages + When I click the *Publish* button + Then I see the *Publish modal* + And I see the title of the channel + And I see a *Version description* field + And I see a *Language* drop-down in red + And I see *Please select a language for this channel* + When I enter a description + And I select a language + And I click the *Publish* button + Then the modal disappears + And I see the *Publishing channel 0%* progress indicator to the left of the *Publish* button + When the channel has been published successfully + Then the progress indicator text changes to *Published NN seconds ago* + And the *Publish* button remains disabled + When after a period of time I check my email + Then I see that I have received a confirmation email that the channel has been published successfully + + Scenario: Attempt to publish a *View-only* channel + Given I've been invited to view a *View-only* channel + When I attempt to publish the channel + Then I see a *View-only* text at the place of the *Publish* button + And it's not possible to publish the channel diff --git a/integration_testing/features/manage-channels/share-channels.feature b/integration_testing/features/manage-channels/share-channels.feature index 7798d299f4..f3ce19f6de 100755 --- a/integration_testing/features/manage-channels/share-channels.feature +++ b/integration_testing/features/manage-channels/share-channels.feature @@ -10,7 +10,7 @@ Feature: Share channels Scenario: Invite collaborators with *Can edit* permissions When I type the email of the person I want to invite - And I don't change the preselected *Can edit* option in the drop-down + And I leave the preselected *Can edit* option in the drop-down And I click the *Send invitation* button Then the collaborator will be notified on their *My Channels* page, where they can accept or reject the pending invitation And the collaborator will receive an email allowing them to accept/reject the pending invitation diff --git a/integration_testing/features/manage-channels/stop-channel-publish.feature b/integration_testing/features/manage-channels/stop-channel-publish.feature deleted file mode 100755 index 5e68344c78..0000000000 --- a/integration_testing/features/manage-channels/stop-channel-publish.feature +++ /dev/null @@ -1,11 +0,0 @@ -Feature: Stop the publish of a channel - - Background: - Given there's a channel publish task in-progress - - Scenario: Stop the publish of a channel - When I click the *Stop* button in the publish modal - Then a confirmation message appears - When I click *Yes, stop task* - Then the publish task stops - And I am back in the channel editor page diff --git a/integration_testing/features/manage-channels/sync-channel.feature b/integration_testing/features/manage-channels/sync-channel.feature index ec33919b39..3023eba6fc 100755 --- a/integration_testing/features/manage-channels/sync-channel.feature +++ b/integration_testing/features/manage-channels/sync-channel.feature @@ -3,86 +3,68 @@ Feature: Sync resources Background: Given I am signed in to Studio - And I am on the editor page - And there is a in the that has been imported from + And I am editing + And there is a resource in that has been imported from Scenario: Sync resource file information - Given there is new version of the file in the - Or the thumbnail has been added to the file in the - When I click on the *···* button in the top-right corner - And I select the *Sync channel* option + Given there is a new version of the resource file in + When I click the *···* button in the top-right corner + And I select the *Sync resources* option Then I see *Sync resources* modal window - When I activate the *File* checkbox - And click the *Continue* button + And I see options to sync files, resource details, titles and description, assessment details + When I select the Files checkbox + And I click the *Continue* button Then I see the *Confirm sync* modal When I click *Sync* - Then I see the *Syncing channel* modal - And I see the progress bar - When I see the *Operation complete!* message - And I click the *Refresh button* - Then I see the new file version of the - Or I see the new thumbnail + Then the modal closes + When after a period of time I refresh the page + And inspect the updated resource(s) + Then I can see that any changes made to the original resource(s) are synced correctly (including thumbnails, subtitles and captions) - Scenario: Sync resource tags - Given the in the has a new tag - When I click on the *···* button in the top-right corner - And I select the *Sync channel* option - Then I see *Sync resources* modal window - When I activate the *Tags* checkbox + Scenario: Sync resource details + Given there is a new version of the resource file in + And I am at the *Sync resources* modal window + When I select the *Tags* checkbox And click the *Continue* button Then I see the *Confirm sync* modal When I click *Sync* - Then I see the *Syncing channel* modal - And I see the progress bar - When I see the *Operation complete!* message - And I click the *Refresh button* - Then I see the new tag of the + Then the modal closes + When after a period of time I refresh the page + And inspect the updated resource(s) + Then I can see that any changes made to the original resource(s) details are synced correctly (learning activity, level, requirements, category, tags, audience, and source) Scenario: Sync resource title and description - Given the in the has a new title and description - When I click on the *···* button in the top-right corner - And I select the *Sync channel* option - Then I see *Sync resources* modal window - When I activate the *Titles and descriptions* checkbox + Given there is a new version of the resource file in + And I am at the *Sync resources* modal window + When I select the *Titles and descriptions* checkbox And click the *Continue* button Then I see the *Confirm sync* modal When I click *Sync* - Then I see the *Syncing channel* modal - And I see the progress bar - When I see the *Operation complete!* message - And I click the *Refresh button* - Then I see the new title and description of the + Then the modal closes + When after a period of time I refresh the page + And inspect the updated resource(s) + Then I can see that any changes made to the original resource(s) details are synced correctly (titles and descriptions) Scenario: Sync assessment resource details - Given the is an assessment type (exercise) - And it has new questions, answers or hints in the - When I click on the *···* button in the top-right corner - And I select the *Sync channel* option - Then I see *Sync resources* modal window - When I activate the *Assessment details* checkbox + Given there is a new version of the resource file in + And I am at the *Sync resources* modal window + When I select the *Assessment details* checkbox And click the *Continue* button Then I see the *Confirm sync* modal When I click *Sync* - Then I see the *Syncing channel* modal - And I see the progress bar - When I see the *Operation complete!* message - And I click the *Refresh button* - Then I see the new questions, answers or hints in the + Then the modal closes + When after a period of time I refresh the page + And inspect the updated resource(s) + Then I can see that any changes made to the original resource(s) details are synced correctly (questions, answers, and hints in exercises and quizzes) Scenario: Edited resource metadata is reverted after syncing - Given I have edited some metadata (title, description or tags) after importing from - When I click on the *···* button in the top-right corner - And I select the *Sync channel* option - Then I see *Sync resources* modal window - When I activate the *Tags* or *Titles and descriptions* checkbox + Given I have edited some of the resource's metadata (title, description or tags) after importing from + And I am at the *Sync resources* modal window + When I select the *Resource details* or *Titles and descriptions* checkbox And click the *Continue* button Then I see the *Confirm sync* modal When I click *Sync* - Then I see the *Syncing channel* modal - And I see a progress bar - When I see the *Operation complete!* message - And I click the *Refresh button* - Then I see that my edits of title, description or tags for the have been reverted to reflect those on the - - Examples: - | channel_a | channel_b | resource | + Then the modal closes + When after a period of time I refresh the page + And inspect the updated resource + Then I see that my previous edits of the title, description or tags for the resource have been reverted to reflect those on the diff --git a/integration_testing/features/manage-channels/use-channels-with-view-only-access.feature b/integration_testing/features/manage-channels/use-channels-with-view-only-access.feature deleted file mode 100755 index 1d1c190a04..0000000000 --- a/integration_testing/features/manage-channels/use-channels-with-view-only-access.feature +++ /dev/null @@ -1,44 +0,0 @@ -Feature: Use channels with view-only access - - Background: - Given I am signed in to Studio - And I am on the editor page - And I have view-only permissions for - - Scenario: Navigate topic tree - When I click the topic - Then I see its subtopics and resources - When I click the *>* button for the topic when collapsed - Then I see the its subtopics unfold - When I click the *Collapse all* button - Then I see that all topics with subtopics collapse - When I hover over a topic - And I click on a *···* button for more options - Then I can see the *View details* option - And I can see the *Copy to clipboard* option - But I do not see any other options - - Scenario: View details for a topic - When I hover over a topic - And I click on a *···* button for more options - Then I can see the *View details* option - When I select the *View details* option - Then I can see the *Topic* pane open on the right - And I can see all the details for the topic - - Scenario: View details for a resource - When I hover over a type of resource - And I click on a *···* button for more options - And I select the *View details* option - Then I can see the pane for the resource opens on the right - And I can see all the details for the resource - - Scenario: Copy topic or resource to the clipboard from *···* options - When I hover over a resource in the topic tree - And I click on a *···* button for more options - And I select the *Copy to clipboard* option - Then I see the *Creating 1 copy on clipboard* snackbar notification - And I see the *Cancel* button - - Examples: - | topic | kind | resource | diff --git a/integration_testing/features/manage-channels/view-channel-details.feature b/integration_testing/features/manage-channels/view-channel-details.feature index 1109f8f971..d9ecc0394c 100755 --- a/integration_testing/features/manage-channels/view-channel-details.feature +++ b/integration_testing/features/manage-channels/view-channel-details.feature @@ -2,28 +2,28 @@ Feature: View channel details Background: Given I am signed in to Studio - And I am on any of the tabs (*My Channels*, *Starred*, *View only*, or *Content Library*) + And I am in any of the tabs (*My Channels*, *Starred*, *View only*, or *Content Library*) Scenario: Open channel details - When I click the *i* button for the desired - Then I see a new page with channel details - And I see the detailed information for the (token, size and resources, language, etc.) + When I click the *i* button for the desired channel + Then I see a new page with the channel details + And I see the detailed information for the channel (token, size and resources, language, etc.) Scenario: Copy channel token - Given I am on channel details page - And I see the channel token + Given I am at the channel details page + And I see the channel token And I see the token *Copy* button When I click the *Copy* button Then I see the snackbar notification that the token is copied in to the clipboard When I use the paste feature (Ctrl+V) - Then I see the channel token pasted + Then I see the channel token pasted Scenario: Download files with the channel summary - Given I am on channel details page + Given I am at the channel details page And I see the *Download channel summary* button When I click the *Download channel summary* button - Then I see the options to download summary as PDF and CSV files - When I select the option to download PDF + Then I see the options to download the summary as a PDF or a CSV file + When I select the option to download as PDF Then I can save and open the PDF file in my default system PDF reader application When I select the option to download CSV Then I can save and open the CSV file in my default system CSV application @@ -31,7 +31,4 @@ Feature: View channel details Scenario: Close channel details page When I click the *X* button in the top bar Then I don't see the channel details page any more - And I see the channel list on the tab where I initially opened it - - Examples: - | channel | token | + And I see the channel list in the tab where I initially opened it diff --git a/integration_testing/features/manage-channels/view-channels-with-view-only-access.feature b/integration_testing/features/manage-channels/view-channels-with-view-only-access.feature new file mode 100755 index 0000000000..f3b14ff8e0 --- /dev/null +++ b/integration_testing/features/manage-channels/view-channels-with-view-only-access.feature @@ -0,0 +1,37 @@ +Feature: View channels with view-only access + + Background: + Given I am signed in to Studio + And I am at the channel editor page + And I have view-only permissions for the channel + + Scenario: Navigate by using the topic tree sidebar + When I click on a folder with subfolders and resources + Then I see its subfolders and resources + When I click the *>* button for the folder when collapsed + Then it gets expanded so that I can see the subfolders + When I click the *Collapse all* button + Then I see that all folders with subfolders collapse + When I click on a folder with no resources + Then I see *Nothing in this folder yet* + When I hover over a folder + And I click on the *···* button for more options + Then I can see the *View details* and *Copy to clipboard* options + When I click the *View details* option + Then I can see the *folder* panel open on the right + And I can see all the details for the folder + When I click the *Copy to clipboard* option + Then I see a *Copied to clipboard* snackbar message + + Scenario: View details for a resource + When I hover over a resource + And I click on a *···* button for more options + And I select the *View details* option + Then I can see the details panel open on the right + And I can see all the details for the resource + + Scenario: Copy a resource to the clipboard from *···* options + When I hover over a resource + And I click on a *···* button for more options + And I click the *Copy to clipboard* option + Then I see a *Copied to clipboard* snackbar message diff --git a/integration_testing/features/manage-collections/create-a-collection.feature b/integration_testing/features/manage-collections/create-a-collection.feature deleted file mode 100755 index 1c3096f61c..0000000000 --- a/integration_testing/features/manage-collections/create-a-collection.feature +++ /dev/null @@ -1,39 +0,0 @@ -Feature: Create a collection - - Background: - Given I am signed in to Studio - And I am on the *Collections* tab - - Scenario: Create an empty collection - When I click the *New collection* button - And I fill in the *Collection name* field - And I click the *Create* button - Then I see the *Collections* tab - And I see the newly created collection - - Scenario: Create a collection by selecting channels - When I click the *New collection* button - And I click the *Select channels* button - Then I see the *Select channels* page - And I am on the *Content library* tab # alternatively I can select the *My channels* or *View-only* tab - When I select one or several channels - And I click the *Finish* button - Then I see the the *New collection* screen with the selected channels - When I click the *Create* button - Then I see the *Collections* tab - And I see the newly created collection - And I see the number of channels in that collection - - Scenario: Create a collection by searching for channels - When I click the *New collection* button - And I click the *Select channels* button - Then I see the *Select channels* page - And I am on the *Content library* tab # alternatively I can select the *My channels* or *View-only* tab - When I enter a search term in the *Search for a channel* field - And I select one or several channels - And I click the *Finish* button - Then I see the the *New collection* screen with the selected channels - When I click the *Create* button - Then I see the *Collections* tab - And I see the newly created collection - And I see the number of channels in that collection diff --git a/integration_testing/features/manage-collections/delete-a-collection.feature b/integration_testing/features/manage-collections/delete-a-collection.feature deleted file mode 100755 index 361b2a907d..0000000000 --- a/integration_testing/features/manage-collections/delete-a-collection.feature +++ /dev/null @@ -1,14 +0,0 @@ -Feature: Delete a collection - - Background: - Given I am signed in to Studio - And I am on the *Collections* tab - And there is at least one collection - - Scenario: Delete a collection - When I click the *Options* drop-down for the collection I want to edit - And I select the *Delete collection* option - Then I see the *Delete collection* modal window - When I click the *Delete collection* button - Then I see the *Collections* tab - And I see that the deleted collection is no longer displayed diff --git a/integration_testing/features/manage-collections/edit-a-collection.feature b/integration_testing/features/manage-collections/edit-a-collection.feature deleted file mode 100755 index b0ba1680ca..0000000000 --- a/integration_testing/features/manage-collections/edit-a-collection.feature +++ /dev/null @@ -1,23 +0,0 @@ -Feature: Edit a collection - - Background: - Given I am signed in to Studio - And I am on the *Collections* tab - And there is at least one collection - - Scenario: Edit a collection - When I click the *Options* drop-down for the collection I want to edit - And I select the *Edit collection* option - Then I see the collection's details - And I can change the collection name - When I click the *Select channels* button - Then I am on the *Content library* tab # alternatively I can select the *My channels* or *View-only* tab - When I select one or several channels - And I click the *Finish* button - Then I see the the *New collection* screen with the selected channels - When I click the *Remove* button - Then I see a message *Channel removed* - When I click the *Save and close* button - Then I see the *Collections* tab - And I see the edited collection - And I see the number of channels in that collection diff --git a/integration_testing/features/manage-collections/manage-collections.feature b/integration_testing/features/manage-collections/manage-collections.feature new file mode 100755 index 0000000000..ae1fcdb9d9 --- /dev/null +++ b/integration_testing/features/manage-collections/manage-collections.feature @@ -0,0 +1,71 @@ +Feature: Manage collections + + Background: + Given I am signed in to Studio + And I am at the *Collections* page + + Scenario: Create an empty collection + When I click the *New collection* button + And I fill in the *Collection name* field + And I click the *Create* button + Then I see the *Collections* tab + And I see the newly created collection + And I see that the number of channels is 0 + + Scenario: Create a collection by selecting channels + When I click the *New collection* button + And I click the *Select channels* button + Then I see the *Select channels* page + And I am on the *Content library* tab # alternatively I can select *My channels* or the *View-only* tab + When I select one or several channels + And I click the *Finish* button + Then I see the the *New collection* screen with the added channels + When I click the *Create* button + Then I see the *Collections* tab + And I see the newly created collection + And I see the correct number of channels in that collection + + Scenario: Create a collection by searching for channels + When I click the *New collection* button + And I click the *Select channels* button + Then I see the *Select channels* page + And I am on the *Content library* tab # alternatively I can select the *My channels* or *View-only* tab + When I enter a search term in the *Search for a channel* field + And I select one or several channels + And I click the *Finish* button + Then I see the *New collection* screen with the selected channels + When I click the *Create* button + Then I see the *Collections* tab + And I see the newly created collection + And I see the correct number of channels in that collection + + Scenario: Edit a collection + When I click the *Options* drop-down for the collection I want to edit + And I select the *Edit collection* option + Then I see the collection's details + And I can change the collection name + When I click the *Select channels* button + Then I am on the *Content library* tab # alternatively I can select the *My channels* or *View-only* tab + When I select one or several channels + And I click the *Finish* button + Then I see the the *New collection* screen with the selected channels + When I click the *Remove* button + Then I see a *Channel removed* snackbar message + When I click the *Save and close* button + Then I see the *Collections* tab + And I see the edited collection + And I see the number of channels in that collection + + Scenario: Delete a collection + When I click the *Options* drop-down for the collection I want to edit + And I select the *Delete collection* option + Then I see the *Delete collection* modal window + When I click the *Delete collection* button + Then I see the *Collections* tab + And I see that the deleted collection is no longer displayed + + Scenario: Learn about collections + When I click the *Learn about collections* link + Then I see the *About collections* modal + And I see the following info text: A collection contains multiple Kolibri Studio channels that can be imported at one time to Kolibri with a single collection token. You can make a collection by selecting the channels you want to be imported together. You will need Kolibri version 0.12.0 or higher to import channel collections + When I click the *Close* button diff --git a/integration_testing/features/manage-resources/bulk-editing/bul-edit-multiple-resources.feature b/integration_testing/features/manage-resources/bulk-editing/bul-edit-multiple-resources.feature new file mode 100755 index 0000000000..603ba9c849 --- /dev/null +++ b/integration_testing/features/manage-resources/bulk-editing/bul-edit-multiple-resources.feature @@ -0,0 +1,93 @@ +Feature: Bulk edit multiple resources + + Background: + Given I am signed in to Studio + And I am at the channel editor page + And there are available resources of different types + + Scenario: Bulk edit folders + When I select at least 2 folders + And I click the *Edit details* icon + Then I see the *Edit details* modal for the selected folders + And I see that all the folders are selected in the left section + And I see the following text at the top: Editing details for N folders, 0 resources + And I see the *Basic information* section containing the *Tags* field + And I see the *Audience* section with the *Language* drop-down + When I enter a new tag + And I select a new language + And I click the *Finish* button + Then I am back at the channel editor + When I select again the same folders + And I click the *Edit details* icon + Then I see the *Edit details* modal for the selected folders + And I can see that my previously applied changes are saved + + Scenario: Bulk edit exercises + When I select at least 2 exercises + And I click the *Edit details* icon + Then I see the *Edit details* modal for the selected exercises + And I see that all the exercises are selected in the left section + And I see the following text at the top: Editing details for 0 folders, N resources + And I see the *Basic information* section containing the *Tags* field + And I see the *Assessment options* section with the *Randomize question order for learners* checkbox + And I see the *Completion* section with the *Allow learners to mark as complete* checkbox, the *Completion* and *Goal* drop-downs + And I see the *Audience* section with the *Language* and *Visible to* drop-downs + And I see the *Source* section with *Author*, *Provider*, *Aggregator*, *License* and *Copyright* holder fields + When I make any modifications + And I click the *Finish* button + Then I am back at the channel editor + When I select again the same exercises + And I click the *Edit details* icon + Then I see the *Edit details* modal for the selected exercises + And I can see that my previously applied changes are saved + + Scenario: Bulk edit resources of the same type + When I select at least 2 resources of the same type + And I click the *Edit details* icon + Then I see the *Edit details* modal for the selected resources + And I see that all the resources are selected in the left section + And I see the following text at the top: Editing details for 0 folders, N resources + And I see the *Basic information* section containing the *Tags* field + And I see the *Completion* section with the *Allow learners to mark as complete* checkbox, the *Completion* and *Goal* drop-downs + And I see the *Audience* section with the *Language* and *Visible to* drop-downs + And I see the *Source* section with *Author*, *Provider*, *Aggregator*, *License* and *Copyright* holder fields + When I make any modifications + And I click the *Finish* button + Then I am back at the channel editor + When I select again the same resources + And I click the *Edit details* icon + Then I see the *Edit details* modal for the selected resources + And I can see that my previously applied changes are saved + + Scenario: Bulk edit resources of different types + When I select at least 2 resources of different types + And I click the *Edit details* icon + Then I see the *Edit details* modal for the selected resources + And I see that all the resources are selected in the left section + And I see the following text at the top: Editing details for 0 folders, N resources + And I see the *Basic information* section containing the *Tags* field + And I see the *Audience* section with the *Language* and *Visible to* drop-downs + And I see the *Source* section with *Author*, *Provider*, *Aggregator*, *License* and *Copyright* holder fields + When I make any modifications + And I click the *Finish* button + Then I am back at the channel editor + When I select again the same resources + And I click the *Edit details* icon + Then I see the *Edit details* modal for the selected resources + And I can see that my previously applied changes are saved + + Scenario: Bulk edit folders and resources + When I select at least 1 resource and 1 folder + And I click the *Edit details* icon + Then I see the *Edit details* modal for the selected folders and resources + And I see that all the folders and resources are selected in the left section + And I see the following text at the top: Editing details for N folders, N resources + And I see the *Basic information* section containing the *Tags* field + And I see the *Audience* section with the *Language* drop-down + When I make any modifications + And I click the *Finish* button + Then I am back at the channel editor + When I select again the same resources + And I click the *Edit details* icon + Then I see the *Edit details* modal for the selected folders and resources + And I can see that my previously applied changes are saved diff --git a/integration_testing/features/manage-resources/clipboard/expand-and-collapse-clipboard-folders.feature b/integration_testing/features/manage-resources/clipboard/expand-and-collapse-clipboard-folders.feature deleted file mode 100755 index 3dfa83ff2c..0000000000 --- a/integration_testing/features/manage-resources/clipboard/expand-and-collapse-clipboard-folders.feature +++ /dev/null @@ -1,15 +0,0 @@ -Feature: Expand and collapse folders in the clipboard - - Background: - Given I am signed in to Studio - And I am on the channel editor view - - Scenario: Expand and collapse folders in the clipboard - When I click on clipboard button on the bottom-right of the screen - Then the clipboard opens up - When I expand a folder on the clipboard via the downward arrow button - Then I see the items within the folder appear - And I see the downward arrow button changes to an upward arrow button - When I collapse a folder on the clipboard via the upward arrow button - Then I see the items within that folder disappear - And I see the upward arrow button changes to an upward arrow button diff --git a/integration_testing/features/manage-resources/clipboard/go-to-resource-original-location.feature b/integration_testing/features/manage-resources/clipboard/go-to-resource-original-location.feature deleted file mode 100755 index e744f5f57f..0000000000 --- a/integration_testing/features/manage-resources/clipboard/go-to-resource-original-location.feature +++ /dev/null @@ -1,12 +0,0 @@ -Feature: Go to resource original location - - Background: - Given I am signed in to Studio - And I am on the channel editor view - - Scenario: Go to resource original location - When I click on clipboard button on the bottom-right of the screen - Then the clipboard opens up - When I right click a topic or resource in the clipboard - And I click *Go to original location* - Then a new tab opens and navigates me to the channel and node location in question that I pulled that topic or resource from diff --git a/integration_testing/features/manage-resources/clipboard/preview-resource-in-clipboard.feature b/integration_testing/features/manage-resources/clipboard/preview-resource-in-clipboard.feature deleted file mode 100755 index b86509850d..0000000000 --- a/integration_testing/features/manage-resources/clipboard/preview-resource-in-clipboard.feature +++ /dev/null @@ -1,11 +0,0 @@ -Feature: Preview resource in the clipboard - - Background: - Given I am signed in to Studio - And I am on the channel editor view - - Scenario: Preview resource in the clipboard - When I click on clipboard button on the bottom-right of the screen - Then the clipboard opens up - When I click on a topic title or resource title - Then I see the clipboard content transition to the preview panel diff --git a/integration_testing/features/manage-resources/clipboard/remove-from-clipboard-via-right-click.feature b/integration_testing/features/manage-resources/clipboard/remove-from-clipboard-via-right-click.feature deleted file mode 100755 index 3b258f6891..0000000000 --- a/integration_testing/features/manage-resources/clipboard/remove-from-clipboard-via-right-click.feature +++ /dev/null @@ -1,13 +0,0 @@ -Feature: Remove resource from the clipboard via right click - - Background: - Given I am signed in to Studio - And I am on the channel editor view - - Scenario: Remove resource from the clipboard via right click - When I click on clipboard button on the bottom-right of the screen - Then the clipboard opens up - When I right click a topic or a resource - And I click *Delete* in the dropdown menu that appears - Then the dropdown menu disappears - And I see that the resource in question is removed from the clipboard diff --git a/integration_testing/features/manage-resources/clipboard/remove-from-clipboard-via-selection-bar.feature b/integration_testing/features/manage-resources/clipboard/remove-from-clipboard-via-selection-bar.feature deleted file mode 100755 index 9118298b0a..0000000000 --- a/integration_testing/features/manage-resources/clipboard/remove-from-clipboard-via-selection-bar.feature +++ /dev/null @@ -1,14 +0,0 @@ -Feature: Remove resource from the clipboard via selection bar - - Background: - Given I am signed in to Studio - And I am on the channel editor view - - Scenario: Remove resource from the clipboard via selection bar - When I click on clipboard button on the bottom-right of the screen - Then the clipboard opens up - When I select a topic or resource via its checkbox - And I see that the top bar changes to an actions bar - And I click the *Delete* button in the actions bar - Then I see that the resource in question disappears from the clipboard - And I see a snackbar appears to confirm the resource is removed diff --git a/integration_testing/features/manage-resources/clipboard/remove-multiple-resources-from-the-clipboard.feature b/integration_testing/features/manage-resources/clipboard/remove-multiple-resources-from-the-clipboard.feature deleted file mode 100755 index 6af63619ca..0000000000 --- a/integration_testing/features/manage-resources/clipboard/remove-multiple-resources-from-the-clipboard.feature +++ /dev/null @@ -1,13 +0,0 @@ -Feature: Remove multiple resources from the clipboard - - Background: - Given I am signed in to Studio - And I am on the channel editor view - - Scenario: Remove multiple resources from the clipboard - When I click on clipboard button on the bottom-right of the screen - Then the clipboard opens up - When I select multiple resource checkboxes - And I click the remove button in the actions bar - Then I see all my resources removed from the clipboard - And I see a snackbar confirming that the resources were removed diff --git a/integration_testing/features/manage-resources/clipboard/undo-removal-of-clipboard-resources.feature b/integration_testing/features/manage-resources/clipboard/undo-removal-of-clipboard-resources.feature deleted file mode 100755 index d0f34ce3d4..0000000000 --- a/integration_testing/features/manage-resources/clipboard/undo-removal-of-clipboard-resources.feature +++ /dev/null @@ -1,19 +0,0 @@ -Feature: Undo the removal of a clipboard resources - - Background: - Given I am signed in to Studio - And I am on the channel editor view - - Scenario: Undo the removal of a clipboard resource - When I click on clipboard button on the bottom-right of the screen - Then the clipboard opens up - When I have removed a resource from the clipboard - And I see a snackbar confirming the resource is removed - And I click the *Undo* button on the snackbar - Then I see the resource back on the clipboard - - Scenario: Undo removal of multiple resources - When I have removed several resources from the clipboard - And I see the snackbar confirmation that the resources were removed - And I click the *Undo* button on the snackbar - Then I see the resources are back to the clipboard diff --git a/integration_testing/features/manage-resources/copy-resources/cancel-copy.feature b/integration_testing/features/manage-resources/copy-resources/cancel-copy.feature deleted file mode 100755 index 0552020ba8..0000000000 --- a/integration_testing/features/manage-resources/copy-resources/cancel-copy.feature +++ /dev/null @@ -1,21 +0,0 @@ -Feature: Cancel copy - - Background: - Given I am signed in to Studio - And I am on the channel editor view - - Scenario: Cancel copy of single resource - When I click on clipboard button on the bottom-right of the screen - Then the clipboard opens up - When the copy creation is in-progress - And I click on *Undo* text on the snackbar - Then the operation ceases and the snackbar disappears - And I don't see any copies made on the clipboard - - Scenario: Cancel copy of multiple resources - When I click on clipboard button on the bottom-right of the screen - Then the clipboard opens up - When there is a copy creation of multiple selections in progress - And I click on the *Cancel* text on the snackbar - Then the operation ceases and the snackbar disappears - And I don't see any copies made on the clipboard diff --git a/integration_testing/features/manage-resources/copy-resources/cancel-sync.feature b/integration_testing/features/manage-resources/copy-resources/cancel-sync.feature deleted file mode 100755 index f18d8b66cd..0000000000 --- a/integration_testing/features/manage-resources/copy-resources/cancel-sync.feature +++ /dev/null @@ -1,19 +0,0 @@ -Feature: Cancel sync - - Background: - Given I have made sync parameter selections - And the sync task is in-progress - - Scenario: Cancel sync - When I click the *Stop sync* button - Then I see a warning dialog appear - When I press *Yes, stop task* button - Then the sync task stops - And I see a snackbar confirmation for task stopped - And I am back in the channel editor - - Scenario: Finish the sync operation - When the sync progress bar finishes - Then the progress dialog disappears - And I am back in the channel editor page - And a snackbar appears to confirm the sync completion diff --git a/integration_testing/features/manage-resources/copy-resources/copy-resource-via-right-click.feature b/integration_testing/features/manage-resources/copy-resources/copy-resource-via-right-click.feature deleted file mode 100755 index 851a97069b..0000000000 --- a/integration_testing/features/manage-resources/copy-resources/copy-resource-via-right-click.feature +++ /dev/null @@ -1,16 +0,0 @@ -Feature: Copy resource via right click - - Background: - Given I am signed in to Studio - And I am on the channel editor view - - Scenario: Copy resource via right click - When I click on clipboard button on the bottom-right of the screen - Then the clipboard opens up - When I right click a topic or a resource - And I click *Make a copy* in the dropdown menu that appears - Then I see a *Creating copy* snackbar appears to confirm the copy is in progress - When the copy creation is finished - Then the *Creating copy* snackbar disappears - And I see another snackbar appears to confirm *Copy created* - And I see the newly made copy appearss in the clipboard below the original diff --git a/integration_testing/features/manage-resources/copy-resources/copy-resource-via-selection-bar.feature b/integration_testing/features/manage-resources/copy-resources/copy-resource-via-selection-bar.feature deleted file mode 100755 index c2fe376b92..0000000000 --- a/integration_testing/features/manage-resources/copy-resources/copy-resource-via-selection-bar.feature +++ /dev/null @@ -1,17 +0,0 @@ -Feature: Copy resource via selection bar - - Background: - Given I am signed in to Studio - And I am on the channel editor view - - Scenario: Copy resource via selection bar - When I click on clipboard button on the bottom-right of the screen - Then the clipboard opens up - When I select a topic or resource via its checkbox - And I see that the top bar changes to an actions bar - And I click copy icon in the actions bar - Then I see a *Copying* loader appears to confirm the copy in progress - When the copy creation is finished - Then the *Copying* loader disappears - And I see another snackbar appears to confirm *Copy created* - And I see the newly made copy appears in the clipboard below the original diff --git a/integration_testing/features/manage-resources/copy-resources/copy-resources.feature b/integration_testing/features/manage-resources/copy-resources/copy-resources.feature new file mode 100755 index 0000000000..8cf8f24107 --- /dev/null +++ b/integration_testing/features/manage-resources/copy-resources/copy-resources.feature @@ -0,0 +1,32 @@ +Feature: Copy resources + + Background: + Given I am signed in to Studio + And I am at the channel editor + And there are folders and resources + + Scenario: Copy a resource via right click + When I right click a folder or a resource + And I select the *Make a copy* option from the menu + Then I see a *Copying...* snackbar message + When the copying operation has finished + Then I see a *Copy operation complete UNDO* snackbar message + And I see the newly copied folder or resource + + Scenario: Copy a resource via the selection bar + When I select a folder or a resource's checkbox + Then I see that the top bar changes to an actions bar + When I click the *Make a copy* icon + Then I see a *Copying...* snackbar message + When the copying operation has finished + Then I see a *Copy operation complete UNDO* snackbar message + And I see the newly copied folder or resource + + Scenario: Copy multiple resources + When I select multiple folders or resources + Then I see that the top bar changes to an actions bar + When I click the *Make a copy* icon + Then I see a *Copying...* snackbar message + When the copying operation has finished + Then I see a *Copy operation complete UNDO* snackbar message + And I see the newly copied folder or resource diff --git a/integration_testing/features/manage-resources/copy-resources/copy-to-clipboard.feature b/integration_testing/features/manage-resources/copy-resources/copy-to-clipboard.feature index e29157d74c..31003e0ff7 100755 --- a/integration_testing/features/manage-resources/copy-resources/copy-to-clipboard.feature +++ b/integration_testing/features/manage-resources/copy-resources/copy-to-clipboard.feature @@ -2,65 +2,47 @@ Feature: Copy to clipboard Background: Given I am signed in to Studio - And I am on the editor page - And I have edit permissions for - - Scenario: Copy a topic to clipboard from *···* (more options) - When I hover over a topic - And I click on a *···* button for more options - Then I can see the *Copy to clipboard* option - When I select the *Copy to clipboard* option - Then I can see the snackbar notification - And I see the *Undo* button - When I click the *Undo* button - Then I don't see the snackbar notification any more - And I don't see the topic in the clipboard - - Scenario: Copy a resource to clipboard from *···* (more options) - When I hover over a resource - And I click on a *···* button for more options - Then I can see the *Copy to clipboard* option - When I select the *Copy to clipboard* option - Then I can see the snackbar notification - And I see the *Undo* button - When I click the *Undo* button - Then I don't see the snackbar notification any more - And I don't see the resource in the clipboard - - Scenario: Copy a topic to clipboard from toolbar - When I check the topic checkbox - Then I see the toolbar options for topic - When I click the *Copy selected items to clipboard* toolbar button - Then I can see the snackbar notification - And I see the *Undo* button - When I click the *Undo* button - Then I don't see the snackbar notification any more - And I don't see the topic in the clipboard - - Scenario: Copy a resource to clipboard from toolbar - When I check the resource checkbox - Then I see the toolbar options for resource - When I click the *Copy selected items to clipboard* toolbar button - Then I can see the snackbar notification - And I see the *Undo* button - When I click the *Undo* buttons - Then I don't see the snackbar notification any more - And I don't see the resource in the clipboard - - Scenario: Copy multiple resources - When I click on clipboard button on the bottom-right of the screen + And I am on the channel editor page + And I have edit permissions for the channel + + Scenario: Copy a folder to the clipboard from *···* (Options) + When I hover over a folder + And I click on the *···* (Options) button + And I select the *Copy to clipboard* option + Then I see the *Copied to clipboard* snackbar message + When I click the clipboard icon in the lower right corner + Then I can see the copied folder in the clipboard + + Scenario: Copy a resource to the clipboard from *···* (Options) + When I hover over a resource + And I click on the *···* (Options) button + And I select the *Copy to clipboard* option + Then I see the *Copied to clipboard* snackbar message + When I click the clipboard icon in the lower right corner + Then I can see the copied resource in the clipboard + + Scenario: Copy a folder to the clipboard from the toolbar + When I check a folder's checkbox + Then I see the toolbar options for the folder + When I click the *Copy to clipboard* toolbar button + Then I see the *Copied to clipboard* snackbar message + When I click the clipboard icon in the lower right corner + Then I can see the copied folder in the clipboard + + Scenario: Copy a resource to the clipboard from the toolbar + When I check a resource's checkbox + Then I see the toolbar options for the resource + When I click the *Copy to clipboard* toolbar button + Then I see the *Copied to clipboard* snackbar message + When I click the clipboard icon in the lower right corner + Then I can see the copied folder in the clipboard + + Scenario: Copy multiple resources within the clipboard + When I click the clipboard button at the bottom-right of the screen Then the clipboard opens ups When I select multiple items via checkboxes And I see that the select bar has changed to an actions bar - And I click the copy button in the actions bar - Then I see a snackbar appears with a *Creating copies* message - When the copy creation process is finished - Then the *Creating copies* snackbar disappears - And a snackbar *Copies created* appears - And I see that copies are created in my clipboard - - Scenario: Copy multiple topics to clipboard from toolbar - # same as for single resources, just the snackbar notification indicates the number of items to remove - - Examples: - | channel | topic | resource | + And I click the *Make a copy* button in the actions bar + Then I see a *Copied in clipboard* snackbar message + When the copy creation process has finished + Then I see that the copies are created in my clipboard diff --git a/integration_testing/features/manage-resources/copy-resources/manage-clipboard.feature b/integration_testing/features/manage-resources/copy-resources/manage-clipboard.feature new file mode 100755 index 0000000000..fae1869b56 --- /dev/null +++ b/integration_testing/features/manage-resources/copy-resources/manage-clipboard.feature @@ -0,0 +1,57 @@ +Feature: Manage the clipboard + + Background: + Given I am signed in to Studio + And I am at the channel editor for an editable channel + And there are folders and resources copied to the clipboard + + Scenario: Preview a resource in the clipboard + When I click on clipboard button on the bottom-right of the screen + Then the clipboard opens up + When I click on a folder title or resource title + Then I see the clipboard content transition to the preview panel + + Scenario: Expand and collapse folders in the clipboard + Given I am viewing the clipboard + When I expand a folder on the clipboard via the downward arrow button + Then I see the items within the folder appear + And I see the downward arrow button changes to an upward arrow button + When I collapse a folder on the clipboard via the upward arrow button + Then I see the items within that folder disappear + And I see the upward arrow button changes to an upward arrow button + + Scenario: Go to the resource's original location + Given I am viewing the clipboard + When I right click a folder or resource + And I click *Go to original location* + Then a new tab opens + And I see the resource in it's original location + + Scenario: Move an item in the clipboard via right click + Given I am viewing the clipboard + When I right click a folder or a resource + And click the *Move to...* option from the menu + Then I see the *Move N folder(s), N resources into: * modal + And I can choose a new directory or channel to move the items to + + Scenario: Move multiple resources + Given I am viewing the clipboard + When I select multiple items + Then I see that the select bar changes to an actions bar + When I click the *Move* button in the actions bar + Then I see the *Move N folder(s), N resources into: * modal + And I can choose a new directory or channel to move the items to + + Scenario: Delete a resource from the clipboard via right click + Given I am viewing the clipboard + When I right click a folder or a resource + And I click *Delete* from the menu that appears + Then I see that the resource is removed from the clipboard + And I see a *Deleted from clipboard* snackbar message + + Scenario: Delete multiple resources from the clipboard + Given I am viewing the clipboard + When I select multiple resources + And I click the *Delete* button in the actions bar + Then I see that all of the selected resources are removed from the clipboard + And I see a *Deleted from clipboard* snackbar message diff --git a/integration_testing/features/manage-resources/create-exercise.feature b/integration_testing/features/manage-resources/create-exercise.feature index b731b2f884..739839a59d 100755 --- a/integration_testing/features/manage-resources/create-exercise.feature +++ b/integration_testing/features/manage-resources/create-exercise.feature @@ -2,27 +2,80 @@ Feature: Create an exercise Background: Given I am signed in to Studio - And I am on the channel editor page + And I am at the channel editor page - Scenario: Create an exercise + Scenario: Create an exercise with questions of type *Single choice* When I click the *Add* button And I select the *New exercise* option Then I see the *Details* tab of the *New exercise* modal - And I can set the exercise title, description and tags - And I can select the mastery criteria - And I can choose if the questions are randomized - And I can add/change a thumbnail - And I can select language and visibility - And I can fill in the copyright information - When I click the *Questions* tab - And I click the *New question* button - Then I can add the question text and images in the question editor field - And I can select the response type - And I can provide answers for each question - And I can provide hints for each question - And I can randomize the answer order - When I click the *Related* tab - Then I can click *Add previous step* and or *Add next step* - And I can click the *Add* button to add a step + When I fill in the required fields (*Title*, *Completion* and *Goal*) + And I click the *Questions* tab + Then I see the *New question* button + When I click the *New question* button + Then I see the question editor + And I see that *Single choice* is the default *Response type* + When I fill in the question text in the question editor field + And I add an image + And I provide answers + And I select one answer as the correct answer + And I provide a hint + Then I've completed the creation of the question of type *Single choice* #repeat the same steps to add as many questions as necessary When I click the *Finish* button - Then I am returned at the main topic tree view + Then I am returned to the main topic tree view + And I can see the newly created exercise + + Scenario: Create an exercise with questions of type *Multiple choice* + When I click the *Add* button + And I select the *New exercise* option + Then I see the *Details* tab of the *New exercise* modal + When I fill in the required fields (*Title*, *Completion* and *Goal*) + And I click the *Questions* tab + Then I see the *New question* button + When I click the *New question* button + Then I see the question editor + When I select the *Multiple choice* option from the *Response type* drop-down + And I fill in the question text in the question editor field + And I add an image + And I provide answers + And I select at least one answer as the correct answer + And I provide a hint + Then I've completed the creation of the question of type *Multiple choice* #repeat the same steps to add as many questions as necessary + When I click the *Finish* button + Then I am returned to the main topic tree view + And I can see the newly created exercise + + Scenario: Create an exercise with questions of type *Numeric input* + When I click the *Add* button + And I select the *New exercise* option + Then I see the *Details* tab of the *New exercise* modal + When I fill in the required fields (*Title*, *Completion* and *Goal*) + And I click the *Questions* tab + Then I see the *New question* button + When I click the *New question* button + Then I see the question editor + When I select the *Numeric input* option from the *Response type* drop-down + And I fill in the question text in the question editor field + And I provide answers + And I provide a hint + Then I've completed the creation of the question of type *Numeric input* #repeat the same steps to add as many questions as necessary + When I click the *Finish* button + Then I am returned to the main topic tree view + And I can see the newly created exercise + + Scenario: Create an exercise with questions of type *True/False* + When I click the *Add* button + And I select the *New exercise* option + Then I see the *Details* tab of the *New exercise* modal + When I fill in the required fields (*Title*, *Completion* and *Goal*) + And I click the *Questions* tab + Then I see the *New question* button + When I click the *New question* button + Then I see the question editor + When I select the *True/False* option from the *Response type* drop-down + And I fill in the question text in the question editor field + And I select either *True* or *False* as the correct answer + And I provide a hint + Then I've completed the creation of the question of type *True/False* #repeat the same steps to add as many questions as necessary + When I click the *Finish* button + Then I am returned to the main topic tree view + And I can see the newly created exercise diff --git a/integration_testing/features/manage-resources/delete-resources.feature b/integration_testing/features/manage-resources/delete-resources.feature index 586ed11033..c6bb9c3d1b 100755 --- a/integration_testing/features/manage-resources/delete-resources.feature +++ b/integration_testing/features/manage-resources/delete-resources.feature @@ -2,26 +2,31 @@ Feature: Delete resources permanently Background: Given I am signed in to Studio - And I am on the channel editor page - And I have one removed resource from my channel editor tree + And I am at the channel editor page + And I have removed at least one resource from my channel editor tree + And I am at the *Trash* page Scenario: Delete a single resource permanently - When I click the *Trash* button in the top appbar - Then I see one resource removed from my channel - When I select that resource - And I click *Delete* in the bottom bar - Then I see a warning message appear + When I select a resource + And I click the *Delete* button + Then I see the *Permanently delete 0 folders, 1 resource?* modal When I click the *Delete permanently* button - Then the selection disappear from the list - And a snackbar appears to confirm the deletion - And I see an empty state message + Then the selected resource is removed from the list + And I see a *Permanently deleted* snackbar message Scenario: Delete multiple resources permanently - When I click the *Trash* button in the top appbar - Then I see a list of resources removed from my channel - When I select multiple resources from the list - And I click *Delete* in the bottom bar - Then I see a warning message appear + When I select several resources (and/or folders) + And I click the *Delete* button + Then I see the *Permanently delete N folder(s), N resource(s)?* modal When I click the *Delete permanently* button - Then the selections disappear from the list - And a snackbar appears to confirm the deletion of multiple resources + Then the selected resources are removed from the list + And I see a *Permanently deleted* snackbar message + + Scenario: Delete all resources permanently + When I select all resources (and/or folders) + And I click the *Delete* button + Then I see the *Permanently delete N folder(s), N resource(s)?* modal + When I click the *Delete permanently* button + Then the selected resources are removed from the list + And I see a *Permanently deleted* snackbar message + And I see *Trash is empty Resources removed from this channel will appear here* diff --git a/integration_testing/features/manage-resources/edit-modal/allow-marking-as-complete.feature b/integration_testing/features/manage-resources/edit-modal/allow-marking-as-complete.feature index 118aa25f49..5dd7d182da 100755 --- a/integration_testing/features/manage-resources/edit-modal/allow-marking-as-complete.feature +++ b/integration_testing/features/manage-resources/edit-modal/allow-marking-as-complete.feature @@ -4,20 +4,18 @@ Feature: Allow marking as complete Background: Given I am signed into Studio And I am in an editable channel with all resource types - And I see the *Edit details* modal for the - And the *Allow marking as complete* checkbox is empty + And I see the *Edit details* modal for a resource + And the *Allow marking as complete* checkbox is not checked Scenario: Toggle *Allow learners to mark as complete* setting - When I click the *Allow marking as complete* checkbox - Then I see the *Allow marking as complete* is selected - When I click *FINISH* - Then I see the in the topic tree + When I select the *Allow marking as complete* checkbox + And I click the *Finish* button + Then I see the resource in the topic tree And I do not see an error icon Scenario: Uncheck the *Allow learners to mark as complete* setting Given the *Allow marking as complete* checkbox is checked When I uncheck the selected *Allow marking as complete* checkbox - Then I see the *Allow marking as complete* is empty - When I click *FINISH* - Then I see the in the topic tree + And I click the *Finish* button + Then I see the resource in the topic tree And I do not see an error icon diff --git a/integration_testing/features/manage-resources/edit-modal/edit-accessibility-options.feature b/integration_testing/features/manage-resources/edit-modal/edit-accessibility-options.feature index 848f1f7b98..ee37b68425 100755 --- a/integration_testing/features/manage-resources/edit-modal/edit-accessibility-options.feature +++ b/integration_testing/features/manage-resources/edit-modal/edit-accessibility-options.feature @@ -1,15 +1,12 @@ -Feature: Edit *Accessibility* options - Across all file types - -# Comment here +Feature: Edit *Accessibility* options for all file types Background: - Given I am signed into Studio + Given I am signed-in to Studio And I am in an editable channel - When I right click - When I click *Edit details* - Then I see the edit modal for the - And I see the *Accessibility* section underneath the *Audience* section + When I right click a resource + And I click *Edit details* + Then I see the edit modal for the resource + And I see the *Accessibility* section under the *Audience* section Scenario: View options for .MP4 Given I am viewing an .MP4 in the edit modal @@ -70,17 +67,17 @@ Feature: Edit *Accessibility* options Then I see *Visual elements in the resource have descriptions that can be accessed by screen readers for the benefit of blind learners* Scenario: Select and deselect accessibility options - Given that for any there are some checkbox options in the *Accessibility* section - When I select a checkbox for an