Bug 499159 - [GTK 2] Test_BrowserSuite.testBrowser3 fails with WebKit behind proxy
Summary: [GTK 2] Test_BrowserSuite.testBrowser3 fails with WebKit behind proxy
Status: RESOLVED FIXED
Alias: None
Product: Platform
Classification: Eclipse Project
Component: SWT (show other bugs)
Version: 4.7   Edit
Hardware: PC Linux
: P3 normal (vote)
Target Milestone: 4.6.2   Edit
Assignee: Markus Keller CLA
QA Contact:
URL:
Whiteboard:
Keywords: test
Depends on: 499565
Blocks:
  Show dependency tree
 
Reported: 2016-08-04 10:33 EDT by Markus Keller CLA
Modified: 2016-11-24 13:39 EST (History)
7 users (show)

See Also:
daniel_megert: pmc_approved+


Attachments
Screenshot (12.96 KB, image/png)
2016-08-17 08:14 EDT, Markus Keller CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Markus Keller CLA 2016-08-04 10:33:33 EDT
Test_BrowserSuite.testBrowser3 fails consistently in I20160726-0800 and all later I-builds on ep47I-unit-lin64_linux.gtk.x86.

Last passed in I20160719-0800.

java.lang.AssertionError
at org.eclipse.swt.tests.junit.browser.Test_BrowserSuite.testBrowser3(Test_BrowserSuite.java:72)
at org.eclipse.test.EclipseTestRunner.run(EclipseTestRunner.java:743)
...

Since the test failure doesn't tell what's wrong, Browser3#verbose needs to be set to true.
Comment 1 Lakshmi P Shanmugam CLA 2016-08-05 05:46:57 EDT
Sravan ran the tests on his machine in both gtk2 and gtk3 mode and it passes locally for him. We'll investigate this post M1.
Comment 2 Markus Keller CLA 2016-08-10 08:01:09 EDT
> Browser3#verbose needs to be set to true.

Done with http://git.eclipse.org/c/platform/eclipse.platform.swt.git/commit/?id=de5254aadd4d8f09a359749ce02f2f10aaea0838
Comment 3 Leo Ufimtsev CLA 2016-08-10 11:39:42 EDT
What OS (and version) does the build/test server run?
Perhaps I could try to setup something similar and investigate.
Comment 4 Niraj Modi CLA 2016-08-17 07:47:33 EDT
Hi Markus,
With latest commit against this bug, am seeing compilation errors for 'Screenshots' class on Windows: http://git.eclipse.org/c/platform/eclipse.platform.swt.git/commit/?id=536c351cd8408ca3c81004539e8d5d7a16edcacc
Comment 5 Markus Keller CLA 2016-08-17 08:14:37 EDT
Created attachment 263632 [details]
Screenshot

I've added some more logging and took screenshots (via bug 499565).

In N20160816-2000, the event sequence was:

Browser1:OpenWindow.open
Browser2:Visibility.show
Browser2:Location.changing
timed out
=> Browser3.end.png

The problem is that http://www.google.com/ is not reachable from the ep47N-unit-lin64 job. Let's try changing that to https:

