getReferenceLocations('TestClass')[0]; $result = $this->textDocument->hover( new TextDocumentIdentifier($reference->uri), $reference->range->start )->wait(); $this->assertEquals(new Hover([ new MarkedString('php', "range), $result); } public function testHoverForClassLikeDefinition() { // class TestClass implements TestInterface // Get hover for TestClass $definition = $this->getDefinitionLocation('TestClass'); $result = $this->textDocument->hover( new TextDocumentIdentifier($definition->uri), $definition->range->start )->wait(); $this->assertEquals(new Hover([ new MarkedString('php', "range), $result); } public function testHoverForMethod() { // $obj->testMethod(); // Get hover for testMethod $reference = $this->getReferenceLocations('TestClass::testMethod()')[0]; $result = $this->textDocument->hover( new TextDocumentIdentifier($reference->uri), $reference->range->end )->wait(); $this->assertEquals(new Hover([ new MarkedString('php', "range), $result); } public function testHoverForProperty() { // echo $obj->testProperty; // Get hover for testProperty $reference = $this->getReferenceLocations('TestClass::testProperty')[0]; $result = $this->textDocument->hover( new TextDocumentIdentifier($reference->uri), $reference->range->end )->wait(); $this->assertEquals(new Hover([ new MarkedString('php', "range), $result); } public function testHoverForStaticMethod() { // TestClass::staticTestMethod(); // Get hover for staticTestMethod $reference = $this->getReferenceLocations('TestClass::staticTestMethod()')[0]; $result = $this->textDocument->hover( new TextDocumentIdentifier($reference->uri), $reference->range->end )->wait(); $this->assertEquals(new Hover([ new MarkedString('php', "range), $result); } public function testHoverForStaticProperty() { // echo TestClass::staticTestProperty; // Get hover for staticTestProperty $reference = $this->getReferenceLocations('TestClass::staticTestProperty')[0]; $result = $this->textDocument->hover( new TextDocumentIdentifier($reference->uri), $reference->range->end )->wait(); $this->assertEquals(new Hover([ new MarkedString('php', "range), $result); } public function testHoverForClassConstant() { // echo TestClass::TEST_CLASS_CONST; // Get hover for TEST_CLASS_CONST $reference = $this->getReferenceLocations('TestClass::TEST_CLASS_CONST')[0]; $result = $this->textDocument->hover( new TextDocumentIdentifier($reference->uri), $reference->range->end )->wait(); $this->assertEquals(new Hover([ new MarkedString('php', "range), $result); } public function testHoverForFunction() { // test_function(); // Get hover for test_function $reference = $this->getReferenceLocations('test_function()')[0]; $result = $this->textDocument->hover( new TextDocumentIdentifier($reference->uri), $reference->range->end )->wait(); $this->assertEquals(new Hover([ new MarkedString('php', "range), $result); } public function testHoverForConstant() { // echo TEST_CONST; // Get hover for TEST_CONST $reference = $this->getReferenceLocations('TEST_CONST')[0]; $result = $this->textDocument->hover( new TextDocumentIdentifier($reference->uri), $reference->range->end )->wait(); $this->assertEquals(new Hover([ new MarkedString('php', "range), $result); } public function testHoverForGlobalConstant() { // print TEST_DEFINE_CONSTANT ? 'true' : 'false'; // Get hover for TEST_DEFINE_CONSTANT $reference = $this->getReferenceLocations('TEST_DEFINE_CONSTANT')[0]; $result = $this->textDocument->hover( new TextDocumentIdentifier($reference->uri), $reference->range->end )->wait(); // TODO - should pretty print with fqns, like \define, \false. Not yet supported by tolerant-php-parser $this->assertEquals(new Hover([ new MarkedString('php', "range), $result); } public function testHoverForVariable() { // echo $var; // Get hover for $var $uri = pathToUri(realpath(__DIR__ . '/../../../fixtures/references.php')); $result = $this->textDocument->hover(new TextDocumentIdentifier($uri), new Position(13, 7))->wait(); $this->assertEquals(new Hover( [new MarkedString('php', "textDocument->hover(new TextDocumentIdentifier($uri), new Position(22, 11))->wait(); $this->assertEquals(new Hover( [ new MarkedString('php', "textDocument->hover(new TextDocumentIdentifier($uri), new Position(59, 11))->wait(); $this->assertEquals(new Hover([ new MarkedString('php', "