Exemplo n.º 1
0
 public function testGetDatabaseSchema()
 {
     $schema = UtilUnitTest::call_private_or_protected_method(get_class($this->__extractor), '_getDatabaseSchema', $this->__extractor, $this->__mySqlConnector);
     $this->assertTrue(is_array($schema));
     /**
      * @var array $schema
      */
     $sortedSchema = [];
     $keys = array_keys($schema);
     sort($keys);
     foreach ($keys as $_key) {
         $fields = $schema[$_key];
         sort($fields);
         $sortedSchema[$_key] = $fields;
     }
     $referencePath = $this->__generalConfiguration['test']['dir.references'] . DIRECTORY_SEPARATOR . 'mysql_db_schema.json';
     $this->assertJsonStringEqualsJsonFile($referencePath, json_encode($sortedSchema));
 }
Exemplo n.º 2
0
 public function testDevelopSql()
 {
     $sql = "SELECT __USER__ FROM `user`";
     $tags = ['__USER__' => 'user.*', '__PROFILE__' => 'profile.*'];
     $expected = "SELECT user.id, user.login FROM `user`";
     $result = UtilMySql::developSql($sql, $this->__schema, false, false, $tags);
     $this->assertEquals($expected, $result);
     $expected = "SELECT user.id AS 'user.id', user.login AS 'user.login' FROM `user`";
     $result = UtilMySql::developSql($sql, $this->__schema, true, false, $tags);
     $this->assertEquals($expected, $result);
     $expected = "SELECT `user`.`id` AS 'user.id', `user`.`login` AS 'user.login' FROM `user`";
     $result = UtilMySql::developSql($sql, $this->__schema, true, true, $tags);
     $this->assertEquals($expected, $result);
     // -------
     $sql = "SELECT user.* FROM `user`";
     $tags = [];
     $expected = "SELECT user.id, user.login FROM `user`";
     $result = UtilMySql::developSql($sql, $this->__schema, false, false, $tags);
     $this->assertEquals($expected, $result);
     $expected = "SELECT user.id AS 'user.id', user.login AS 'user.login' FROM `user`";
     $result = UtilMySql::developSql($sql, $this->__schema, true, false, $tags);
     $this->assertEquals($expected, $result);
     $expected = "SELECT `user`.`id` AS 'user.id', `user`.`login` AS 'user.login' FROM `user`";
     $result = UtilMySql::developSql($sql, $this->__schema, true, true, $tags);
     $this->assertEquals($expected, $result);
     // -------
     $sql = "SELECT __USER__, __PROFILE__ FROM `user` INNER JOIN `profile` ON user.id=profile.fk_user_id";
     $tags = ['__USER__' => 'user.*', '__PROFILE__' => 'profile.*'];
     $expected = "SELECT user.id, user.login, profile.id, profile.age, profile.fk_user_id FROM `user` INNER JOIN `profile` ON user.id=profile.fk_user_id";
     $result = UtilUnitTest::call_private_or_protected_static_method('\\dbeurive\\Util\\UtilSql\\MySql', 'developSql', $sql, $this->__schema, false, false, $tags);
     $this->assertEquals($expected, $result);
     $expected = "SELECT user.id AS 'user.id', user.login AS 'user.login', profile.id AS 'profile.id', profile.age AS 'profile.age', profile.fk_user_id AS 'profile.fk_user_id' FROM `user` INNER JOIN `profile` ON user.id=profile.fk_user_id";
     $result = UtilUnitTest::call_private_or_protected_static_method('\\dbeurive\\Util\\UtilSql\\MySql', 'developSql', $sql, $this->__schema, true, false, $tags);
     $this->assertEquals($expected, $result);
     $expected = "SELECT `user`.`id` AS 'user.id', `user`.`login` AS 'user.login', `profile`.`id` AS 'profile.id', `profile`.`age` AS 'profile.age', `profile`.`fk_user_id` AS 'profile.fk_user_id' FROM `user` INNER JOIN `profile` ON user.id=profile.fk_user_id";
     $result = UtilUnitTest::call_private_or_protected_static_method('\\dbeurive\\Util\\UtilSql\\MySql', 'developSql', $sql, $this->__schema, true, true, $tags);
     $this->assertEquals($expected, $result);
     // -------
     $sql = "SELECT user.*, profile.* FROM `user` INNER JOIN `profile` ON user.id=profile.fk_user_id";
     $tags = [];
     $expected = "SELECT user.id, user.login, profile.id, profile.age, profile.fk_user_id FROM `user` INNER JOIN `profile` ON user.id=profile.fk_user_id";
     $result = UtilUnitTest::call_private_or_protected_static_method('\\dbeurive\\Util\\UtilSql\\MySql', 'developSql', $sql, $this->__schema, false, false, $tags);
     $this->assertEquals($expected, $result);
     $expected = "SELECT user.id AS 'user.id', user.login AS 'user.login', profile.id AS 'profile.id', profile.age AS 'profile.age', profile.fk_user_id AS 'profile.fk_user_id' FROM `user` INNER JOIN `profile` ON user.id=profile.fk_user_id";
     $result = UtilUnitTest::call_private_or_protected_static_method('\\dbeurive\\Util\\UtilSql\\MySql', 'developSql', $sql, $this->__schema, true, false, $tags);
     $this->assertEquals($expected, $result);
     $expected = "SELECT `user`.`id` AS 'user.id', `user`.`login` AS 'user.login', `profile`.`id` AS 'profile.id', `profile`.`age` AS 'profile.age', `profile`.`fk_user_id` AS 'profile.fk_user_id' FROM `user` INNER JOIN `profile` ON user.id=profile.fk_user_id";
     $result = UtilUnitTest::call_private_or_protected_static_method('\\dbeurive\\Util\\UtilSql\\MySql', 'developSql', $sql, $this->__schema, true, true, $tags);
     $this->assertEquals($expected, $result);
 }
Exemplo n.º 3
0
 public function testProtectedNonStatic()
 {
     $o = new ClassToTest();
     $o->factor = 5;
     $this->assertEquals(50, UtilUnitTest::call_private_or_protected_method('\\dbeurive\\UtilTest\\ClassToTest', '_protectedNonStatic', $o, 10));
 }