Page MenuHomePhabricator

Flow: update Permalink browser test for code changes
Closed, ResolvedPublic

Description

The Actions menu Permalink test is failing with

timed out after 5 seconds, waiting for {:class=>"flow-topic-reply-submit", :tag_name=>"button"} to become present (Watir::Wait::TimeoutError)

but commit c927f938 eliminated the specific class for the [Reply] button for a top-level comment on a a topic.

However, simply changing this to "flow-reply-submit" doesn't work, because this also matches the Reply button in all the hidden replies to existing comments that precede the "Comment on xyz" box.

In general, the current PageObject elements only work because the first matching element in the Flow board is probably the one you want, but since Flow boards are made of dozens of similar items, it's fragile. Conceptually Flow page object selectors ought to "point at" a particular topic or post on a page, and then select elements within that.

jQuery selectors can fix this six ways to Sunday:

$( '.flow-reply-submit:visible' )
$( '.flow-reply-submit:last' )
$( 'form.flow-topic-reply-form .flow-reply-submit' )

etc. Mapping these to PageObject/cheezy whatever is... hazy.


Version: master
Severity: major

Details

Reference
bz61578

Event Timeline

bzimport raised the priority of this task from to Needs Triage.Nov 22 2014, 3:07 AM
bzimport set Reference to bz61578.
bzimport added a subscriber: Unknown Object (MLST).

Change 114426 had a related patch set uploaded by Spage:
update Permalink browser test for code changes

https://gerrit.wikimedia.org/r/114426

Change 114426 merged by jenkins-bot:
update Permalink browser test for code changes

https://gerrit.wikimedia.org/r/114426

The last jQuery is a CSS 2.1 selector, so I used that in the PageObject.