Improve existing testing infrastructure based on junit4+guice
-------------------------------------------------------------
Key: NXP-4667
URL: http://jira.nuxeo.org/browse/NXP-4667
Project: Nuxeo Enterprise Platform
Issue Type: Improvement
Affects Versions: 5.3 GA
Reporter: Bogdan Stefanescu
Assignee: Bogdan Stefanescu
Priority: Major
Here is the list of improvements:
1. Rename @Bundles to @Deploy and add capabilities to deploy configuration
files too (and not only bundles).
Ex:
@Depoy({"org.nxueo.runtime", "org.nuxeo.core:OSGI-INF/mycomponent.xml"})
2. @Deploy annotations must be collected from the entire test class hierarchy
(including interfaces and superclasses)
This way you can use interfaces to reuse existing deployment configurations.
Example:
@Deploy({"bundle1", "bundle2", ...})
public interface HasServiceXBundles {
}
@Deploy("additional-bundle")
public class MyTest implements HasServiceXBundles {
...
}
4. Registered services from bundles deployed through @Deploy will be
automatically available for injection with guice.
It is recommended to avoid using manual (through API) bundle deployment.
5. Minimize the number of classes one should write when creating new tests.
- Remove Guice "Module" classes defined by Runners and add instead a method:
protected void configure(Binder binder) {
}
that can be overrided by any runner to add additional bindings.
Also remove any provider that was deprecated by point 4.
6. Avoid duplicating code from NXRuntimetestCase in RuntimeHarness
RuntimeHarness should be an itnerface implemented by NXRuntimetestCase and not
a copy of this class.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://jira.nuxeo.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
_______________________________________________
ECM-tickets mailing list
[email protected]
http://lists.nuxeo.com/mailman/listinfo/ecm-tickets