Community
Participate
Working Groups
I wrote a test for the FileTransfer class, which is platform independent; but to provide some test TransferData, I need to instantiate platform specific classes, e.g. org.eclipse.swt.internal.ole.win32.FORMATETC for windows. It would be nice, to have additional test artifacts for the three supported platforms, e.g.: org.eclipse.swt.tests.gtk org.eclipse.swt.tests.win32 org.eclipse.swt.tests.cocoa
Is there anybody, who knows how to add a new module, that doesn't crashes the integration builds because of platform dependent code? I think, we should use this bug to provide the 'infrastructure' for platform specific tests. Right now, I only have one test class for Windows. But I know that Leo Ufimtsev has some gtk specific tests to share.
(In reply to Conrad Groth from comment #1) > But I know that Leo Ufimtsev has some gtk specific tests to share. It wasn't Leo, but Eric Williams
I've added Eric to CC on this
New Gerrit change created: https://git.eclipse.org/r/99534
The patch is ready for review.
Leo and I have been discussing this for awhile. One/both of us will take a look at your patch within the next few days.
I like the patch you submitted. Looks good to me. I'm not sure if it breaks builds, I don't see why it would, but I'm not a builder guy.
(In reply to Eclipse Genie from comment #4) > New Gerrit change created: https://git.eclipse.org/r/99534 Looks good, few suggestions: Similar to org.eclipse.swt.tests.junit.AllTests.java we should add below parent test suite class per platform: AllWindowsTests.java AllGTKTests.java AllCocoaTests.java Also, it would be interesting if we could trigger above platform specific tests directly from AllTests.java [Note: SwtTestUtil.java helps identify the platforms]
(In reply to Niraj Modi from comment #8) > (In reply to Eclipse Genie from comment #4) > Similar to org.eclipse.swt.tests.junit.AllTests.java we should add below > parent test suite class per platform: > AllWindowsTests.java > AllGTKTests.java > AllCocoaTests.java > > Also, it would be interesting if we could trigger above platform specific > tests directly from AllTests.java [Note: SwtTestUtil.java helps identify the > platforms] +1 to this idea.
(In reply to Niraj Modi from comment #8) > (In reply to Eclipse Genie from comment #4) > > New Gerrit change created: https://git.eclipse.org/r/99534 > > Looks good, few suggestions: > Similar to org.eclipse.swt.tests.junit.AllTests.java we should add below > parent test suite class per platform: > AllWindowsTests.java > AllGTKTests.java > AllCocoaTests.java I added these three to the patch. > Also, it would be interesting if we could trigger above platform specific > tests directly from AllTests.java [Note: SwtTestUtil.java helps identify the > platforms] I experimented with this. Technically sort of possible, but the only way I got it to work involves having all projects open at all times. Where as I imagine a Gtk developer would probably only want AllTests and AllGtkTests and not Cocoa/Win32 tests to be around. Like, I can't think of a 'dynamic' way of achieving this in such a way that only all.tests and gtk.test would be open without all.tests complaining about missing dependencies? (Mind you I don't know plugin dependency model that well). ~Suggestions are welcome. With that said, this can be achieved via LaunchGroups. With one launch group launch AllTests and AllGtk tests. If there are no objections, I'll go ahead and merge the patch. Further enhancements can be added as we go.
(In reply to Leo Ufimtsev from comment #10) > (In reply to Niraj Modi from comment #8) > > (In reply to Eclipse Genie from comment #4) > > > New Gerrit change created: https://git.eclipse.org/r/99534 > > > > Looks good, few suggestions: > > Similar to org.eclipse.swt.tests.junit.AllTests.java we should add below > > parent test suite class per platform: > > AllWindowsTests.java > > AllGTKTests.java > > AllCocoaTests.java > > I added these three to the patch. > > > Also, it would be interesting if we could trigger above platform specific > > tests directly from AllTests.java [Note: SwtTestUtil.java helps identify the > > platforms] > > I experimented with this. Technically sort of possible, but the only way I > got it to work involves having all projects open at all times. Where as I > imagine a Gtk developer would probably only want AllTests and AllGtkTests > and not Cocoa/Win32 tests to be around. > > Like, I can't think of a 'dynamic' way of achieving this in such a way that > only all.tests and gtk.test would be open without all.tests complaining > about missing dependencies? (Mind you I don't know plugin dependency model > that well). > ~Suggestions are welcome. > > With that said, this can be achieved via LaunchGroups. With one launch group > launch AllTests and AllGtk tests. > > If there are no objections, I'll go ahead and merge the patch. Further > enhancements can be added as we go. +1 for merging now, we can add additional functionality later.
Gerrit change https://git.eclipse.org/r/99534 was merged to [master]. Commit: http://git.eclipse.org/c/platform/eclipse.platform.swt.git/commit/?id=8a0c15acf207b28d8176e0bab62ed119f4eaa273
Patch merged. Tests can now be added to those projects. (I would suggest new bug submissions. @Conrad, thank you for your work on this.
New Gerrit change created: https://git.eclipse.org/r/99988
Gerrit change https://git.eclipse.org/r/99988 was merged to [master]. Commit: http://git.eclipse.org/c/platform/eclipse.platform.swt.git/commit/?id=04606ef47c15b9f08982f7f61a95f9a8d49d2921
Hey ya, I think there may be an issue with the root pom: <profile> <id>unix</id> <activation> <os> <family>unix</family> </os> </activation> <modules> <module>tests/org.eclipse.swt.tests.gtk</module> </modules> </profile> Cocoa is categorized as "Unix", and thus this profile is activated on Cocoa, where as it should only run on Linux. @Conrad, I don't know much about pom/os.family. Is there a "Linux" os family? Maybe we should change that to be linux instead of unix? Thoughts?
New Gerrit change created: https://git.eclipse.org/r/100934
Gerrit change https://git.eclipse.org/r/100934 was merged to [master]. Commit: http://git.eclipse.org/c/platform/eclipse.platform.swt.git/commit/?id=e2b6b9c9d7134d4747c6389573923e6efa92b1de
(In reply to Leo Ufimtsev from comment #16) > Hey ya, > > I think there may be an issue with the root pom: > > <profile> > <id>unix</id> > <activation> > <os> > <family>unix</family> > </os> > </activation> > <modules> > <module>tests/org.eclipse.swt.tests.gtk</module> > </modules> > </profile> > > Cocoa is categorized as "Unix", and thus this profile is activated on Cocoa, > where as it should only run on Linux. > > @Conrad, I don't know much about pom/os.family. Is there a "Linux" os > family? Maybe we should change that to be linux instead of unix? Thoughts? I fixed it in: (In reply to Eclipse Genie from comment #18) > Gerrit change https://git.eclipse.org/r/100934 was merged to [master]. > Commit: > http://git.eclipse.org/c/platform/eclipse.platform.swt.git/commit/ > ?id=e2b6b9c9d7134d4747c6389573923e6efa92b1de We're good to go.