public function testNormalizeUsername() { $mocks = [$this->getMockForAbstractClass(PrimaryAuthenticationProvider::class), $this->getMockForAbstractClass(PrimaryAuthenticationProvider::class), $this->getMockForAbstractClass(PrimaryAuthenticationProvider::class), $this->getMockForAbstractClass(PrimaryAuthenticationProvider::class)]; foreach ($mocks as $key => $mock) { $mock->expects($this->any())->method('getUniqueId')->will($this->returnValue($key)); } $mocks[0]->expects($this->once())->method('providerNormalizeUsername')->with($this->identicalTo('XYZ'))->willReturn('Foo'); $mocks[1]->expects($this->once())->method('providerNormalizeUsername')->with($this->identicalTo('XYZ'))->willReturn('Foo'); $mocks[2]->expects($this->once())->method('providerNormalizeUsername')->with($this->identicalTo('XYZ'))->willReturn(null); $mocks[3]->expects($this->once())->method('providerNormalizeUsername')->with($this->identicalTo('XYZ'))->willReturn('Bar!'); $this->primaryauthMocks = $mocks; $this->initializeManager(); $this->assertSame(['Foo', 'Bar!'], $this->manager->normalizeUsername('XYZ')); }