Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
0.00% covered (danger)
0.00%
0 / 25
0.00% covered (danger)
0.00%
0 / 2
CRAP
0.00% covered (danger)
0.00%
0 / 1
Scribunto_LuaTitleBlacklistLibrary
0.00% covered (danger)
0.00%
0 / 25
0.00% covered (danger)
0.00%
0 / 2
30
0.00% covered (danger)
0.00%
0 / 1
 register
0.00% covered (danger)
0.00%
0 / 6
0.00% covered (danger)
0.00%
0 / 1
2
 test
0.00% covered (danger)
0.00%
0 / 19
0.00% covered (danger)
0.00%
0 / 1
20
1<?php
2
3namespace MediaWiki\Extension\TitleBlacklist;
4
5use MediaWiki\MediaWikiServices;
6use Scribunto_LuaLibraryBase;
7
8class Scribunto_LuaTitleBlacklistLibrary extends Scribunto_LuaLibraryBase {
9    public function register() {
10        $lib = [
11            'test' => [ $this, 'test' ],
12        ];
13
14        return $this->getEngine()->registerInterface(
15            __DIR__ . '/mw.ext.TitleBlacklist.lua', $lib, []
16        );
17    }
18
19    public function test( $action = null, $title = null ) {
20        $this->checkType( 'mw.ext.TitleBlacklist.test', 1, $action, 'string' );
21        $this->checkTypeOptional( 'mw.ext.TitleBlacklist.test', 2, $title, 'string', '' );
22        $this->incrementExpensiveFunctionCount();
23        if ( $title == '' ) {
24            $page = $this->getParser()->getPage();
25            if ( !$page ) {
26                // Nothing to check
27                return [ null ];
28            }
29            $title = MediaWikiServices::getInstance()->getTitleFormatter()->getPrefixedText( $page );
30        }
31        $entry = TitleBlacklist::singleton()->isBlacklisted( $title, $action );
32        if ( $entry ) {
33            return [ [
34                'params' => $entry->getParams(),
35                'regex' => $entry->getRegex(),
36                'raw' => $entry->getRaw(),
37                'version' => $entry->getFormatVersion(),
38                'message' => $entry->getErrorMessage( $action ),
39                'custommessage' => $entry->getCustomMessage()
40            ] ];
41        }
42        return [ null ];
43    }
44
45}