// Training
extractor.extractLocaleForCurrentRequest();
extractorControl.setReturnValue(Locale.CHINESE);
IEngine engine = (IEngine) newMock(IEngine.class);
pool.get(Locale.CHINESE);
poolControl.setReturnValue(null);
MockControl factoryControl = newControl(EngineFactory.class);
EngineFactory factory = (EngineFactory) factoryControl.getMock();
factory.constructNewEngineInstance(Locale.CHINESE);
factoryControl.setReturnValue(engine);
replayControls();
EngineManagerImpl m = new EngineManagerImpl();
m.setEnginePool(pool);
m.setLocaleManager(extractor);
m.setEngineFactory(factory);
IEngine actual = m.getEngineInstance();
assertSame(engine, actual);
verifyControls();
}