Bug 487240 - Refactor current GEF4 test base, generalizing setup and using mocking framework.
Summary: Refactor current GEF4 test base, generalizing setup and using mocking framework.
Status: NEW
Alias: None
Product: GEF
Classification: Tools
Component: Misc (show other bugs)
Version: 0.2.0   Edit
Hardware: All All
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: gef-inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on: 506247
Blocks:
  Show dependency tree
 
Reported: 2016-02-04 09:54 EST by Alexander Nyßen CLA
Modified: 2016-10-20 00:04 EDT (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Alexander Nyßen CLA 2016-02-04 09:54:26 EST
Some of the tests we currently provide within common.tests, mvc.tests, and mvc.x.tests are rather polluted with lots of boilerplate. We should externalize the setup (preparing modules, JavaFX toolkit setup) e.g. by using rules, and make use of a mocking framework to increase maintainability. 

I have created https://dev.eclipse.org/ipzilla/show_bug.cgi?id=10844 to request usage of easymock.
Comment 1 Alexander Nyßen CLA 2016-02-05 09:26:54 EST
IPzilla has been approved, we may use easymock 2.4.
Comment 2 Alexander Nyßen CLA 2016-10-20 00:04:03 EDT
It seems the Orbit-provided EasyMock 2.4 is not capable of partial mocking, which makes it pretty much useless in our environment. The current released 3.4 version supports this feature, but it is not provided via Orbit. 

While the Orbit-provided Mockito version 1.9.5 seems to be capable of partial mocking, a quick check let me directly run into bug #34916, so that adopting it would probably be only an option if Mockito is updated to a 2.x version (see bug #506247).

The Orbit-provided JMock version 1.2 also seems to be quite outdated (current release is 2.6.0).

It seems, the platform uses Mockito, so waiting for an update of it (see bug #506247) seems to be the best option. I will ensure the approval for easymock 2.4 is removed from our IP log.