/** * @dataProvider onKernelRequestProvider */ public function testOnKernelRequest(array $configuredLanguages, array $convertedLocalesValueMap, $expectedLocale) { $this->configResolver->expects($this->once())->method('getParameter')->with('languages')->will($this->returnValue($configuredLanguages)); $this->localeConverter->expects($this->atLeastOnce())->method('convertToPOSIX')->will($this->returnValueMap($convertedLocalesValueMap)); $defaultLocale = 'en'; $localeListener = new LocaleListener($defaultLocale); $localeListener->setConfigResolver($this->configResolver); $localeListener->setLocaleConverter($this->localeConverter); $request = new Request(); $localeListener->onKernelRequest(new GetResponseEvent($this->getMock('Symfony\\Component\\HttpKernel\\HttpKernelInterface'), $request, HttpKernelInterface::MASTER_REQUEST)); $this->assertSame($expectedLocale, $request->attributes->get('_locale')); }