createResolver(OGPResolver::class, '', [], 404); $this->expectException(BadResponseException::class); $this->resolver->resolve('http://example.com/404'); } public function testResolve() { $response = <<< 'HTML' The Open Graph protocol HTML; $this->createResolver(OGPResolver::class, $response); $resolver = $this->createResolver(OGPResolver::class, $response); $metadata = $resolver->resolve('https://ogp.me'); $this->assertEquals('Open Graph protocol', $metadata->title); $this->assertEquals('The Open Graph protocol enables any web page to become a rich object in a social graph.', $metadata->description); $this->assertEquals('https://ogp.me/logo.png', $metadata->image); } public function testResolveTitleOnly() { $response = <<< 'HTML' Example Domain HTML; $this->createResolver(OGPResolver::class, $response); $metadata = $this->resolver->resolve('http://example.com'); $this->assertEquals('Example Domain', $metadata->title); $this->assertEmpty($metadata->description); $this->assertEmpty($metadata->image); } public function testResolveTitleAndDescription() { $resolver = $this->app->make(OGPResolver::class); $html = <<Welcome to my homepage EOF; $metadata = $resolver->parse($html); $this->assertEquals('Welcome to my homepage', $metadata->title); $this->assertEquals('This is my super hyper ultra homepage!!', $metadata->description); $this->assertEmpty($metadata->image); } }