MockControl requestControl = newControl(WebRequest.class);
WebRequest request = (WebRequest) requestControl.getMock();
MockControl tlc = newControl(ThreadLocale.class);
ThreadLocale tl = (ThreadLocale) tlc.getMock();
// Training
source.readCookieValue(TapestryConstants.LOCALE_COOKIE_NAME);
sourceControl.setReturnValue(null);
request.getLocale();
requestControl.setReturnValue(Locale.JAPANESE);
tl.setLocale(Locale.JAPANESE);
replayControls();
RequestLocaleManagerImpl manager = new RequestLocaleManagerImpl();
manager.setCookieSource(source);
manager.setRequest(request);
manager.setThreadLocale(tl);
Locale actual = manager.extractLocaleForCurrentRequest();
assertSame(Locale.JAPANESE, actual);
verifyControls();
tl.getLocale();
tlc.setReturnValue(Locale.JAPANESE);
replayControls();
// Should do nothing, beacuse it isn't a change.