[ '1', false, '"1" isn\'t considered latest.' ]; yield 'met' => [ '2', true, '"2" is considered latest.' ]; } /** * @dataProvider provideIsMet * @covers ::isMet */ public function testIsMet( $version, $expected, $msg ) { $config = new HashConfig( [ 'VectorDefaultSkinVersionForExistingAccounts' => $version ] ); $user = $this->createMock( User::class ); $user->method( 'isRegistered' )->willReturn( true ); $user->method( 'getOption' ) ->will( $this->returnArgument( 1 ) ); $request = $this->createMock( WebRequest::class ); $request->method( 'getVal' ) ->will( $this->returnArgument( 1 ) ); $requirement = new LatestSkinVersionRequirement( new SkinVersionLookup( $request, $user, $config ) ); $this->assertSame( $expected, $requirement->isMet(), $msg ); } }