public function testPutRedirect() { $redirect = new EntityRedirect(new ItemId('Q11'), new ItemId('Q1')); $this->repo->putRedirect($redirect); try { $this->repo->getEntityRevision(new ItemId('Q11')); $this->fail('getEntityRevision() should fail for redirects'); } catch (RevisionedUnresolvedRedirectException $ex) { $this->assertEquals('Q1', $ex->getRedirectTargetId()->getSerialization()); $this->assertGreaterThan(0, $ex->getRevisionId()); $this->assertNotEmpty($ex->getRevisionTimestamp()); } $this->repo->putRedirect($redirect, 117, '20150505000000'); try { $this->repo->getEntityRevision(new ItemId('Q11')); $this->fail('getEntityRevision() should fail for redirects'); } catch (RevisionedUnresolvedRedirectException $ex) { $this->assertEquals('Q1', $ex->getRedirectTargetId()->getSerialization()); $this->assertEquals(117, $ex->getRevisionId()); $this->assertEquals('20150505000000', $ex->getRevisionTimestamp()); } }