streams/vendor/sabre/dav/tests/Sabre/DAVACL/PrincipalBackend/PDOMySQLTest.php

50 lines
1.4 KiB
PHP

<?php
namespace Sabre\DAVACL\PrincipalBackend;
use Sabre\DAV;
use Sabre\HTTP;
require_once 'Sabre/TestUtil.php';
class PDOMySQLTest extends AbstractPDOTest {
function getPDO() {
if (!SABRE_HASMYSQL) $this->markTestSkipped('MySQL driver is not available, or not properly configured');
$pdo = \Sabre\TestUtil::getMySQLDB();
if (!$pdo) $this->markTestSkipped('Could not connect to MySQL database');
$pdo->query("DROP TABLE IF EXISTS principals");
$pdo->query(<<<SQL
create table principals (
id integer unsigned not null primary key auto_increment,
uri varchar(50),
email varchar(80),
displayname VARCHAR(80),
vcardurl VARCHAR(80),
unique(uri)
)
SQL
);
$pdo->query("INSERT INTO principals (uri,email,displayname) VALUES ('principals/user','user@example.org','User')");
$pdo->query("INSERT INTO principals (uri,email,displayname) VALUES ('principals/group','group@example.org','Group')");
$pdo->query("DROP TABLE IF EXISTS groupmembers");
$pdo->query(<<<SQL
CREATE TABLE groupmembers (
id INTEGER UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT,
principal_id INTEGER UNSIGNED NOT NULL,
member_id INTEGER UNSIGNED NOT NULL,
UNIQUE(principal_id, member_id)
)
SQL
);
$pdo->query("INSERT INTO groupmembers (principal_id,member_id) VALUES (2,1)");
return $pdo;
}
}