From eff78bfd86238f19a34ba3d12c31740a4b8fd5b3 Mon Sep 17 00:00:00 2001 From: Peter Fogg Date: Mon, 3 Jun 2013 14:38:56 -0400 Subject: [PATCH] Add doc for `click_component_from_menu` and make sure css is present in any case. --- .../features/component_settings_editor_helpers.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/cms/djangoapps/contentstore/features/component_settings_editor_helpers.py b/cms/djangoapps/contentstore/features/component_settings_editor_helpers.py index 43c012dff2..da1eb3b8ea 100644 --- a/cms/djangoapps/contentstore/features/component_settings_editor_helpers.py +++ b/cms/djangoapps/contentstore/features/component_settings_editor_helpers.py @@ -20,13 +20,20 @@ def click_new_component_button(step, component_button_css): @world.absorb def click_component_from_menu(instance_id, expected_css): + """ + Creates a component from `instance_id`. For components with more + than one template, clicks on `elem_css` to create the new + component. Components with only one template are created as soon + as the user clicks the appropriate button, so we assert that the + expected component is present. + """ elem_css = "a[data-location='%s']" % instance_id elements = world.css_find(elem_css) if len(elements) == 1: # Multiple templates world.css_click(elem_css) - assert_equal(1, len(world.css_find(expected_css))) else: # Single template assert(len(filter(lambda ele: ele.has_class('single_template'), elements)) == 1) + assert_equal(1, len(world.css_find(expected_css))) @world.absorb