mirror of
https://gerrit.wikimedia.org/r/mediawiki/extensions/Math
synced 2024-11-15 11:48:23 +00:00
da8e918fb3
Additionally - remove RestbaseInterface::checkBackend. When HTTP requests are banned from unit tests this method makes no sence. MathoidCli tests were not reenabled cause it's a bit hard to mock shell acceess. Hopefully as part of Shellbox transition we can have MockShell trait in core and reenable those tests Bug: T265628 Depends-On: I350ed59af603a0504704af3265787a4be8f2dc2a Change-Id: I294d0ed905193850dc38cb3071eb9b31c8863121
58 lines
1.6 KiB
PHP
58 lines
1.6 KiB
PHP
<?php
|
|
|
|
namespace MediaWiki\Extension\Math\Tests;
|
|
|
|
use MockHttpTrait;
|
|
|
|
trait MathMockHttpTrait {
|
|
use MockHttpTrait;
|
|
|
|
protected function setupBadMathRestBaseMockHttp() {
|
|
$this->installMockHttp(
|
|
$this->makeFakeHttpMultiClient( [ [
|
|
'code' => 400,
|
|
'body' => file_get_contents( __DIR__ . '/InputCheck/data/restbase/fail.json' ),
|
|
] ] )
|
|
);
|
|
}
|
|
|
|
protected function setupSyntaxErrorRestBaseMockHttp() {
|
|
$this->installMockHttp(
|
|
$this->makeFakeHttpMultiClient( [ [
|
|
'code' => 400,
|
|
'body' => file_get_contents( __DIR__ . '/InputCheck/data/restbase/syntax_error.json' ),
|
|
] ] )
|
|
);
|
|
}
|
|
|
|
protected function setupGoodMathRestBaseMockHttp( bool $withSvg = false ) {
|
|
$requests = [
|
|
$this->makeFakeHttpMultiClient( [ [
|
|
'code' => 200,
|
|
'headers' => [
|
|
'x-resource-location' => 'RESOURCE_LOCATION',
|
|
],
|
|
'body' => file_get_contents( __DIR__ . '/InputCheck/data/restbase/sinx.json' ),
|
|
] ] ),
|
|
$this->makeFakeHttpMultiClient( [ file_get_contents( __DIR__ . '/data/restbase/sinx.mml' ), ] ),
|
|
];
|
|
if ( $withSvg ) {
|
|
$requests[] = $this->makeFakeHttpMultiClient( [ 'SVGSVSVG', ] );
|
|
}
|
|
$this->installMockHttp( $requests );
|
|
}
|
|
|
|
protected function setupGoodChemRestBaseMockHttp() {
|
|
$this->installMockHttp( [
|
|
$this->makeFakeHttpMultiClient( [ [
|
|
'code' => 200,
|
|
'headers' => [
|
|
'x-resource-location' => 'RESOURCE_LOCATION',
|
|
],
|
|
'body' => file_get_contents( __DIR__ . '/InputCheck/data/restbase/chem.json' ),
|
|
] ] ),
|
|
$this->makeFakeHttpMultiClient( [ file_get_contents( __DIR__ . '/data/restbase/h2o.mml' ), ] ),
|
|
] );
|
|
}
|
|
}
|