Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
100.00% covered (success)
100.00%
17 / 17
100.00% covered (success)
100.00%
5 / 5
CRAP
100.00% covered (success)
100.00%
1 / 1
HookRunner
100.00% covered (success)
100.00%
17 / 17
100.00% covered (success)
100.00%
5 / 5
5
100.00% covered (success)
100.00%
1 / 1
 __construct
100.00% covered (success)
100.00%
1 / 1
100.00% covered (success)
100.00%
1 / 1
1
 onUserMergeAccountFields
100.00% covered (success)
100.00%
4 / 4
100.00% covered (success)
100.00%
1 / 1
1
 onMergeAccountFromTo
100.00% covered (success)
100.00%
4 / 4
100.00% covered (success)
100.00%
1 / 1
1
 onUserMergeAccountDeleteTables
100.00% covered (success)
100.00%
4 / 4
100.00% covered (success)
100.00%
1 / 1
1
 onDeleteAccount
100.00% covered (success)
100.00%
4 / 4
100.00% covered (success)
100.00%
1 / 1
1
1<?php
2
3namespace MediaWiki\Extension\UserMerge\Hooks;
4
5use MediaWiki\HookContainer\HookContainer;
6use MediaWiki\User\User;
7
8/**
9 * This is a hook runner class, see docs/Hooks.md in core.
10 * @internal
11 */
12class HookRunner implements
13    AccountFieldsHook,
14    MergeAccountFromToHook,
15    AccountDeleteTablesHook,
16    DeleteAccountHook
17{
18    private HookContainer $hookContainer;
19
20    public function __construct( HookContainer $hookContainer ) {
21        $this->hookContainer = $hookContainer;
22    }
23
24    /**
25     * @inheritDoc
26     */
27    public function onUserMergeAccountFields( array &$updateFields ) {
28        return $this->hookContainer->run(
29            'UserMergeAccountFields',
30            [ &$updateFields ]
31        );
32    }
33
34    /**
35     * @inheritDoc
36     */
37    public function onMergeAccountFromTo( User &$oldUser, User &$newUser ) {
38        return $this->hookContainer->run(
39            'MergeAccountFromTo',
40            [ &$oldUser, &$newUser ]
41        );
42    }
43
44    /**
45     * @inheritDoc
46     */
47    public function onUserMergeAccountDeleteTables( array &$tablesToDelete ) {
48        return $this->hookContainer->run(
49            'UserMergeAccountDeleteTables',
50            [ &$tablesToDelete ]
51        );
52    }
53
54    /**
55     * @inheritDoc
56     */
57    public function onDeleteAccount( User &$oldUser ) {
58        return $this->hookContainer->run(
59            'DeleteAccount',
60            [ &$oldUser ]
61        );
62    }
63
64}