1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
|
<?php
namespace SMW\Tests\MediaWiki\Specials\Ask;
use SMW\MediaWiki\Specials\Ask\ErrorWidget;
/**
* @covers \SMW\MediaWiki\Specials\Ask\ErrorWidget
* @group semantic-mediawiki
*
* @license GNU GPL v2+
* @since 2.5
*
* @author mwjames
*/
class ErrorWidgetTest extends \PHPUnit_Framework_TestCase {
public function testSessionFailure() {
$this->assertInternalType(
'string',
ErrorWidget::sessionFailure()
);
}
public function testNoScript() {
$this->assertInternalType(
'string',
ErrorWidget::noScript()
);
}
public function testNoResult() {
$this->assertInternalType(
'string',
ErrorWidget::noResult()
);
}
/**
* @dataProvider queryErrorProvider
*/
public function testGetFormattedQueryErrorElement( $errors, $expected ) {
$query = $this->getMockBuilder( '\SMWQuery' )
->disableOriginalConstructor()
->getMock();
$query->expects( $this->atLeastOnce() )
->method( 'getErrors' )
->will( $this->returnValue( $errors ) );
$this->assertEquals(
$expected,
ErrorWidget::queryError( $query )
);
}
public function queryErrorProvider() {
$provider[] = [
'',
''
];
$provider[] = [
[ 'Foo' ],
'<div id="result-error" class="smw-callout smw-callout-error">Foo</div>'
];
$provider[] = [
[ 'Foo', 'Bar' ],
'<div id="result-error" class="smw-callout smw-callout-error"><ul><li>Foo</li><li>Bar</li></ul></div>'
];
$provider[] = [
[ 'Foo', [ 'Bar' ] ],
'<div id="result-error" class="smw-callout smw-callout-error"><ul><li>Foo</li><li>Bar</li></ul></div>'
];
// Filter duplicate
$provider[] = [
[ 'Foo', [ 'Bar' ], 'Bar' ],
'<div id="result-error" class="smw-callout smw-callout-error"><ul><li>Foo</li><li>Bar</li></ul></div>'
];
return $provider;
}
}
|