3 namespace MediaWiki\Tests\Storage
;
5 use MediaWiki\MediaWikiServices
;
6 use MediaWiki\Storage\BlobStore
;
7 use MediaWiki\Storage\SqlBlobStore
;
9 use Wikimedia\TestingAccessWrapper
;
12 * @covers \MediaWiki\Storage\BlobStoreFactory
14 class BlobStoreFactoryTest
extends MediaWikiTestCase
{
16 public function provideDbDomains() {
22 * @dataProvider provideDbDomains
24 public function testNewBlobStore( $dbDomain ) {
25 $factory = MediaWikiServices
::getInstance()->getBlobStoreFactory();
26 $store = $factory->newBlobStore( $dbDomain );
27 $this->assertInstanceOf( BlobStore
::class, $store );
29 // This only works as we currently know this is a SqlBlobStore object
30 $wrapper = TestingAccessWrapper
::newFromObject( $store );
31 $this->assertEquals( $dbDomain, $wrapper->dbDomain
);
35 * @dataProvider provideDbDomains
37 public function testNewSqlBlobStore( $dbDomain ) {
38 $factory = MediaWikiServices
::getInstance()->getBlobStoreFactory();
39 $store = $factory->newSqlBlobStore( $dbDomain );
40 $this->assertInstanceOf( SqlBlobStore
::class, $store );
42 $wrapper = TestingAccessWrapper
::newFromObject( $store );
43 $this->assertEquals( $dbDomain, $wrapper->dbDomain
);