Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 329876 - [General] Cleaning JUnit dependencies for the plugins
Summary: [General] Cleaning JUnit dependencies for the plugins
Status: RESOLVED FIXED
Alias: None
Product: Papyrus
Classification: Modeling
Component: Core (show other bugs)
Version: 0.7.0   Edit
Hardware: All All
: P3 enhancement (vote)
Target Milestone: 0.7.0   Edit
Assignee: Remi Schnekenburger CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on: 331110
Blocks: 263430
  Show dependency tree
 
Reported: 2010-11-10 04:54 EST by Remi Schnekenburger CLA
Modified: 2013-02-04 08:34 EST (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Remi Schnekenburger CLA 2010-11-10 04:54:41 EST
In order to facilitate the build and limit the number of dependencies, I am currently moving the tests inside the plugins (ex: core plugin) into separate hosted fragments. I used fragments, so the developer still has access to the code inside the host plugin, it will be still possible to test internal packages and private methods.
Papyrus will not depend on JUnit plugins anymore, this will remove also the source folder named "test".
Comment 1 Cedric Dumoulin CLA 2010-11-10 05:22:42 EST
-1

I do not agree with that. I am not sure that it is a best programming practice.

Having the tests in a separate plugins will not inforce programmer to update the tests or simply to execute them.
If they are in separate plugins, programmer will not take them, and not use them anymore.
The tests should be in the same plugins.

The build process should simply not compile the tests folder, and thus do not need to depend on JUnit.
Comment 2 Remi Schnekenburger CLA 2010-11-10 05:32:11 EST
(In reply to comment #1)
> -1
> 
> I do not agree with that. I am not sure that it is a best programming practice.
> 
> Having the tests in a separate plugins will not inforce programmer to update
> the tests or simply to execute them.
> If they are in separate plugins, programmer will not take them, and not use
> them anymore.
> The tests should be in the same plugins.
> 
> The build process should simply not compile the tests folder, and thus do not
> need to depend on JUnit.

This is the first step to have a separate feature for tests in Papyrus, and those tests will be run on the hudson server each time Papyrus is build, so the tests will be run each night for the nightly build, for example. It will be even better than the actual case, where launching the tests depends on the good will of the developers.

Testing and content of the plugins are 2 separate concerns in order of distribution, there is no reason to put them in the same area. Moreover, what happens on the build server is the same as what happens in your workspace. If I remove test folder from the compiled area of the plugin, this will remove the refactoring abilities of the jdt tool. That means that the test won't be updated more than if you put them in a separate fragment.
The solution of adding locally to the build will provoke some bad commits, where people will forget not to commit the build.properties modified file.
Comment 3 Camille Letavernier CLA 2013-02-04 08:34:30 EST
This has been fixed; I close the task