Hi Navi,
I would expect the closing situation to be much simpler. You should be able
to just check that the element is no longer present:
slide_dialog = browser.div(id: 'slide-dialog-container')
slide_dialog.wait_while(&:present?)
The overflow was only important in the expanding case as it meant that
elements could be moving around the page. For closing/collapsing, once the
popup is gone there should be nothing changing on the page.
Justin
On Tuesday, October 2, 2018 at 2:38:32 AM UTC-4, NaviHan wrote:
>
> Hi Justin
>
> This works fine and I have ran the script multiple times and it passed.
> This is configured to run on Jenkins Boxes. Waiting for overnight results.
> As a related question.
>
> We use the below code for the pop up to load completely. I have a
> verification to be done after the pop up has completely disappeared.
>
> I know we need to do wait_while but how do we combine s.present? && s.
> style('overflow') == 'visible' to evaluate to false ?
>
> Cheers
>
>
>
> On Tuesday, 25 September 2018 14:41:15 UTC+10, NaviHan wrote:
>>
>> Its been some days I found this issue untill I understood today the cause
>> of failure.
>>
>> The behavior is
>> a. The user enters the email on check out page
>> b. A pop up skids in from the top of the page
>> c. The user clicks a "continue as guest "button on the pop up
>> d. The pop up skids back in and disappears
>> e. Verify the pop up disappeared
>>
>> The issue is between step b and step c there is a time when the pop up is
>> sliding into the page until its loaded completely. During this time the
>> script clicks the dismiss button. Because the pop hasent completed loading
>> the click doesn't make it disappear.
>>
>> Similarly becasue the pop up takes time to slide back and disapper the
>> check at step e fails.
>>
>> For the time being Im working around this issue with sleeps. But is there
>> a neater way?
>>
>>
>> The pop up is defined as
>>
>> button(:continue_as_guest, :class => ['button', 'close-dialog-button'])
>>
>>
>> The code that does the job is
>>
>> def continue_as_guest
>> continue_as_guest_element.wait_until(&:present?).click
>> end
>>
>>
>> After sleep, which works fine
>>
>> def continue_as_guest
>> sleep 5
>> continue_as_guest_element.wait_until(&:present?).click
>> sleep 5
>> end
>>
>>
>> Note:- I have also tried to wait_while(&:present?) still the issue stays
>> the same
>>
>> def continue_as_guest
>>
>> continue_as_guest_element.wait_until(&:present?).tap(&:click).wait_while(&:present?)
>> end
>>
>>
>>
>>
--
--
Before posting, please read
https://github.com/watir/watir_meta/wiki/Guidelines-for-Posting-to-Watir-General-Google-Group.
In short: search before you ask, be nice.
[email protected]
http://groups.google.com/group/watir-general
[email protected]
---
You received this message because you are subscribed to the Google Groups
"Watir General" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.