$remoteTitle = 'Remote Title ';
$remoteDesc = 'Sometimes the meta description is relevant.';
$remoteTags = 'abc def';
+ $remoteCharset = 'utf-8';
$expectedResult = [
'title' => $remoteTitle,
'tags' => $remoteTags,
];
+ $this->httpAccess
+ ->expects(static::once())
+ ->method('getCurlHeaderCallback')
+ ->willReturnCallback(
+ function (&$charset) use (
+ $remoteCharset
+ ): callable {
+ return function () use (
+ &$charset,
+ $remoteCharset
+ ): void {
+ $charset = $remoteCharset;
+ };
+ }
+ )
+ ;
$this->httpAccess
->expects(static::once())
->method('getCurlDownloadCallback')
->willReturnCallback(
function (&$charset, &$title, &$description, &$tags) use (
+ $remoteCharset,
$remoteTitle,
$remoteDesc,
$remoteTags
&$title,
&$description,
&$tags,
+ $remoteCharset,
$remoteTitle,
$remoteDesc,
$remoteTags
): void {
- $charset = 'ISO-8859-1';
+ static::assertSame($remoteCharset, $charset);
+
$title = $remoteTitle;
$description = $remoteDesc;
$tags = $remoteTags;
->expects(static::once())
->method('getHttpResponse')
->with($url, 30, 4194304)
- ->willReturnCallback(function($url, $timeout, $maxBytes, $callback): void {
- $callback();
+ ->willReturnCallback(function($url, $timeout, $maxBytes, $headerCallback, $dlCallback): void {
+ $headerCallback();
+ $dlCallback();
})
;
->expects(static::once())
->method('getCurlDownloadCallback')
->willReturnCallback(
- function (&$charset, &$title, &$description, &$tags): callable {
- return function () use (&$charset, &$title, &$description, &$tags): void {};
+ function (): callable {
+ return function (): void {};
+ }
+ )
+ ;
+ $this->httpAccess
+ ->expects(static::once())
+ ->method('getCurlHeaderCallback')
+ ->willReturnCallback(
+ function (): callable {
+ return function (): void {};
}
)
;
->expects(static::once())
->method('getHttpResponse')
->with($url, 30, 4194304)
- ->willReturnCallback(function($url, $timeout, $maxBytes, $callback): void {
- $callback();
+ ->willReturnCallback(function($url, $timeout, $maxBytes, $headerCallback, $dlCallback): void {
+ $headerCallback();
+ $dlCallback();
})
;