Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
0.00% covered (danger)
0.00%
0 / 31
0.00% covered (danger)
0.00%
0 / 3
CRAP
0.00% covered (danger)
0.00%
0 / 1
Version000301Date20200108160931
0.00% covered (danger)
0.00%
0 / 31
0.00% covered (danger)
0.00%
0 / 3
30
0.00% covered (danger)
0.00%
0 / 1
 preSchemaChange
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 changeSchema
0.00% covered (danger)
0.00%
0 / 29
0.00% covered (danger)
0.00%
0 / 1
12
 postSchemaChange
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
1<?php
2
3declare(strict_types=1);
4
5namespace OCA\Cospend\Migration;
6
7use Closure;
8use OCP\DB\ISchemaWrapper;
9use OCP\Migration\SimpleMigrationStep;
10use OCP\Migration\IOutput;
11
12/**
13 * Auto-generated migration step: Please modify to your needs!
14 */
15class Version000301Date20200108160931 extends SimpleMigrationStep {
16
17    /**
18     * @param IOutput $output
19     * @param Closure $schemaClosure The `\Closure` returns a `ISchemaWrapper`
20     * @param array $options
21     */
22    public function preSchemaChange(IOutput $output, Closure $schemaClosure, array $options) {
23    }
24
25    /**
26     * @param IOutput $output
27     * @param Closure $schemaClosure The `\Closure` returns a `ISchemaWrapper`
28     * @param array $options
29     * @return null|ISchemaWrapper
30     */
31    public function changeSchema(IOutput $output, Closure $schemaClosure, array $options) {
32        /** @var ISchemaWrapper $schema */
33        $schema = $schemaClosure();
34
35        if (!$schema->hasTable('cospend_currencies')) {
36            $table = $schema->createTable('cospend_currencies');
37            $table->addColumn('id', 'integer', [
38                'autoincrement' => true,
39                'notnull' => true,
40                'length' => 4,
41            ]);
42            $table->addColumn('projectid', 'string', [
43                'notnull' => false,
44                'length' => 64,
45            ]);
46            $table->addColumn('name', 'string', [
47                'notnull' => true,
48                'length' => 64,
49            ]);
50            $table->addColumn('exchange_rate', 'float', [
51                'notnull' => true,
52                'length' => 10,
53            ]);
54            $table->setPrimaryKey(['id']);
55        }
56
57        if ($schema->hasTable('cospend_projects')) {
58            $table = $schema->getTable('cospend_projects');
59            $table->addColumn('currencyname', 'string', [
60                'notnull' => false,
61                'length' => 64,
62                'default' => null
63            ]);
64        }
65
66        return $schema;
67    }
68
69    /**
70     * @param IOutput $output
71     * @param Closure $schemaClosure The `\Closure` returns a `ISchemaWrapper`
72     * @param array $options
73     */
74    public function postSchemaChange(IOutput $output, Closure $schemaClosure, array $options) {
75    }
76}