diff --git a/composer.json b/composer.json index 5153ee78..d6596066 100644 --- a/composer.json +++ b/composer.json @@ -56,7 +56,7 @@ "psr-4": { "Module\\": "src/Module", "Custom\\": "src/Custom", - "ZM\\Tests\\": "tests" + "Tests\\": "tests" } }, "bin": [ diff --git a/tests/ZM/Utils/DataProviderTest.php b/tests/ZM/Utils/DataProviderTest.php new file mode 100644 index 00000000..1e280868 --- /dev/null +++ b/tests/ZM/Utils/DataProviderTest.php @@ -0,0 +1,67 @@ +assertEquals(SOURCE_ROOT_DIR, DataProvider::getSourceRootDir()); + } + + public function testGetDataFolder(): void + { + $this->assertEquals(SOURCE_ROOT_DIR . '/zm_data/', DataProvider::getDataFolder()); + } + + public function testGetResourceFolder(): void + { + $this->assertEquals(SOURCE_ROOT_DIR . '/resources/', DataProvider::getResourceFolder()); + } + + public function testScanDirFiles(): void + { + $files = DataProvider::scanDirFiles(SOURCE_ROOT_DIR . '/src/Module'); + $this->assertContains(SOURCE_ROOT_DIR . '/src/Module/Example/Hello.php', $files); + } + + public function testGetFrameworkRootDir(): void + { + $this->assertEquals(FRAMEWORK_ROOT_DIR, DataProvider::getFrameworkRootDir()); + } + + public function testGetWorkingDir(): void + { + $this->assertEquals(SOURCE_ROOT_DIR, DataProvider::getWorkingDir()); + } + + public function testSaveLoadJson(): void + { + $data = [ + 'a' => 1, + 'b' => 2, + 'c' => 3, + ]; + $file = 'test.json'; + DataProvider::saveToJson($file, $data); + $this->assertEquals($data, DataProvider::loadFromJson($file)); + } + + public function testGetFrameworkLink(): void + { + $this->assertNotFalse(filter_var(DataProvider::getFrameworkLink(), FILTER_VALIDATE_URL)); + } + + public function testIsRelativePath(): void + { + $this->assertTrue(DataProvider::isRelativePath('./')); + $this->assertTrue(DataProvider::isRelativePath('../')); + $this->assertFalse(DataProvider::isRelativePath('/')); + $this->assertFalse(DataProvider::isRelativePath('test.php')); + } +} diff --git a/tests/ZM/Utils/MessageUtilTest.php b/tests/ZM/Utils/MessageUtilTest.php index 131e00d8..0431b8f0 100644 --- a/tests/ZM/Utils/MessageUtilTest.php +++ b/tests/ZM/Utils/MessageUtilTest.php @@ -2,7 +2,7 @@ declare(strict_types=1); -namespace ZM\Tests\ZM\Utils; +namespace Tests\ZM\Utils; use PHPUnit\Framework\TestCase; use ZM\Annotation\CQ\CQCommand; @@ -147,6 +147,7 @@ class MessageUtilTest extends TestCase public function providerTestSplitCommand(): array { return [ + 'empty' => ['', ['']], 'spaced' => ['hello world', ['hello', 'world']], 'multiline' => ["hello\nworld", ['hello', 'world']], 'many spaces' => ['hello world', ['hello', 'world']],