Skip to content
Snippets Groups Projects
Commit 17080324 authored by Marcus Eibrink-Lunzenauer's avatar Marcus Eibrink-Lunzenauer
Browse files

remove pdo_sqlite dependency

parent 6531b2db
No related branches found
No related tags found
No related merge requests found
......@@ -40,7 +40,7 @@ define("TEST_FIXTURES_PATH", dirname(__DIR__) . "/_data/");
require __DIR__ . '/../../composer/autoload.php';
global $STUDIP_BASE_PATH;
$STUDIP_BASE_PATH = realpath(dirname(dirname(__FILE__)) . '/..');
$STUDIP_BASE_PATH = realpath(dirname(__DIR__) . '/..');
require 'lib/classes/StudipAutoloader.php';
require 'lib/functions.php';
......
<?php
/*
* studip_pdo_test.php - unit tests for the StudipPDO class
*
......@@ -16,7 +17,16 @@ class StudipPdoTest extends \Codeception\Test\Unit
{
public function setUp(): void
{
$this->testPdo = new class ('sqlite::memory:') extends StudipPDO {
$dsn =
'mysql:host=' .
$GLOBALS['DB_STUDIP_HOST'] .
';dbname=' .
$GLOBALS['DB_STUDIP_DATABASE'] .
';charset=utf8mb4';
$username = $GLOBALS['DB_STUDIP_USER'];
$password = $GLOBALS['DB_STUDIP_PASSWORD'];
$this->testPdo = new class ($dsn, $username, $password) extends StudipPDO {
public static function doReplaceStrings($statement)
{
return parent::replaceStrings($statement);
......@@ -33,7 +43,7 @@ class StudipPdoTest extends \Codeception\Test\Unit
public function testSimpleString()
{
$query = 'SELECT * FROM bar';
$query = 'SELECT * FROM bar';
$expect = $query;
$this->assertEquals($expect, $this->testPdo::doReplaceStrings($query));
......@@ -41,12 +51,12 @@ class StudipPdoTest extends \Codeception\Test\Unit
public function testDoubleQuotedString()
{
$query = 'SELECT "\'foo""\\"" FROM bar WHERE foo = "\\\\"';
$query = 'SELECT "\'foo""\\"" FROM bar WHERE foo = "\\\\"';
$expect = 'SELECT ? FROM bar WHERE foo = ?';
$this->assertEquals($expect, $this->testPdo::doReplaceStrings($query));
$query = str_repeat($query, 100);
$query = str_repeat($query, 100);
$expect = str_repeat($expect, 100);
$this->assertEquals($expect, $this->testPdo::doReplaceStrings($query));
......@@ -54,12 +64,12 @@ class StudipPdoTest extends \Codeception\Test\Unit
public function testSingleQuotedString()
{
$query = 'SELECT \'"foo\'\'\\\'\' FROM bar WHERE foo = \'\\\\\'';
$query = 'SELECT \'"foo\'\'\\\'\' FROM bar WHERE foo = \'\\\\\'';
$expect = 'SELECT ? FROM bar WHERE foo = ?';
$this->assertEquals($expect, $this->testPdo::doReplaceStrings($query));
$query = str_repeat($query, 100);
$query = str_repeat($query, 100);
$expect = str_repeat($expect, 100);
$this->assertEquals($expect, $this->testPdo::doReplaceStrings($query));
......@@ -67,12 +77,12 @@ class StudipPdoTest extends \Codeception\Test\Unit
public function testMixedQuotedString()
{
$query = 'SELECT """\'", \'"\' FROM bar WHERE foo IN (\'\'\'"\'"")';
$query = 'SELECT """\'", \'"\' FROM bar WHERE foo IN (\'\'\'"\'"")';
$expect = 'SELECT ?, ? FROM bar WHERE foo IN (??)';
$this->assertEquals($expect, $this->testPdo::doReplaceStrings($query));
$query = str_repeat($query, 100);
$query = str_repeat($query, 100);
$expect = str_repeat($expect, 100);
$this->assertEquals($expect, $this->testPdo::doReplaceStrings($query));
......@@ -80,7 +90,7 @@ class StudipPdoTest extends \Codeception\Test\Unit
public function testUnterminatedSingleQuote()
{
$query = 'SELECT \'1\' ORDER BY \'au.username asc';
$query = 'SELECT \'1\' ORDER BY \'au.username asc';
$expect = 'SELECT ? ORDER BY \'au.username asc';
$this->assertEquals($expect, $this->testPdo::doReplaceStrings($query));
......@@ -88,7 +98,7 @@ class StudipPdoTest extends \Codeception\Test\Unit
public function testUnterminatedDoubleQuote()
{
$query = 'SELECT "1" ORDER BY "au.username asc';
$query = 'SELECT "1" ORDER BY "au.username asc';
$expect = 'SELECT ? ORDER BY "au.username asc';
$this->assertEquals($expect, $this->testPdo::doReplaceStrings($query));
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment