diff --git a/openedx/core/djangoapps/discussions/tests/test_views.py b/openedx/core/djangoapps/discussions/tests/test_views.py index bc2f3e8489..5b182ebace 100644 --- a/openedx/core/djangoapps/discussions/tests/test_views.py +++ b/openedx/core/djangoapps/discussions/tests/test_views.py @@ -314,14 +314,14 @@ class ProviderDataTest(CourseInstructorAuthorizedTest, DataTestMixin): # If the legacy provider is selected always show the legacy provider, # and only show the new one if the toggle is enabled (Provider.LEGACY, [Provider.LEGACY], Provider.OPEN_EDX, False), - (Provider.LEGACY, [Provider.LEGACY, Provider.OPEN_EDX], 'dummy', True), + (Provider.LEGACY, [Provider.LEGACY], 'dummy', True), # If the new provider is selected show the legacy provider only # if the new discussions toggle is disabled - (Provider.OPEN_EDX, [Provider.OPEN_EDX, Provider.LEGACY], 'dummy', False), + (Provider.OPEN_EDX, [Provider.OPEN_EDX], 'dummy', False), (Provider.OPEN_EDX, [Provider.OPEN_EDX], Provider.LEGACY, True), # If some other provider is selected show only legacy provider if the toggle is false # and only the new provider if the toggle is enabled - (Provider.PIAZZA, [Provider.LEGACY], Provider.OPEN_EDX, False), + (Provider.PIAZZA, [], Provider.OPEN_EDX, False), (Provider.PIAZZA, [Provider.OPEN_EDX], Provider.LEGACY, True), ) @ddt.unpack @@ -424,9 +424,11 @@ class DataTest(AuthorizedApiTest, DataTestMixin): with override_waffle_flag(ENABLE_NEW_STRUCTURE_DISCUSSIONS, new_structure_enabled): response = self._get() data = response.json() - visible_providers = [Provider.OPEN_EDX, Provider.LEGACY] - if not new_structure_enabled: + visible_providers = [] + if current_provider == Provider.LEGACY: visible_providers = [Provider.LEGACY] + if current_provider != Provider.LEGACY and new_structure_enabled: + visible_providers = [Provider.OPEN_EDX] for visible_provider in visible_providers: assert visible_provider in data['providers']['available'].keys() diff --git a/openedx/core/djangoapps/discussions/views.py b/openedx/core/djangoapps/discussions/views.py index 6193faf46c..9d27d8f5f8 100644 --- a/openedx/core/djangoapps/discussions/views.py +++ b/openedx/core/djangoapps/discussions/views.py @@ -156,7 +156,7 @@ class DiscussionsProvidersView(APIView): Handle HTTP/GET requests """ # Return all providers always, if the user is staff - data = self.get_provider_data(course_key_string, show_all=request.user.is_staff) + data = self.get_provider_data(course_key_string, show_all=False) return Response(data) @staticmethod @@ -189,6 +189,11 @@ class DiscussionsProvidersView(APIView): if configuration.provider_type != Provider.OPEN_EDX: hidden_providers.append(Provider.OPEN_EDX) + if configuration.provider_type != Provider.LEGACY: + hidden_providers.append(Provider.LEGACY) + else: + hidden_providers.append(Provider.OPEN_EDX) + serializer = DiscussionsProvidersSerializer( { 'features': [