dbxapp 4.1.3
CMS, Shop, Workflows und modulare Geschäftsanwendungen
Loading...
Searching...
No Matches
dbxApi_paths_test.php
Go to the documentation of this file.
1<?php
2
3require_once dirname(__DIR__, 2) . '/vendor/autoload.php';
4require_once dirname(__DIR__) . '/dbxKernel.php';
5
6$normalize = static function (string $path): string {
7 return str_replace('\\', '/', $path);
8};
9
10$expectedBase = rtrim($normalize(realpath(dirname(__DIR__, 3))), '/') . '/';
13
14if ($base !== $expectedBase) {
15 fwrite(STDERR, "FAIL: Basisverzeichnis ist nicht portabel: $base\n");
16 exit(1);
17}
18if ($files !== $expectedBase . 'files/') {
19 fwrite(STDERR, "FAIL: Dateiverzeichnis ist nicht portabel: $files\n");
20 exit(2);
21}
22
23$stored = dbx()->config_path_store($expectedBase . 'files/test/', true);
24if ($stored !== 'files/test/') {
25 fwrite(STDERR, "FAIL: Projektpfad wurde nicht relativ gespeichert: $stored\n");
26 exit(3);
27}
28
30if ($resolved !== $expectedBase . 'files/test/') {
31 fwrite(STDERR, "FAIL: Projektpfad wurde nicht korrekt aufgeloest: $resolved\n");
32 exit(4);
33}
34
35$config = array('db' => array(
36 'main' => array('type' => 'mysql', 'dbname' => 'main'),
37 'module' => array('type' => 'sqlite', 'dbname' => 'module.db3'),
38 'dbx|other.db3' => array('type' => '', 'dbname' => 'other.db3'),
39));
40$cleanConfig = dbx()->get_system_obj('dbxConfigStore')->normalize_for_store($config);
41if (array_keys($cleanConfig['db'] ?? array()) !== array('main')) {
42 fwrite(STDERR, "FAIL: Dynamische Moduldatenbanken wurden nicht entfernt.\n");
43 exit(5);
44}
45
46if (dbx()->error_type(E_WARNING) !== 'E_WARNING' || dbx()->error_type(-123) !== 'E_UNKNOWN') {
47 fwrite(STDERR, "FAIL: PHP-Fehlertypen werden nicht korrekt abgebildet.\n");
48 exit(6);
49}
50
51echo "OK dbxApi paths\n";
get_base_dir(int $cutData=0)
Liefert das Basisverzeichnis der Installation.
Definition dbxApi.php:1507
get_file_dir()
Liefert das files/-Verzeichnis der Installation.
Definition dbxApi.php:1524
error_type(int $errno)
Uebersetzt eine PHP-Fehlernummer in ihre symbolische Bezeichnung.
Definition dbxApi.php:1599
config_path_resolve(string $path)
Loest einen gespeicherten Projektpfad in einen Betriebssystempfad auf.
Definition dbxApi.php:1582
if($stored !=='files/test/') $resolved
if( $base !==$expectedBase) if($files !==$expectedBase . 'files/') $stored
if($resolved !==$expectedBase . 'files/test/') $config
exit
Definition index.php:146
DBX schema administration.