|
| 1 | +Feature: Administration - Manage channels |
| 2 | + A Kolibri Studio administrator should be able to view and manage channels related data |
| 3 | + |
| 4 | + Background: |
| 5 | + Given Kolibri Studio is accessible at https://studio.learningequality.org/ or any of the test environments |
| 6 | + And I am signed in as an administrator user |
| 7 | + And I am at *Administration > Channels* |
| 8 | + |
| 9 | + Scenario: View the *All channels* table |
| 10 | + When I look at the *Administration > Channels* page |
| 11 | + Then I see the table with all of the available channels |
| 12 | + And I see an *N channels* label with the total number of created channels |
| 13 | + And I see a *Channel type* filter with *All channels* set as the default value |
| 14 | + And I see a *Channel status* filter with *Live* set as the default value |
| 15 | + And I see a *Language* filter with no selected value |
| 16 | + And I see a *Search for a channel...* field |
| 17 | + And I see the following table columns: Channel name, Token ID, Channel ID, Size, Editors, Viewers, Date created, Last updated, Demo URL, Source URL, Latest community library submission, Actions |
| 18 | + And for each row I see the correct value in the respective column |
| 19 | + When I click on the *Actions* drop-down for a row |
| 20 | + Then I see the following options: View editors, Download PDF, Download CSV, Make public, Delete channel |
| 21 | + |
| 22 | + Scenario: See the *Kolibri Studio Library* table |
| 23 | + Given I am at *Administration > Channels* |
| 24 | + When I select the *Kolibri Studio Library* option from the *Channel type* drop-down |
| 25 | + Then I see the table with all of the available *Kolibri Studio Library* channels |
| 26 | + And I see an *N channels* label with the total number of created channels |
| 27 | + And I see a *Channel status* filter with *Live* set as the default value and a *Sushi chef* option |
| 28 | + And I see a *Language* filter with no selected value |
| 29 | + And I see a *Search for a channel...* field |
| 30 | + And I see the following table columns: Channel name, Token ID, Channel ID, Size, Editors, Viewers, Date created, Last updated, Demo URL, Source URL, Latest community library submission, Actions |
| 31 | + And for each row I see the correct value in the respective column |
| 32 | + When I click on the *Actions* drop-down for a row |
| 33 | + Then I see the following options: View editors, Download PDF, Download CSV, Make private |
| 34 | + |
| 35 | + Scenario: See the *Community Library* table |
| 36 | + Given I am at *Administration > Channels* |
| 37 | + When I select the *Community Library* option from the *Channel type* drop-down |
| 38 | + Then I see the table with all of the available *Community Library* channels |
| 39 | + And I see an *N channels* label with the total number of created channels |
| 40 | + And I see a *Channel status* filter with *Live* set as the default value and the following additional options: Needs review, Published, Sushi chef |
| 41 | + And I see a *Language* filter with no selected value |
| 42 | + And I see a *Search for a channel...* field |
| 43 | + And I see the following table columns: Channel name, Token ID, Channel ID, Size, Editors, Viewers, Date created, Last updated, Demo URL, Source URL, Latest community library submission, Actions |
| 44 | + And for each row I see the correct value in the respective column |
| 45 | + When I click on the *Actions* drop-down for a row |
| 46 | + Then I see the following options: View editors, Download PDF, Download CSV, Make public, Delete channel |
| 47 | + |
| 48 | + Scenario: See the *Unlisted channels* table |
| 49 | + Given I am at *Administration > Channels* |
| 50 | + When I select the *Unlisted channels* option from the *Channel type* drop-down |
| 51 | + Then I see the table with all of the available *Unlisted channels* channels |
| 52 | + And I see an *N channels* label with the total number of created channels |
| 53 | + And I see a *Channel status* filter with *Live* set as the default value and the following additional options: Draft, Published, Sushi chef, Deleted |
| 54 | + And I see a *Language* filter with no selected value |
| 55 | + And I see a *Search for a channel...* field |
| 56 | + And I see the following table columns: Channel name, Token ID, Channel ID, Size, Editors, Viewers, Date created, Last updated, Demo URL, Source URL, Latest community library submission, Actions |
| 57 | + And for each row I see the correct value in the respective column |
| 58 | + When I click on the *Actions* drop-down for a row |
| 59 | + Then I see the following options: View editors, Download PDF, Download CSV, Make public, Delete channel |
| 60 | + |
| 61 | + Scenario: Filter by status and language |
| 62 | + When I change the value of the *Channel status* drop-down to one of the available values |
| 63 | + Then I see only results matching the applied filter e.g. if I have selected *Published* then I am seeing only published channels |
| 64 | + When I select a value from the *Language* drop-down |
| 65 | + Then I see only results matching the applied language filter |
| 66 | + When there aren't any results for the applied filter or combination of filters |
| 67 | + Then I see a *No users found* message |
| 68 | + |
| 69 | + Scenario: Search for a channel |
| 70 | + When I enter the name or part of the name of a channel, token, channel id or editor in the *Search for a channel...* field |
| 71 | + Then I am seeing only results matching the entered keyword |
| 72 | + When there aren't any results for the entered keyword |
| 73 | + Then I see a *No users found* message |
| 74 | + |
| 75 | + Scenario: View the channel details page |
| 76 | + When I click on the name of a channel |
| 77 | + Then I see the channel details page |
| 78 | + And I am at the *Channel info* tab |
| 79 | + And I can see all of the available channel metadata such as token, version, language etc. |
| 80 | + |
| 81 | + Scenario: View the channel editors |
| 82 | + When I click the *Actions* drop-down |
| 83 | + And I select the *View editors* option |
| 84 | + Then I see the *Users* table |
| 85 | + And I can see that a search has been initiated for the specified channel |
| 86 | + And I can see all of the channel editors |
| 87 | + |
| 88 | + Scenario: Download the PDF and CSV for a channel |
| 89 | + When I click the *Actions* drop-down |
| 90 | + And I select the *Download PDF* option |
| 91 | + Then I see the *Generating PDF* snackbar message |
| 92 | + And I can download the generated .pdf file on my device and view it |
| 93 | + When I click the *Actions* drop-down |
| 94 | + And I select the *Download CSV* option |
| 95 | + Then I see the *Generating CSV* snackbar message |
| 96 | + And I can download the generated .csv file on my device and view it |
| 97 | + |
| 98 | + Scenario: Make a channel public |
| 99 | + When I click the *Actions* drop-down |
| 100 | + And I select the *Make public* option |
| 101 | + Then I see the *Make channel public* modal |
| 102 | + When I click the *Make public* button |
| 103 | + Then I see a *Channel changed to public* snackbar message |
| 104 | + And I see a green circle icon in front of the channel name indicating that the channel is public |
| 105 | + |
| 106 | + Scenario: Make a channel private |
| 107 | + Given I have made a channel public |
| 108 | + When I click the *Actions* drop-down |
| 109 | + And I select the *Make private* option |
| 110 | + Then I see the *Make channel private* modal |
| 111 | + When I click the *Make private* button |
| 112 | + Then I see a *Channel changed to private* snackbar message |
| 113 | + And I no longer see a green circle icon in front of the channel name indicating that the channel is now private |
| 114 | + |
| 115 | + Scenario: Delete a channel |
| 116 | + When I click the *Actions* drop-down |
| 117 | + And I select the *Delete channel* option |
| 118 | + Then I see a *Delete channel* confirmation modal |
| 119 | + When I click the *Delete* button |
| 120 | + Then I see a *Channel deleted* snackbar message |
| 121 | + And the channel's details are colored in red |
| 122 | + And I see a *Deleted* label in the *Token ID* column |
| 123 | + When I go to the channel's details page |
| 124 | + Then I see a red banner with the following text: This channel has been deleted |
| 125 | + When I click the *Actions* drop-down |
| 126 | + Then I see the following options: Restore, Delete permanently |
| 127 | + |
| 128 | + Scenario: Restore a deleted channel |
| 129 | + Given I have deleted a channel |
| 130 | + When I click the *Actions* drop-down for the deleted channel |
| 131 | + And I select the *Restore* option |
| 132 | + Then I see the *Restore channel* confirmation modal |
| 133 | + When I click the *Restore* button |
| 134 | + Then I see a *Channel restored* snackbar message |
| 135 | + And I can see that the channel is fully restored |
| 136 | + |
| 137 | + Scenario: Permanently delete a deleted channel |
| 138 | + Given I have deleted a channel |
| 139 | + When I click the *Actions* drop-down for the deleted channel |
| 140 | + And I select the *Delete permanently* option |
| 141 | + Then I see the *Permanently delete channel* confirmation modal |
| 142 | + When I click the *Delete permanently* button |
| 143 | + Then I see a *Channel deleted permanently* snackbar message |
| 144 | + And I can see that the channel is no longer listed in the *All channels* table |
0 commit comments