From f242e658c3e11febb3e8c91496a482704b462f64 Mon Sep 17 00:00:00 2001 From: Bart Visscher Date: Fri, 12 Oct 2012 18:49:47 +0200 Subject: [PATCH] Fix the db tests when running all tests --- tests/lib/db.php | 34 +++++++--------------------------- tests/lib/dbschema.php | 2 +- 2 files changed, 8 insertions(+), 28 deletions(-) diff --git a/tests/lib/db.php b/tests/lib/db.php index 4f1f03ae6f2..2344f7d8ec4 100644 --- a/tests/lib/db.php +++ b/tests/lib/db.php @@ -7,6 +7,8 @@ */ class Test_DB extends UnitTestCase { + protected $backupGlobals = FALSE; + protected static $schema_file = 'static://test_db_scheme'; protected $test_prefix; @@ -17,6 +19,7 @@ class Test_DB extends UnitTestCase { $content = file_get_contents( $dbfile ); $content = str_replace( '*dbprefix*', '*dbprefix*'.$r, $content ); file_put_contents( self::$schema_file, $content ); + OC_DB::createDbFromStructure(self::$schema_file); $this->test_prefix = $r; $this->table1 = $this->test_prefix.'contacts_addressbooks'; @@ -24,29 +27,11 @@ class Test_DB extends UnitTestCase { } public function tearDown() { + OC_DB::removeDBStructure(self::$schema_file); unlink(self::$schema_file); } - protected function setUpDB() { - OC_DB::disconnect(); - OC_DB::createDbFromStructure(self::$schema_file); - } - protected function tearDownDB() { - OC_DB::removeDBStructure(self::$schema_file); - } - - // every thing in one test, phpunit messes with MDB2 - // also setUpDB and tearDownDB only once, otherwise sqlite doesn't finish - public function testDBCompatibility() { - $this->setUpDB(); - $this->doTestQuotes(); - $this->doTestNOW(); - $this->doTestUNIX_TIMESTAMP(); - $this->tearDownDB(); - } - - public function doTestQuotes() { - //$this->setUpDB(); + public function testQuotes() { $query = OC_DB::prepare('SELECT `fullname` FROM *PREFIX*'.$this->table2.' WHERE `uri` = ?'); $result = $query->execute(array('uri_1')); $this->assertTrue($result); @@ -63,28 +48,23 @@ class Test_DB extends UnitTestCase { $this->assertEqual($row['fullname'], 'fullname test'); $row = $result->fetchRow(); $this->assertFalse($row); - //$this->tearDownDB(); } - public function doTestNOW() { - //$this->setUpDB(); + public function testNOW() { $query = OC_DB::prepare('INSERT INTO *PREFIX*'.$this->table2.' (`fullname`,`uri`) VALUES (NOW(),?)'); $result = $query->execute(array('uri_2')); $this->assertTrue($result); $query = OC_DB::prepare('SELECT `fullname`,`uri` FROM *PREFIX*'.$this->table2.' WHERE `uri` = ?'); $result = $query->execute(array('uri_2')); $this->assertTrue($result); - //$this->tearDownDB(); } - public function doTestUNIX_TIMESTAMP() { - //$this->setUpDB(); + public function testUNIX_TIMESTAMP() { $query = OC_DB::prepare('INSERT INTO *PREFIX*'.$this->table2.' (`fullname`,`uri`) VALUES (UNIX_TIMESTAMP(),?)'); $result = $query->execute(array('uri_3')); $this->assertTrue($result); $query = OC_DB::prepare('SELECT `fullname`,`uri` FROM *PREFIX*'.$this->table2.' WHERE `uri` = ?'); $result = $query->execute(array('uri_3')); $this->assertTrue($result); - //$this->tearDownDB(); } } diff --git a/tests/lib/dbschema.php b/tests/lib/dbschema.php index 25abad7fc95..4796ada6921 100644 --- a/tests/lib/dbschema.php +++ b/tests/lib/dbschema.php @@ -35,7 +35,7 @@ class Test_DBSchema extends UnitTestCase { unlink(self::$schema_file2); } - // every thing in one test, phpunit messes with MDB2 + // everything in one test, they depend on each other public function testSchema() { $this->doTestSchemaCreating(); $this->doTestSchemaChanging();