diff --git a/README.md b/README.md index 17c7e68..44a46a7 100644 --- a/README.md +++ b/README.md @@ -44,6 +44,14 @@ Now we need a table in the database to store the users. In `/config/sql/setup.sq ### Views The last step is to copy the views from `/vendor/ptorn/user/bth-anax-user/view/user/` into `/view/` +### Autoload Namespace +Add this to your composer.json +`"autoload": { + "psr-4": { + "Peto16\\": "src/", + "testing\\": "test/src/" + }` + Usage ------------------ Once installation is done there will be some new routes available. diff --git a/composer.json b/composer.json index 713ee4a..f0a9781 100644 --- a/composer.json +++ b/composer.json @@ -21,7 +21,6 @@ "Anax\\": "src/", "Peto16\\": "src/", "testing\\": "test/src/" - } }, "require": { diff --git a/config/testDatabase.php b/test/config/testDatabase.php similarity index 100% rename from config/testDatabase.php rename to test/config/testDatabase.php diff --git a/config/testDi.php b/test/config/testDi.php similarity index 85% rename from config/testDi.php rename to test/config/testDi.php index c4a9f3e..25f62a2 100644 --- a/config/testDi.php +++ b/test/config/testDi.php @@ -18,7 +18,7 @@ "response" => [ "shared" => true, "callback" => function () { - $obj = new \testing\User\Helper(); + $obj = new \testing\User\MockingClass(); return $obj; } ], @@ -49,7 +49,7 @@ "view" => [ "shared" => true, "callback" => function () { - $view = new \testing\User\Helper(); + $view = new \testing\User\MockingClass(); return $view; } ], @@ -66,7 +66,7 @@ "active" => true, "callback" => function () { $session = new \Anax\Session\SessionConfigurable(); - $session->configure("testSession.php"); + $session->configure(ANAX_APP_PATH . "/test/config/testSession.php"); $session->start(); return $session; } @@ -102,7 +102,7 @@ "pageRender" => [ "shared" => true, "callback" => function () { - $obj = new \testing\User\Helper(); + $obj = new \testing\User\MockingClass(); return $obj; } ], @@ -110,7 +110,19 @@ "shared" => true, "callback" => function () { $obj = new \Anax\Database\DatabaseQueryBuilder(); - $obj->configure("testDatabase.php"); + $obj->configure([ + "dsn" => "sqlite::memory:", + "username" => null, + "password" => null, + "driver_options" => null, + "fetch_mode" => \PDO::FETCH_OBJ, + "table_prefix" => null, + "session_key" => "Anax\Database", + // True to be very verbose during development + "verbose" => true, + // True to be verbose on connection failed + "debug_connect" => true, + ]); $obj->connect(); $sql = ' @@ -139,7 +151,7 @@ "utils" => [ "shared" => true, "callback" => function () { - $utils = new \testing\User\Helper(); + $utils = new \testing\User\MockingClass(); return $utils; } ], diff --git a/config/testSession.php b/test/config/testSession.php similarity index 100% rename from config/testSession.php rename to test/config/testSession.php diff --git a/test/src/User/HTMLForm/CreateUserFormTest.php b/test/src/User/HTMLForm/CreateUserFormTest.php index f709fea..e76a976 100644 --- a/test/src/User/HTMLForm/CreateUserFormTest.php +++ b/test/src/User/HTMLForm/CreateUserFormTest.php @@ -19,7 +19,8 @@ class CreateUserFormTest extends TestCase */ public static function setUpBeforeClass() { - self::$di = new \Anax\DI\DIFactoryConfig("testDi.php"); + self::$di = new \Anax\DI\DIFactoryConfig(); + self::$di->configure(ANAX_APP_PATH . "/test/config/testDi.php"); } diff --git a/test/src/User/HTMLForm/DeleteUserFormTest.php b/test/src/User/HTMLForm/DeleteUserFormTest.php index 82855f4..facd6e7 100644 --- a/test/src/User/HTMLForm/DeleteUserFormTest.php +++ b/test/src/User/HTMLForm/DeleteUserFormTest.php @@ -19,7 +19,8 @@ class DeleteUserFormTest extends TestCase */ public static function setUpBeforeClass() { - self::$di = new \Anax\DI\DIFactoryConfig("testDi.php"); + self::$di = new \Anax\DI\DIFactoryConfig(); + self::$di->configure(ANAX_APP_PATH . "/test/config/testDi.php"); self::$session = self::$di->get("session"); $user = new \Peto16\User\User(); $user->username = "admin"; diff --git a/test/src/User/HTMLForm/UpdateUserFormTest.php b/test/src/User/HTMLForm/UpdateUserFormTest.php index 083785e..15023c1 100644 --- a/test/src/User/HTMLForm/UpdateUserFormTest.php +++ b/test/src/User/HTMLForm/UpdateUserFormTest.php @@ -20,7 +20,8 @@ class UpdateUserFormTest extends TestCase */ public static function setUpBeforeClass() { - self::$di = new \Anax\DI\DIFactoryConfig("testDi.php"); + self::$di = new \Anax\DI\DIFactoryConfig(); + self::$di->configure(ANAX_APP_PATH . "/test/config/testDi.php"); self::$session = self::$di->get("session"); $user = new \Peto16\User\User(); $user->username = "admin"; diff --git a/test/src/User/HTMLForm/UserLoginFormTest.php b/test/src/User/HTMLForm/UserLoginFormTest.php index daf810f..80e6d92 100644 --- a/test/src/User/HTMLForm/UserLoginFormTest.php +++ b/test/src/User/HTMLForm/UserLoginFormTest.php @@ -19,7 +19,8 @@ class UserLoginFormTest extends TestCase */ public static function setUpBeforeClass() { - self::$di = new \Anax\DI\DIFactoryConfig("testDi.php"); + self::$di = new \Anax\DI\DIFactoryConfig(); + self::$di->configure(ANAX_APP_PATH . "/test/config/testDi.php"); } diff --git a/test/src/User/Helper.php b/test/src/User/MockingClass.php similarity index 97% rename from test/src/User/Helper.php rename to test/src/User/MockingClass.php index 243ab6a..2d1633b 100644 --- a/test/src/User/Helper.php +++ b/test/src/User/MockingClass.php @@ -5,7 +5,7 @@ /** * Helper class to mock methods. */ -class Helper +class MockingClass { /** diff --git a/test/src/User/UserControllerTest.php b/test/src/User/UserControllerTest.php index 424b04e..04b6ba9 100644 --- a/test/src/User/UserControllerTest.php +++ b/test/src/User/UserControllerTest.php @@ -15,28 +15,14 @@ class UserControllerTest extends TestCase protected static $userController; - // /** - // * Setup before testing class. - // */ - // public static function setUpBeforeClass() - // { - // self::$di = new \Anax\DI\DIFactoryConfig("testDi.php"); - // self::$userController = new UserController(); - // self::$userController->setDi(self::$di); - // self::$userController->init(); - // self::$session = self::$di->get("session"); - // $user = new User(); - // $user->id = 2; - // $user->username = "admin"; - // $user->administrator = true; - // $user->enabled = true; - // - // self::$session->set("user", $user); - // } + /** + * Setup testing environment + */ public function setUp() { - self::$di = new \Anax\DI\DIFactoryConfig("testDi.php"); + self::$di = new \Anax\DI\DIFactoryConfig(); + self::$di->configure(ANAX_APP_PATH . "/test/config/testDi.php"); self::$userController = new UserController(); self::$userController->setDi(self::$di); self::$userController->init(); @@ -50,6 +36,8 @@ public function setUp() self::$session->set("user", $admin); } + + /** * Initiate the controller test. */ @@ -59,6 +47,7 @@ public function testInit() } + /** * Create an object. */ @@ -67,6 +56,10 @@ public function testCreate() $userController = new UserController(); $this->assertInstanceOf("Peto16\User\UserController", $userController); } + + + + /** * Inject $di. */ @@ -79,6 +72,11 @@ public function testInjectDi() } + + /** + * Test the login process + * @return void + */ public function testGetPostLogin() { self::$userController->getPostLogin(); @@ -86,6 +84,10 @@ public function testGetPostLogin() + /** + * Test create user. + * @return void + */ public function testGetPostCreateUser() { self::$userController->getPostCreateUser(); @@ -93,6 +95,10 @@ public function testGetPostCreateUser() + /** + * Test update user. + * @return void + */ public function testGetPostUpdateUser() { self::$userController->getPostUpdateUser(1); @@ -112,6 +118,10 @@ public function testGetPostUpdateUser() + /** + * Test delete user. + * @return void + */ public function testGetPostDeleteUser() { self::$userController->getPostDeleteUser(1); @@ -131,8 +141,14 @@ public function testGetPostDeleteUser() + /** + * Test logout. + * @return void + */ public function testLogout() { + $this->assertTrue(self::$session->has("user")); self::$userController->logout(); + $this->assertFalse(self::$session->has("user")); } } diff --git a/test/src/User/UserServiceTest.php b/test/src/User/UserServiceTest.php index 0438473..c427d43 100644 --- a/test/src/User/UserServiceTest.php +++ b/test/src/User/UserServiceTest.php @@ -17,7 +17,8 @@ class UserServiceTest extends TestCase */ public function setUp() { - self::$di = new \Anax\DI\DIFactoryConfig("testDi.php"); + self::$di = new \Anax\DI\DIFactoryConfig(); + self::$di->configure(ANAX_APP_PATH . "/test/config/testDi.php"); self::$session = self::$di->get("session"); self::$userService = new UserService(self::$di); $admin = new User();