diff options
author | Joas Schilling <nickvergessen@owncloud.com> | 2015-03-03 11:27:06 +0100 |
---|---|---|
committer | Joas Schilling <nickvergessen@owncloud.com> | 2015-03-03 11:27:06 +0100 |
commit | 8df4077dd7b38328b640e1b2a1843ff5e38d622e (patch) | |
tree | 056647c6903b0cd2b4ebb512dd983011a8a4369e /tests/lib/repair | |
parent | 195c577c77b854723dc79e4baf19ad8d6b4d6d86 (diff) | |
download | nextcloud-server-8df4077dd7b38328b640e1b2a1843ff5e38d622e.tar.gz nextcloud-server-8df4077dd7b38328b640e1b2a1843ff5e38d622e.zip |
Add a test for dropping the tables
Diffstat (limited to 'tests/lib/repair')
-rw-r--r-- | tests/lib/repair/dropoldtables.php | 38 | ||||
-rw-r--r-- | tests/lib/repair/fixtures/dropoldtables.xml | 24 |
2 files changed, 62 insertions, 0 deletions
diff --git a/tests/lib/repair/dropoldtables.php b/tests/lib/repair/dropoldtables.php new file mode 100644 index 00000000000..244d8837949 --- /dev/null +++ b/tests/lib/repair/dropoldtables.php @@ -0,0 +1,38 @@ +<?php +/** + * Copyright (c) 2015 Joas Schilling <nickvergessen@owncloud.com> + * This file is licensed under the Affero General Public License version 3 or + * later. + * See the COPYING-README file. + */ + +namespace Test\Repair; + +/** + * Tests for the dropping old tables + * + * @see \OC\Repair\DropOldTables + */ +class DropOldTables extends \Test\TestCase { + /** @var \OCP\IDBConnection */ + protected $connection; + + protected function setUp() { + parent::setUp(); + + $this->connection = \OC::$server->getDatabaseConnection(); + $manager = new \OC\DB\MDB2SchemaManager($this->connection); + $manager->createDbFromStructure(__DIR__ . '/fixtures/dropoldtables.xml'); + } + + public function testRun() { + $this->assertFalse($this->connection->tableExists('sharing'), 'Asserting that the table oc_sharing does not exist before repairing'); + $this->assertTrue($this->connection->tableExists('permissions'), 'Asserting that the table oc_permissions does exist before repairing'); + + $repair = new \OC\Repair\DropOldTables($this->connection); + $repair->run(); + + $this->assertFalse($this->connection->tableExists('sharing'), 'Asserting that the table oc_sharing does not exist after repairing'); + $this->assertFalse($this->connection->tableExists('permissions'), 'Asserting that the table oc_permissions does not exist after repairing'); + } +} diff --git a/tests/lib/repair/fixtures/dropoldtables.xml b/tests/lib/repair/fixtures/dropoldtables.xml new file mode 100644 index 00000000000..6c42a8f90a7 --- /dev/null +++ b/tests/lib/repair/fixtures/dropoldtables.xml @@ -0,0 +1,24 @@ +<?xml version="1.0" encoding="utf-8" ?> +<database> + + <name>*dbname*</name> + <create>true</create> + <overwrite>false</overwrite> + + <charset>utf8</charset> + + <table> + + <name>*dbprefix*permissions</name> + + <declaration> + <field> + <name>textfield</name> + <type>text</type> + <default>foo</default> + <notnull>true</notnull> + <length>32</length> + </field> + </declaration> + </table> +</database> |