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.

Reply via email to