mirror of
https://gerrit.wikimedia.org/r/mediawiki/extensions/CookieWarning
synced 2024-11-27 15:40:16 +00:00
6634e8c829
Making GeoLocation an interface makes it easier to replace the underlying implementation from the current Http backed method. Change-Id: I2beb97772fd74ab08b2214c08d82dbc1ebfcdcd2
38 lines
904 B
PHP
38 lines
904 B
PHP
<?php
|
|
|
|
namespace CookieWarning\Tests;
|
|
|
|
use CookieWarning\HttpGeoLocation;
|
|
use CookieWarning\NoopGeoLocation;
|
|
use MediaWiki\MediaWikiServices;
|
|
use MediaWikiTestCase;
|
|
|
|
class ServiceWiringTest extends MediaWikiTestCase {
|
|
|
|
/**
|
|
* @covers \CookieWarning\NoopGeoLocation
|
|
*/
|
|
public function testGeoLocationWithoutServiceURL() {
|
|
$this->setMwGlobals( [
|
|
'wgCookieWarningGeoIPServiceURL' => null
|
|
] );
|
|
|
|
$geoLocation = MediaWikiServices::getInstance()->getService( 'GeoLocation' );
|
|
|
|
$this->assertInstanceOf( NoopGeoLocation::class, $geoLocation );
|
|
}
|
|
|
|
/**
|
|
* @covers \CookieWarning\HttpGeoLocation
|
|
*/
|
|
public function testGeoLocationWithServiceURL() {
|
|
$this->setMwGlobals( [
|
|
'wgCookieWarningGeoIPServiceURL' => 'http://localhost/'
|
|
] );
|
|
|
|
$geoLocation = MediaWikiServices::getInstance()->getService( 'GeoLocation' );
|
|
|
|
$this->assertInstanceOf( HttpGeoLocation::class, $geoLocation );
|
|
}
|
|
}
|