http://git.eclipse.org/c/platform/eclipse.platform.swt.git/commit/?id=c4c961391423d9372bc2ca68db2c6b3f5e627f23
Comment 6 Markus Keller CLA 2016-08-17 08:58:56 EDT
(In reply to Niraj Modi from comment #4)
> With latest commit against this bug, am seeing compilation errors for
> 'Screenshots' class on Windows:

Pull the latest from the eclipse.platform.releng repository.
I'll update the bundle versions to clarify the new minimal version of org.eclipse.test.performance.
Comment 7 Markus Keller CLA 2016-08-18 08:36:13 EDT
The problem is that hudson-slave4 blocks an outgoing http or https connection to www.google.com.

Sravan, could you please give me edit rights to these two jobs, so that I can check whether this is a general connection problem on this HIPP?

https://hudson.eclipse.org/shared/job/checkConfigLinux/
https://hudson.eclipse.org/shared/job/checkConfigWin/
Comment 8 Sravan Kumar Lakkimsetti CLA 2016-08-18 12:34:51 EDT
(In reply to Markus Keller from comment #7)
> The problem is that hudson-slave4 blocks an outgoing http or https
> connection to www.google.com.
> 
> Sravan, could you please give me edit rights to these two jobs, so that I
> can check whether this is a general connection problem on this HIPP?
> 
> https://hudson.eclipse.org/shared/job/checkConfigLinux/
> https://hudson.eclipse.org/shared/job/checkConfigWin/

I added your name to https://hudson.eclipse.org/shared/job/checkConfigLinux/

Can you please check and let me know if this works for you?
Comment 9 Markus Keller CLA 2016-08-18 15:39:32 EDT
Thanks, I used the linux job to run "wget -O - http://www.google.com", and that succeeded through the proxy.

(In reply to Markus Keller from comment #0)
On closer look, 
> Test_BrowserSuite.testBrowser3 fails since I20160726-0800
is true, but
> Last passed in I20160719-0800.
was wrong. It actually crashed in a Mozilla callback:

     [java] org.eclipse.test.EclipseTestRunner$ThreadDump: for thread "main"
     [java] 	at org.eclipse.swt.internal.gtk.OS._gtk_dialog_run(Native Method)
     [java] 	at org.eclipse.swt.internal.gtk.OS.gtk_dialog_run(OS.java:7484)
     [java] 	at org.eclipse.swt.widgets.MessageBox.open(MessageBox.java:189)
     [java] 	at org.eclipse.swt.browser.PromptService2.Alert(PromptService2.java:205)
     [java] 	at org.eclipse.swt.browser.PromptService2$2.method3(PromptService2.java:52)
     [java] 	at org.eclipse.swt.internal.mozilla.XPCOMObject.callback3(XPCOMObject.java:271)
     [java] 	at org.eclipse.swt.internal.mozilla.XPCOM._VtblCall(Native Method)
     [java] 	at org.eclipse.swt.internal.mozilla.XPCOM.VtblCall(XPCOM.java:1498)
     [java] 	at org.eclipse.swt.internal.mozilla.nsIObserverService.NotifyObservers(nsIObserverService.java:46)
     [java] 	at org.eclipse.swt.browser.Mozilla.initProfile(Mozilla.java:2740)
     [java] 	at org.eclipse.swt.browser.Mozilla.create(Mozilla.java:758)
     [java] 	at org.eclipse.swt.browser.Browser.<init>(Browser.java:99)
     [java] 	at org.eclipse.swt.tests.junit.browser.Test_BrowserSuite.logXulRunnerVersion(Test_BrowserSuite.java:42)
     [java] 	at org.eclipse.swt.tests.junit.browser.Test_BrowserSuite.testBrowser1(Test_BrowserSuite.java:57)


Since I20160726-0800, tests are running with WebKit. So it's a new problem that WebKit can't establish a connection on hudson-slave4.

"uname -a" on that machine prints:
> Linux hudson-slave4 2.6.32.59-0.7-xen #1 SMP 2012-07-13 15:50:56 +0200 x86_64 x86_64 x86_64 GNU/Linux

org.eclipse.swt.internal.gtk.version=2.18.9

My current guess is that this could be a problem with proxy support in WebKit.

On the CentOS test machine (GTK3, WebKit), the Browser3 test gets killed by the timeout while waiting for the page to load (screenshot shows an empty window).
Comment 10 Markus Keller CLA 2016-09-08 09:02:59 EDT
I'm closing this one.

Browser tests 1, 3, 6 are now disabled on Hudson on GTK because WebKit has a problem reaching out to the public internet through the proxy. These tests pass on other platforms, and all the other tests pass on all platforms.

Browser test 5 has been adjusted to accept slightly-off popup window locations (probably due to GTK window trimmings). Note: The test has never actually checked the size of the popups, and they tend to be way too big.
Comment 11 Dani Megert CLA 2016-11-24 13:24:24 EST
+1 for Neon RC3.
Comment 12 Eclipse Genie CLA 2016-11-24 13:33:05 EST
New Gerrit change created: https://git.eclipse.org/r/85716
Comment 14 Markus Keller CLA 2016-11-24 13:39:37 EST
Same problem in R4_6_maintenance. The DNF is not visible due to bug 210792.

Fixed for 4.6.2 RC3 rebuild.