Completed
Push — master ( 388143...889690 )
by Thomas
05:32 queued 02:57
created

ApiEntityStoreTest::testGetPropertyForTermLookup()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 8
Code Lines 6

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 1
Metric Value
c 1
b 0
f 1
dl 0
loc 8
rs 9.4286
cc 1
eloc 6
nc 1
nop 0
1
<?php
2
3
namespace Wikibase\EntityStore\Api;
4
5
use Wikibase\EntityStore\EntityStoreTest;
6
7
/**
8
 * @covers Wikibase\EntityStore\Api\ApiEntityStore
9
 *
10
 * @licence GPLv2+
11
 * @author Thomas Pellissier Tanon
12
 */
13
class ApiEntityStoreTest extends EntityStoreTest {
14
15
	public function testGetEntityLookup() {
16
		$mediawikiApiMock = $this->getMockBuilder( 'Mediawiki\Api\MediawikiApi' )
17
			->disableOriginalConstructor()
18
			->getMock();
19
		$store = new ApiEntityStore( $mediawikiApiMock );
20
21
		$this->assertInstanceOf( 'Wikibase\DataModel\Services\Lookup\EntityLookup', $store->getEntityLookup() );
22
	}
23
24
	public function testGetEntityDocumentLookup() {
25
		$mediawikiApiMock = $this->getMockBuilder( 'Mediawiki\Api\MediawikiApi' )
26
			->disableOriginalConstructor()
27
			->getMock();
28
		$store = new ApiEntityStore( $mediawikiApiMock );
29
30
		$this->assertInstanceOf( 'Wikibase\EntityStore\EntityDocumentLookup', $store->getEntityDocumentLookup() );
31
	}
32
33
	public function testGetItemLookup() {
34
		$mediawikiApiMock = $this->getMockBuilder( 'Mediawiki\Api\MediawikiApi' )
35
			->disableOriginalConstructor()
36
			->getMock();
37
		$store = new ApiEntityStore( $mediawikiApiMock );
38
39
		$this->assertInstanceOf( 'Wikibase\DataModel\Services\Lookup\ItemLookup', $store->getItemLookup() );
40
	}
41
42
	public function testGetPropertyLookup() {
43
		$mediawikiApiMock = $this->getMockBuilder( 'Mediawiki\Api\MediawikiApi' )
44
			->disableOriginalConstructor()
45
			->getMock();
46
		$store = new ApiEntityStore( $mediawikiApiMock );
47
48
		$this->assertInstanceOf( 'Wikibase\DataModel\Services\Lookup\PropertyLookup', $store->getPropertyLookup() );
49
	}
50
51
	public function testGetItemForTermLookup() {
52
		$mediawikiApiMock = $this->getMockBuilder( 'Mediawiki\Api\MediawikiApi' )
53
			->disableOriginalConstructor()
54
			->getMock();
55
		$store = new ApiEntityStore( $mediawikiApiMock );
56
57
		$this->assertInstanceOf( 'Wikibase\EntityStore\ItemIdForTermLookup', $store->getItemIdForTermLookup() );
58
	}
59
60
	public function testGetPropertyForTermLookup() {
61
		$mediawikiApiMock = $this->getMockBuilder( 'Mediawiki\Api\MediawikiApi' )
62
			->disableOriginalConstructor()
63
			->getMock();
64
		$store = new ApiEntityStore( $mediawikiApiMock );
65
66
		$this->assertInstanceOf( 'Wikibase\EntityStore\PropertyIdForTermLookup', $store->getPropertyIdForTermLookup() );
67
	}
68
69
	public function testGetItemForQueryLookup() {
70
		$mediawikiApiMock = $this->getMockBuilder( 'Mediawiki\Api\MediawikiApi' )
71
			->disableOriginalConstructor()
72
			->getMock();
73
		$wikidataQueryApiMock = $this->getMockBuilder( 'WikidataQueryApi\WikidataQueryApi' )
74
			->disableOriginalConstructor()
75
			->getMock();
76
		$store = new ApiEntityStore( $mediawikiApiMock, $wikidataQueryApiMock );
77
78
		$this->assertInstanceOf( 'Wikibase\EntityStore\ItemIdForQueryLookup', $store->getItemIdForQueryLookup() );
79
	}
80
81
	public function testGetItemForQueryLookupWithException() {
82
		$mediawikiApiMock = $this->getMockBuilder( 'Mediawiki\Api\MediawikiApi' )
83
			->disableOriginalConstructor()
84
			->getMock();
85
		$store = new ApiEntityStore( $mediawikiApiMock );
86
87
		$this->setExpectedException( 'Wikibase\EntityStore\FeatureNotSupportedException');
88
		$this->assertInstanceOf( 'Wikibase\EntityStore\ItemIdForQueryLookup', $store->getItemIdForQueryLookup() );
89
	}
90
}
91