Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Course unit page] Problems with Content Experiment functional on the Course unit page #1003

Open
PKulkoRaccoonGang opened this issue May 17, 2024 · 0 comments
Labels
bug Report of or fix for something that isn't working as intended

Comments

@PKulkoRaccoonGang
Copy link
Contributor

If contentstore.new_studio_mfe.use_new_unit_page flag is enabled, the user faces the following problems when working with experiment groups:

  • 500 error if a user tries to add Content Experiment xblock in frontend-app-course-authoring MFE:
    image
  • Content Experiment xblock is rendered incorrectly if xblock has been added in Legacy:

Content Experiment xblock rendering in frontend-app-course-authoring MFE
image

Content Experiment xblock rendering in Legacy
image

  • User cannot edit Content Experiment xblock
  • User can delete Content Experiment xblock
  • User can proceed to the Content Experiment, page only from the Group Configurations page

500 error on the Learning MFE page

It occurs when staff adds a content experiment xblock to a unit and publishes the changes. When the user tries to get to the Learning MFE page he gets an error.

The error occurs only when a group has not been added to the block.

image

Logs:

edx.devstack.lms  |   File "/edx/app/edxapp/edx-platform/openedx/core/djangoapps/courseware_api/views.py", line 615, in get
edx.devstack.lms  |     return Response(sequence.get_metadata(view=view, context=context))
edx.devstack.lms  |   File "/edx/app/edxapp/edx-platform/xmodule/seq_block.py", line 375, in get_metadata
edx.devstack.lms  |     meta = self._get_render_metadata(context, children, prereq_met, prereq_meta_info, banner_text, view)
edx.devstack.lms  |   File "/edx/app/edxapp/edx-platform/xmodule/seq_block.py", line 553, in _get_render_metadata
edx.devstack.lms  |     blocks = self._render_student_view_for_blocks(context, children, fragment, view) if prereq_met else []
edx.devstack.lms  |   File "/edx/app/edxapp/edx-platform/xmodule/seq_block.py", line 763, in _render_student_view_for_blocks
edx.devstack.lms  |     item_type = get_icon(block)
edx.devstack.lms  |   File "/edx/app/edxapp/venvs/edxapp/lib/python3.8/site-packages/edx_django_utils/plugins/pluggable_override.py", line 77, in wrapper
edx.devstack.lms  |     return prev_fn(*args, **kwargs)
edx.devstack.lms  |   File "/edx/app/edxapp/edx-platform/openedx/core/lib/xblock_utils/__init__.py", line 522, in get_icon
edx.devstack.lms  |     return block.get_icon_class()
edx.devstack.lms  |   File "/edx/app/edxapp/edx-platform/xmodule/vertical_block.py", line 254, in get_icon_class
edx.devstack.lms  |     child_classes = {child.get_icon_class() for child in self.get_children()}
edx.devstack.lms  |   File "/edx/app/edxapp/edx-platform/xmodule/vertical_block.py", line 254, in <setcomp>
edx.devstack.lms  |     child_classes = {child.get_icon_class() for child in self.get_children()}
edx.devstack.lms  |   File "/edx/app/edxapp/edx-platform/xmodule/split_test_block.py", line 398, in get_icon_class
edx.devstack.lms  |     return self.child.get_icon_class() if self.child else 'other'
edx.devstack.lms  |   File "/edx/app/edxapp/venvs/edxapp/lib/python3.8/site-packages/django/utils/functional.py", line 57, in __get__
edx.devstack.lms  |     res = instance.__dict__[self.name] = self.func(instance)
edx.devstack.lms  |   File "/edx/app/edxapp/edx-platform/xmodule/split_test_block.py", line 176, in child
edx.devstack.lms  |     if self.child_block is not None:
edx.devstack.lms  |   File "/edx/app/edxapp/venvs/edxapp/lib/python3.8/site-packages/django/utils/functional.py", line 57, in __get__
edx.devstack.lms  |     res = instance.__dict__[self.name] = self.func(instance)
edx.devstack.lms  |   File "/edx/app/edxapp/edx-platform/xmodule/split_test_block.py", line 166, in child_block
edx.devstack.lms  |     child_blocks = self.get_child_blocks()
edx.devstack.lms  |   File "/edx/app/edxapp/edx-platform/xmodule/split_test_block.py", line 216, in get_child_blocks
edx.devstack.lms  |     group_id = self.get_group_id()
edx.devstack.lms  |   File "/edx/app/edxapp/edx-platform/xmodule/split_test_block.py", line 245, in get_group_id
edx.devstack.lms  |     return partitions_service.get_user_group_id_for_partition(user, self.user_partition_id)
edx.devstack.lms  |   File "/edx/app/edxapp/edx-platform/xmodule/partitions/partitions_service.py", line 146, in get_user_group_id_for_partition
edx.devstack.lms  |     raise ValueError(
edx.devstack.lms  | ValueError: Configuration problem!  No user_partition with id -1 in course course-v1:2u+1+1
@PKulkoRaccoonGang PKulkoRaccoonGang added the bug Report of or fix for something that isn't working as intended label May 17, 2024
@PKulkoRaccoonGang PKulkoRaccoonGang changed the title Problems with Content Experiment functional on the Course unit page [Course unit page] Problems with Content Experiment functional on the Course unit page May 17, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Report of or fix for something that isn't working as intended
Projects
None yet
Development

No branches or pull requests

1 participant