Loading bin/tests 0 → 100755 +14 −0 Original line number Diff line number Diff line #!/usr/bin/env php <?php // Lancement de PHPUnit $dir = dirname(__DIR__); $vendor = dirname(dirname($dir)); $phpUnitExec = $vendor.'/bin/phpunit'; $command = 'clear;'.$phpUnitExec.' '.$dir.' --color=always'; passthru( $command); composer.json +4 −2 Original line number Diff line number Diff line { "name" : "unicaen/bddadmin", "description" : "Module administrer des bases de données Postgresql et Oracle", "description" : "Module pour administrer des bases de données Postgresql et Oracle", "repositories": [ { "type": "composer", Loading @@ -8,10 +8,12 @@ } ], "require": { "php": ">=8.2", }, "autoload" : { "psr-4" : { "Unicaen\\BddAdmin\\" : "src/" "Unicaen\\BddAdmin\\" : "src/", "Unicaen\\BddAdmin\\Tests" : "tests/" }, "classmap": [ "./Module.php" Loading phpunit.xml 0 → 100644 +22 −0 Original line number Diff line number Diff line <?xml version="1.0" encoding="UTF-8"?> <phpunit xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" bootstrap="tests/bootstrap.php" colors="true" xsi:noNamespaceSchemaLocation="https://schema.phpunit.de/9.3/phpunit.xsd"> <coverage processUncoveredFiles="true"> <include> <directory suffix=".php">./src</directory> </include> </coverage> <testsuites> <testsuite name="unit"> <directory>./tests</directory> </testsuite> </testsuites> <!--<php>--> <!--<!– Integration Test Variables –>--> <!--<const name="HOST" value="localhost"/>--> <!--<const name="PORT" value="4444"/>--> <!--<const name="BROWSER_URL" value="http://localhost/snortlog/"/> <!– '/' requis à la fin! –>--> <!--<const name="CAS_URL" value="https://cas.unicaen.fr/"/> <!– '/' requis à la fin! –>--> <!--<const name="USERNAME" value="21009539"/>--> <!--<const name="PASSWORD" value="UCBN2010"/>--> <!--</php>--> </phpunit> src/Bdd.php +47 −42 Original line number Diff line number Diff line Loading @@ -24,6 +24,7 @@ use Unicaen\BddAdmin\Manager\TriggerManagerInterface; use Unicaen\BddAdmin\Manager\UniqueConstraintManagerInterface; use Unicaen\BddAdmin\Manager\ViewManagerInterface; use \Exception; use Unicaen\BddAdmin\Manager\VoidManager; class Bdd { Loading Loading @@ -58,47 +59,47 @@ class Bdd private array $changements = [ Ddl::SCHEMA . '.create' => 'Création des schémas', // Ddl::SEQUENCE . '.rename' => 'Renomage des séquences', // Ddl::TABLE . '.rename' => 'Renomage des tables', // Ddl::VIEW . '.rename' => 'Renomage des vues', // Ddl::MATERIALIZED_VIEW . '.rename' => 'Renomage des vues matérialisées', // Ddl::PACKAGE . '.rename' => 'Renomage des packages', // Ddl::INDEX . '.rename' => 'Renomage des indexes', // Ddl::TRIGGER . '.rename' => 'Renomage des triggers', // Ddl::PRIMARY_CONSTRAINT . '.rename' => 'Renomage des clés primaires', // Ddl::REF_CONSTRAINT . '.rename' => 'Renomage des clés étrangères', // Ddl::UNIQUE_CONSTRAINT . '.rename' => 'Renomage des contraintes d\'unicité', // Ddl::TRIGGER . '.drop' => 'Suppression des triggers', // Ddl::SEQUENCE . '.drop' => 'Suppression des séquences', // Ddl::VIEW . '.drop' => 'Suppression des vues', // Ddl::MATERIALIZED_VIEW . '.drop' => 'Suppression des vues matérialisées', // Ddl::PACKAGE . '.drop' => 'Suppression des packages', // Ddl::REF_CONSTRAINT . '.drop' => 'Suppression des clés étrangères', // Ddl::PRIMARY_CONSTRAINT . '.drop' => 'Suppression des clés primaires', // Ddl::UNIQUE_CONSTRAINT . '.drop' => 'Suppression des contraintes d\'unicité', // Ddl::INDEX . '.drop' => 'Suppression des indexes', // Ddl::SEQUENCE . '.create' => 'Création des séquences', // Ddl::TABLE . '.create' => 'Création des tables', // Ddl::TABLE . '.alter' => 'Modification des tables', // Ddl::VIEW . '.create' => 'Création des vues', // Ddl::PACKAGE . '.create' => 'Création des packages', // Ddl::SEQUENCE . '.alter' => 'Modification des séquences', // Ddl::PACKAGE . '.alter' => 'Modification des packages', // Ddl::VIEW . '.alter' => 'Modification des vues', // Ddl::MATERIALIZED_VIEW . '.create' => 'Création des vues matérialisées', // Ddl::MATERIALIZED_VIEW . '.alter' => 'Modification des vues matérialisées', // Ddl::PRIMARY_CONSTRAINT . '.alter' => 'Modification des clés primaires', // Ddl::REF_CONSTRAINT . '.alter' => 'Modification des clés étrangères', // Ddl::UNIQUE_CONSTRAINT . '.alter' => 'Modification des contraintes d\'unicité', // Ddl::TRIGGER . '.alter' => 'Modification des triggers', // Ddl::INDEX . '.alter' => 'Modification des indexes', // Ddl::INDEX . '.create' => 'Création des indexes', // Ddl::PRIMARY_CONSTRAINT . '.create' => 'Création des clés primaires', // Ddl::REF_CONSTRAINT . '.create' => 'Création des clés étrangères', // Ddl::UNIQUE_CONSTRAINT . '.create' => 'Création des contraintes d\'unicité', // Ddl::TRIGGER . '.create' => 'Création des triggers', // Ddl::TABLE . '.drop' => 'Suppression des tables', // Ddl::SCHEMA . '.drop' => 'Suppression des schémas', Ddl::SEQUENCE . '.rename' => 'Renomage des séquences', Ddl::TABLE . '.rename' => 'Renomage des tables', Ddl::VIEW . '.rename' => 'Renomage des vues', Ddl::MATERIALIZED_VIEW . '.rename' => 'Renomage des vues matérialisées', Ddl::PACKAGE . '.rename' => 'Renomage des packages', Ddl::INDEX . '.rename' => 'Renomage des indexes', Ddl::TRIGGER . '.rename' => 'Renomage des triggers', Ddl::PRIMARY_CONSTRAINT . '.rename' => 'Renomage des clés primaires', Ddl::REF_CONSTRAINT . '.rename' => 'Renomage des clés étrangères', Ddl::UNIQUE_CONSTRAINT . '.rename' => 'Renomage des contraintes d\'unicité', Ddl::TRIGGER . '.drop' => 'Suppression des triggers', Ddl::SEQUENCE . '.drop' => 'Suppression des séquences', Ddl::VIEW . '.drop' => 'Suppression des vues', Ddl::MATERIALIZED_VIEW . '.drop' => 'Suppression des vues matérialisées', Ddl::PACKAGE . '.drop' => 'Suppression des packages', Ddl::REF_CONSTRAINT . '.drop' => 'Suppression des clés étrangères', Ddl::PRIMARY_CONSTRAINT . '.drop' => 'Suppression des clés primaires', Ddl::UNIQUE_CONSTRAINT . '.drop' => 'Suppression des contraintes d\'unicité', Ddl::INDEX . '.drop' => 'Suppression des indexes', Ddl::SEQUENCE . '.create' => 'Création des séquences', Ddl::TABLE . '.create' => 'Création des tables', Ddl::TABLE . '.alter' => 'Modification des tables', Ddl::VIEW . '.create' => 'Création des vues', Ddl::PACKAGE . '.create' => 'Création des packages', Ddl::SEQUENCE . '.alter' => 'Modification des séquences', Ddl::PACKAGE . '.alter' => 'Modification des packages', Ddl::VIEW . '.alter' => 'Modification des vues', Ddl::MATERIALIZED_VIEW . '.create' => 'Création des vues matérialisées', Ddl::MATERIALIZED_VIEW . '.alter' => 'Modification des vues matérialisées', Ddl::PRIMARY_CONSTRAINT . '.alter' => 'Modification des clés primaires', Ddl::REF_CONSTRAINT . '.alter' => 'Modification des clés étrangères', Ddl::UNIQUE_CONSTRAINT . '.alter' => 'Modification des contraintes d\'unicité', Ddl::TRIGGER . '.alter' => 'Modification des triggers', Ddl::INDEX . '.alter' => 'Modification des indexes', Ddl::INDEX . '.create' => 'Création des indexes', Ddl::PRIMARY_CONSTRAINT . '.create' => 'Création des clés primaires', Ddl::REF_CONSTRAINT . '.create' => 'Création des clés étrangères', Ddl::UNIQUE_CONSTRAINT . '.create' => 'Création des contraintes d\'unicité', Ddl::TRIGGER . '.create' => 'Création des triggers', Ddl::TABLE . '.drop' => 'Suppression des tables', Ddl::SCHEMA . '.drop' => 'Suppression des schémas', ]; /** Loading Loading @@ -312,7 +313,7 @@ class Bdd $this->driver->disconnect(); } $driverClass = isset($config['driver']) ? $config['driver'] : 'Oracle'; $driverClass = "\BddAdmin\Driver\\$driverClass\Driver"; $driverClass = "Unicaen\BddAdmin\Driver\\$driverClass\Driver"; $this->driver = new $driverClass($this); $this->driver->connect(); Loading @@ -323,7 +324,11 @@ class Bdd public function manager(string $name): ManagerInterface { try { $ddlClass = $this->driver->getDdlClass($name); }catch(\Exception $e){ $ddlClass = VoidManager::class; } if (!is_subclass_of($ddlClass, ManagerInterface::class)) { throw new \Exception($ddlClass . ' n\'est pas un objet DDL valide!!'); Loading src/Driver/Oracle/AbstractManagerDdlConstraint.php +1 −1 Original line number Diff line number Diff line Loading @@ -48,7 +48,7 @@ abstract class AbstractManagerDdlConstraint extends AbstractManager abstract public function makeCreate(array $data): void; abstract public function makeCreate(array $data): string; Loading Loading
bin/tests 0 → 100755 +14 −0 Original line number Diff line number Diff line #!/usr/bin/env php <?php // Lancement de PHPUnit $dir = dirname(__DIR__); $vendor = dirname(dirname($dir)); $phpUnitExec = $vendor.'/bin/phpunit'; $command = 'clear;'.$phpUnitExec.' '.$dir.' --color=always'; passthru( $command);
composer.json +4 −2 Original line number Diff line number Diff line { "name" : "unicaen/bddadmin", "description" : "Module administrer des bases de données Postgresql et Oracle", "description" : "Module pour administrer des bases de données Postgresql et Oracle", "repositories": [ { "type": "composer", Loading @@ -8,10 +8,12 @@ } ], "require": { "php": ">=8.2", }, "autoload" : { "psr-4" : { "Unicaen\\BddAdmin\\" : "src/" "Unicaen\\BddAdmin\\" : "src/", "Unicaen\\BddAdmin\\Tests" : "tests/" }, "classmap": [ "./Module.php" Loading
phpunit.xml 0 → 100644 +22 −0 Original line number Diff line number Diff line <?xml version="1.0" encoding="UTF-8"?> <phpunit xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" bootstrap="tests/bootstrap.php" colors="true" xsi:noNamespaceSchemaLocation="https://schema.phpunit.de/9.3/phpunit.xsd"> <coverage processUncoveredFiles="true"> <include> <directory suffix=".php">./src</directory> </include> </coverage> <testsuites> <testsuite name="unit"> <directory>./tests</directory> </testsuite> </testsuites> <!--<php>--> <!--<!– Integration Test Variables –>--> <!--<const name="HOST" value="localhost"/>--> <!--<const name="PORT" value="4444"/>--> <!--<const name="BROWSER_URL" value="http://localhost/snortlog/"/> <!– '/' requis à la fin! –>--> <!--<const name="CAS_URL" value="https://cas.unicaen.fr/"/> <!– '/' requis à la fin! –>--> <!--<const name="USERNAME" value="21009539"/>--> <!--<const name="PASSWORD" value="UCBN2010"/>--> <!--</php>--> </phpunit>
src/Bdd.php +47 −42 Original line number Diff line number Diff line Loading @@ -24,6 +24,7 @@ use Unicaen\BddAdmin\Manager\TriggerManagerInterface; use Unicaen\BddAdmin\Manager\UniqueConstraintManagerInterface; use Unicaen\BddAdmin\Manager\ViewManagerInterface; use \Exception; use Unicaen\BddAdmin\Manager\VoidManager; class Bdd { Loading Loading @@ -58,47 +59,47 @@ class Bdd private array $changements = [ Ddl::SCHEMA . '.create' => 'Création des schémas', // Ddl::SEQUENCE . '.rename' => 'Renomage des séquences', // Ddl::TABLE . '.rename' => 'Renomage des tables', // Ddl::VIEW . '.rename' => 'Renomage des vues', // Ddl::MATERIALIZED_VIEW . '.rename' => 'Renomage des vues matérialisées', // Ddl::PACKAGE . '.rename' => 'Renomage des packages', // Ddl::INDEX . '.rename' => 'Renomage des indexes', // Ddl::TRIGGER . '.rename' => 'Renomage des triggers', // Ddl::PRIMARY_CONSTRAINT . '.rename' => 'Renomage des clés primaires', // Ddl::REF_CONSTRAINT . '.rename' => 'Renomage des clés étrangères', // Ddl::UNIQUE_CONSTRAINT . '.rename' => 'Renomage des contraintes d\'unicité', // Ddl::TRIGGER . '.drop' => 'Suppression des triggers', // Ddl::SEQUENCE . '.drop' => 'Suppression des séquences', // Ddl::VIEW . '.drop' => 'Suppression des vues', // Ddl::MATERIALIZED_VIEW . '.drop' => 'Suppression des vues matérialisées', // Ddl::PACKAGE . '.drop' => 'Suppression des packages', // Ddl::REF_CONSTRAINT . '.drop' => 'Suppression des clés étrangères', // Ddl::PRIMARY_CONSTRAINT . '.drop' => 'Suppression des clés primaires', // Ddl::UNIQUE_CONSTRAINT . '.drop' => 'Suppression des contraintes d\'unicité', // Ddl::INDEX . '.drop' => 'Suppression des indexes', // Ddl::SEQUENCE . '.create' => 'Création des séquences', // Ddl::TABLE . '.create' => 'Création des tables', // Ddl::TABLE . '.alter' => 'Modification des tables', // Ddl::VIEW . '.create' => 'Création des vues', // Ddl::PACKAGE . '.create' => 'Création des packages', // Ddl::SEQUENCE . '.alter' => 'Modification des séquences', // Ddl::PACKAGE . '.alter' => 'Modification des packages', // Ddl::VIEW . '.alter' => 'Modification des vues', // Ddl::MATERIALIZED_VIEW . '.create' => 'Création des vues matérialisées', // Ddl::MATERIALIZED_VIEW . '.alter' => 'Modification des vues matérialisées', // Ddl::PRIMARY_CONSTRAINT . '.alter' => 'Modification des clés primaires', // Ddl::REF_CONSTRAINT . '.alter' => 'Modification des clés étrangères', // Ddl::UNIQUE_CONSTRAINT . '.alter' => 'Modification des contraintes d\'unicité', // Ddl::TRIGGER . '.alter' => 'Modification des triggers', // Ddl::INDEX . '.alter' => 'Modification des indexes', // Ddl::INDEX . '.create' => 'Création des indexes', // Ddl::PRIMARY_CONSTRAINT . '.create' => 'Création des clés primaires', // Ddl::REF_CONSTRAINT . '.create' => 'Création des clés étrangères', // Ddl::UNIQUE_CONSTRAINT . '.create' => 'Création des contraintes d\'unicité', // Ddl::TRIGGER . '.create' => 'Création des triggers', // Ddl::TABLE . '.drop' => 'Suppression des tables', // Ddl::SCHEMA . '.drop' => 'Suppression des schémas', Ddl::SEQUENCE . '.rename' => 'Renomage des séquences', Ddl::TABLE . '.rename' => 'Renomage des tables', Ddl::VIEW . '.rename' => 'Renomage des vues', Ddl::MATERIALIZED_VIEW . '.rename' => 'Renomage des vues matérialisées', Ddl::PACKAGE . '.rename' => 'Renomage des packages', Ddl::INDEX . '.rename' => 'Renomage des indexes', Ddl::TRIGGER . '.rename' => 'Renomage des triggers', Ddl::PRIMARY_CONSTRAINT . '.rename' => 'Renomage des clés primaires', Ddl::REF_CONSTRAINT . '.rename' => 'Renomage des clés étrangères', Ddl::UNIQUE_CONSTRAINT . '.rename' => 'Renomage des contraintes d\'unicité', Ddl::TRIGGER . '.drop' => 'Suppression des triggers', Ddl::SEQUENCE . '.drop' => 'Suppression des séquences', Ddl::VIEW . '.drop' => 'Suppression des vues', Ddl::MATERIALIZED_VIEW . '.drop' => 'Suppression des vues matérialisées', Ddl::PACKAGE . '.drop' => 'Suppression des packages', Ddl::REF_CONSTRAINT . '.drop' => 'Suppression des clés étrangères', Ddl::PRIMARY_CONSTRAINT . '.drop' => 'Suppression des clés primaires', Ddl::UNIQUE_CONSTRAINT . '.drop' => 'Suppression des contraintes d\'unicité', Ddl::INDEX . '.drop' => 'Suppression des indexes', Ddl::SEQUENCE . '.create' => 'Création des séquences', Ddl::TABLE . '.create' => 'Création des tables', Ddl::TABLE . '.alter' => 'Modification des tables', Ddl::VIEW . '.create' => 'Création des vues', Ddl::PACKAGE . '.create' => 'Création des packages', Ddl::SEQUENCE . '.alter' => 'Modification des séquences', Ddl::PACKAGE . '.alter' => 'Modification des packages', Ddl::VIEW . '.alter' => 'Modification des vues', Ddl::MATERIALIZED_VIEW . '.create' => 'Création des vues matérialisées', Ddl::MATERIALIZED_VIEW . '.alter' => 'Modification des vues matérialisées', Ddl::PRIMARY_CONSTRAINT . '.alter' => 'Modification des clés primaires', Ddl::REF_CONSTRAINT . '.alter' => 'Modification des clés étrangères', Ddl::UNIQUE_CONSTRAINT . '.alter' => 'Modification des contraintes d\'unicité', Ddl::TRIGGER . '.alter' => 'Modification des triggers', Ddl::INDEX . '.alter' => 'Modification des indexes', Ddl::INDEX . '.create' => 'Création des indexes', Ddl::PRIMARY_CONSTRAINT . '.create' => 'Création des clés primaires', Ddl::REF_CONSTRAINT . '.create' => 'Création des clés étrangères', Ddl::UNIQUE_CONSTRAINT . '.create' => 'Création des contraintes d\'unicité', Ddl::TRIGGER . '.create' => 'Création des triggers', Ddl::TABLE . '.drop' => 'Suppression des tables', Ddl::SCHEMA . '.drop' => 'Suppression des schémas', ]; /** Loading Loading @@ -312,7 +313,7 @@ class Bdd $this->driver->disconnect(); } $driverClass = isset($config['driver']) ? $config['driver'] : 'Oracle'; $driverClass = "\BddAdmin\Driver\\$driverClass\Driver"; $driverClass = "Unicaen\BddAdmin\Driver\\$driverClass\Driver"; $this->driver = new $driverClass($this); $this->driver->connect(); Loading @@ -323,7 +324,11 @@ class Bdd public function manager(string $name): ManagerInterface { try { $ddlClass = $this->driver->getDdlClass($name); }catch(\Exception $e){ $ddlClass = VoidManager::class; } if (!is_subclass_of($ddlClass, ManagerInterface::class)) { throw new \Exception($ddlClass . ' n\'est pas un objet DDL valide!!'); Loading
src/Driver/Oracle/AbstractManagerDdlConstraint.php +1 −1 Original line number Diff line number Diff line Loading @@ -48,7 +48,7 @@ abstract class AbstractManagerDdlConstraint extends AbstractManager abstract public function makeCreate(array $data): void; abstract public function makeCreate(array $data): string; Loading