From 758b2332f0e5e0487b10fc3f2139e85b40c8152e Mon Sep 17 00:00:00 2001 From: Morris Jobke Date: Sat, 18 Apr 2015 15:19:33 +0200 Subject: [PATCH] Use data provider instead of hand-crafted for loops * reduces scrutinizer complains * uses PHPUnit functionality --- tests/lib/db.php | 46 ++++++++++++++++++++++++---------------------- 1 file changed, 24 insertions(+), 22 deletions(-) diff --git a/tests/lib/db.php b/tests/lib/db.php index 1fb384ca9c6..5c25bfb9a5c 100644 --- a/tests/lib/db.php +++ b/tests/lib/db.php @@ -261,31 +261,33 @@ class Test_DB extends \Test\TestCase { $this->assertSame($expected, $actual); } - public function testDecimal() { + /** + * Insert, select and delete decimal(12,2) values + * @dataProvider decimalData + */ + public function testDecimal($insert, $expect) { $table = "*PREFIX*" . $this->table4; $rowname = 'decimaltest'; - // Insert, select and delete decimal(12,2) values - $inserts = array('1337133713.37', '1234567890'); - $expects = array('1337133713.37', '1234567890.00'); - - for ($i = 0; $i < count($inserts); $i++) { - $insert = $inserts[$i]; - $expect = $expects[$i]; - - $query = OC_DB::prepare('INSERT INTO `' . $table . '` (`' . $rowname . '`) VALUES (?)'); - $result = $query->execute(array($insert)); - $this->assertEquals(1, $result); - $query = OC_DB::prepare('SELECT `' . $rowname . '` FROM `' . $table . '`'); - $result = $query->execute(); - $this->assertTrue((bool)$result); - $row = $result->fetchRow(); - $this->assertArrayHasKey($rowname, $row); - $this->assertEquals($expect, $row[$rowname]); - $query = OC_DB::prepare('DELETE FROM `' . $table . '`'); - $result = $query->execute(); - $this->assertTrue((bool)$result); - } + $query = OC_DB::prepare('INSERT INTO `' . $table . '` (`' . $rowname . '`) VALUES (?)'); + $result = $query->execute(array($insert)); + $this->assertEquals(1, $result); + $query = OC_DB::prepare('SELECT `' . $rowname . '` FROM `' . $table . '`'); + $result = $query->execute(); + $this->assertTrue((bool)$result); + $row = $result->fetchRow(); + $this->assertArrayHasKey($rowname, $row); + $this->assertEquals($expect, $row[$rowname]); + $query = OC_DB::prepare('DELETE FROM `' . $table . '`'); + $result = $query->execute(); + $this->assertTrue((bool)$result); + } + + public function decimalData() { + return [ + ['1337133713.37', '1337133713.37'], + ['1234567890', '1234567890.00'], + ]; } public function testUpdateAffectedRowsNoMatch() { -- 2.39.5