Bug 217223 - Enable APIDocumentationTests#test001
Summary: Enable APIDocumentationTests#test001
Status: VERIFIED FIXED
Alias: None
Product: JDT
Classification: Eclipse Project
Component: Core (show other bugs)
Version: 3.4   Edit
Hardware: PC All
: P3 minor (vote)
Target Milestone: 4.6 M4   Edit
Assignee: Stephan Herrmann CLA
QA Contact:
URL:
Whiteboard:
Keywords: test
Depends on:
Blocks:
 
Reported: 2008-01-31 03:21 EST by Maxime Daniel CLA
Modified: 2015-12-09 00:08 EST (History)
7 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Maxime Daniel CLA 2008-01-31 03:21:00 EST
3.4 M5 - fup on bug 202490
APIDocumentationTests#test001 was only tested in local mode and I feared breaking the remote builds before getting it right for remote execution. Since we are now very close to M5, I prefer deferring the test tuning to early M6. Note that this kind of tests is new, which involves some risks, but desirable, as it already picked a few mismatches.
Comment 1 Eclipse Genie CLA 2015-11-29 05:07:34 EST
New Gerrit change created: https://git.eclipse.org/r/61523
Comment 2 Stephan Herrmann CLA 2015-11-29 06:46:45 EST
Tests have been updated and run successful in the IDE.

On Hudson, the source file JavaCore.java is not found, probably, because JavaCore.getJavaCore().getBundle() resolves to a jar below target/ which doesn't contain the sources.

New experiment is running where we simply take the path to org.eclipse.jdt.core.tests.model and then navigate to ../org.eclipse.jdt.core/model/.../JavaCore.java. Looking at the workspace on Hudson this should be good, but then I don't know if the same also holds during SDK builds.

---------
@David, do you have a hint how a test during SDK build can access a source file from another bundle?
Can we rely on a specific workspace layout?
If https://hudson.eclipse.org/platform/job/eclipse-aggregator-master/ is the job I need to look at, I don't seem to be able to see its workspace.
Should we try to resolve bundle org.eclipse.jdt.core.source and peek inside?
---------

syserrs are in place to document how we fare on Hudson.
Comment 4 Stephan Herrmann CLA 2015-11-29 07:42:33 EST
(In reply to Eclipse Genie from comment #3)
> Gerrit change https://git.eclipse.org/r/61523 was merged to [master].
> Commit:
> http://git.eclipse.org/c/jdt/eclipse.jdt.core.git/commit/?id=7e04164b6ff5e1f953daad29cd865817aa19cb20
> 

The gerrit job was happy. Note, that the test actually pointed out three mistakes in the javadoc, which have been fixed in this commit.

I'm taking the risk of one test failure in the next nightly build.

(In reply to Stephan Herrmann from comment #2)
> syserrs are in place to document how we fare on Hudson.

Here's their output:

Bundle URL = bundleentry://87.fwk391359742/
Bundle path = /jobs/genie.platform/eclipse.jdt.core-Gerrit/workspace/org.eclipse.jdt.core.tests.model/
jdt.core path = /jobs/genie.platform/eclipse.jdt.core-Gerrit/workspace/org.eclipse.jdt.core
JavaCore.java = /jobs/genie.platform/eclipse.jdt.core-Gerrit/workspace/org.eclipse.jdt.core/model/org/eclipse/jdt/core/JavaCore.java exists?true

syserrs are still in place. Keeping this bug open until their removal.
Comment 5 David Williams CLA 2015-11-29 13:18:15 EST
(In reply to Stephan Herrmann from comment #2)

> ---------
> @David, do you have a hint how a test during SDK build can access a source
> file from another bundle?
> Can we rely on a specific workspace layout?
> If https://hudson.eclipse.org/platform/job/eclipse-aggregator-master/ is the
> job I need to look at, I don't seem to be able to see its workspace.
> Should we try to resolve bundle org.eclipse.jdt.core.source and peek inside?
> ---------
> 

I do not have much of a hint, but can tell you the right place to look. Our production unit tests take place on the 'shared instance' of Hudson. Its URL is 

https://hudson.eclipse.org/shared/view/Eclipse%20and%20Equinox/

You can "drill down" into any specific job, with names like p4[IMN]-unit-[OS][BTNESS]

and find fine the 'workspace' link for the most recent build. If you drill-down there, you can eventually find your way to the SDK as installed for a test. The one that is there, though, is only for the last test ran (but, should be similar to others). 

https://hudson.eclipse.org/shared/view/Eclipse%20and%20Equinox/job/ep46N-unit-lin64/ws/workarea/N20151128-1500/eclipse-testing/test-eclipse/eclipse/
Comment 6 David Williams CLA 2015-11-29 13:21:51 EST
(In reply to David Williams from comment #5)

> You can "drill down" into any specific job, with names like
> p4[IMN]-unit-[OS][BTNESS]
> 

Sorry for typos. Should be more like ep46[IMN]-unit-[OS][bitness]

such as ep46N-unit-lin64
Comment 7 Stephan Herrmann CLA 2015-11-29 18:58:53 EST
(In reply to David Williams from comment #6)
> (In reply to David Williams from comment #5)
> 
> > You can "drill down" into any specific job, with names like
> > p4[IMN]-unit-[OS][BTNESS]
> > 
> 
> Sorry for typos. Should be more like ep46[IMN]-unit-[OS][bitness]
> 
> such as ep46N-unit-lin64

Thanks!

From there I saw that the nightly simply skipped the test in question, because JavaCore.java was indeed not found. I will upload a patch shortly, that alternatively looks up the file from within org.eclipse.jdt.core.source.jar (using PackageAdmin).
Comment 8 Eclipse Genie CLA 2015-12-01 05:51:59 EST
New Gerrit change created: https://git.eclipse.org/r/61632
Comment 9 Stephan Herrmann CLA 2015-12-01 06:07:19 EST
Status:

- caught 3 typos in the javadoc (corrected via commit 7e04164b6ff5e1f953daad29cd865817aa19cb20)

- tests run in a development workspace, on gerrit and during SDK builds (I saw the expected results from the temporary syserrs).

- test has been cleaned up (remove syserrs, give it a name that can be identified on test result page)

If gerrit agrees we should be done here.
Comment 11 Dusi Sarath Chandra CLA 2015-12-08 23:33:28 EST
Verified for 4.6 M4 using  I20151207-2000 build