Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
0.00% covered (danger)
0.00%
0 / 5
0.00% covered (danger)
0.00%
0 / 1
CRAP
0.00% covered (danger)
0.00%
0 / 1
SchemaHooksHandler
0.00% covered (danger)
0.00%
0 / 5
0.00% covered (danger)
0.00%
0 / 1
12
0.00% covered (danger)
0.00%
0 / 1
 onLoadExtensionSchemaUpdates
0.00% covered (danger)
0.00%
0 / 5
0.00% covered (danger)
0.00%
0 / 1
12
1<?php
2
3namespace MediaWiki\Extension\Math\HookHandlers;
4
5use DatabaseUpdater;
6use MediaWiki\Installer\Hook\LoadExtensionSchemaUpdatesHook;
7
8/**
9 * Hook handler for schema hook
10 */
11class SchemaHooksHandler implements LoadExtensionSchemaUpdatesHook {
12
13    /**
14     * LoadExtensionSchemaUpdates handler; set up math table on install/upgrade.
15     *
16     * @param DatabaseUpdater $updater
17     */
18    public function onLoadExtensionSchemaUpdates( $updater ) {
19        $type = $updater->getDB()->getType();
20        if ( !in_array( $type, [ 'mysql', 'sqlite', 'postgres' ], true ) ) {
21            return;
22        }
23
24        foreach ( [ 'mathoid', 'mathlatexml' ] as $mode ) {
25            $updater->dropExtensionTable( $mode );
26        }
27    }
28}