/iaLib/ia_examples/ia/Sql/Mysql/SqlInfo_example.php
<?php
$ia_example = [
'title' => 'ia\Sql\Mysql\SqlInfo', // fully qualified className
'summary' => '', // class summary
'full_example' => '', // full usage example, relative path from ia_examples, blank '' not shown.
'example_file' => 'code/ia/Sql/Mysql/SqlInfo_example_code.php', // method by method example, blank '' not shown.
];
include( __DIR__ . '/../../../template/ia_example_class.php');
/iaLib/ia_examples/code/ia/Sql/Mysql/SqlInfo_example_code.php
use ia\Sql\Mysql\SqlInfo;
use ia\DocumentIt\DocumentIt;
echo '<h3>Disclaimer: Auto generated file.
Please help us setting parameters to useful values and extending the examples.
</h3>';
try {
echo <<< CONSTRUCTOR_PROTOTYPE
<pre>
/**
* SqlInfo constructor.
* @param IaMysqli \$db
*/
/*
\$sqlInfo = new SqlInfo(<span class="type">IaMysqli</span> \$db);
*/
\$sqlInfo = new SqlInfo($gSqlClass);
</pre>
CONSTRUCTOR_PROTOTYPE;
$sqlInfo = new SqlInfo($gSqlClass);
echo '<ul class="usage">';
///////// \$sqlInfo->documentDb(); //////////////////////////////////////////////////
echo <<< FUNCTIONDEF
<li id='u_documentDb'><b>\$sqlInfo->documentDb() <span>: </span></b>
FUNCTIONDEF;
echo "<pre class='docBlock'>".DocumentIt::methodDocBlockProtected("ia\Sql\Mysql\SqlInfo", "documentDb")."</pre>";
echo "<ol class='usage'>";
/// display ///
echo <<< DOCUMENT_EXAMPLE
<li>\$sqlInfo->documentDb();
-> </b><br><pre>
DOCUMENT_EXAMPLE;
/// run ///
print_r(
$sqlInfo->documentDb()
);
echo "</pre>";
echo '</ol>';
///////// \$sqlInfo->tableInfo(null /* == */); //////////////////////////////////////////////////
echo <<< FUNCTIONDEF
<li id='u_tableInfo'><b>\$sqlInfo->tableInfo(<span class="type"></span> \$table, <span class="type"></span> \$withCache <span class="default">= false</span>) <span>: </span></b>
FUNCTIONDEF;
echo "<pre class='docBlock'>".DocumentIt::methodDocBlockProtected("ia\Sql\Mysql\SqlInfo", "tableInfo")."</pre>";
echo "<ol class='usage'>";
/// display ///
echo <<< DOCUMENT_EXAMPLE
<li>\$sqlInfo->tableInfo(null /* == */);
-> </b><br><pre>
DOCUMENT_EXAMPLE;
/// run ///
print_r(
$sqlInfo->tableInfo(null /* == */)
);
echo "</pre>";
echo '</ol>';
///////// \$sqlInfo->queryInfo(null /* == */); //////////////////////////////////////////////////
echo <<< FUNCTIONDEF
<li id='u_queryInfo'><b>\$sqlInfo->queryInfo(<span class="type"></span> \$sql, <span class="type"></span> \$withUniqueIndexes <span class="default">= true</span>, <span class="type"></span> \$queryCacheKey <span class="default">= false</span>) <span>: </span></b>
FUNCTIONDEF;
echo "<pre class='docBlock'>".DocumentIt::methodDocBlockProtected("ia\Sql\Mysql\SqlInfo", "queryInfo")."</pre>";
echo "<ol class='usage'>";
/// display ///
echo <<< DOCUMENT_EXAMPLE
<li>\$sqlInfo->queryInfo(null /* == */);
-> </b><br><pre>
DOCUMENT_EXAMPLE;
/// run ///
print_r(
$sqlInfo->queryInfo(null /* == */)
);
echo "</pre>";
echo '</ol>';
///////// \$sqlInfo->resultFieldsInfo(null /* == */); //////////////////////////////////////////////////
echo <<< FUNCTIONDEF
<li id='u_resultFieldsInfo'><b>\$sqlInfo->resultFieldsInfo(<span class="type"></span> \$fetch_fields, <span class="type"></span> \$withUniqueIndexes <span class="default">= true</span>, <span class="type"></span> \$queryCacheKey <span class="default">= false</span>) <span>: </span></b>
FUNCTIONDEF;
echo "<pre class='docBlock'>".DocumentIt::methodDocBlockProtected("ia\Sql\Mysql\SqlInfo", "resultFieldsInfo")."</pre>";
echo "<ol class='usage'>";
/// display ///
echo <<< DOCUMENT_EXAMPLE
<li>\$sqlInfo->resultFieldsInfo(null /* == */);
-> </b><br><pre>
DOCUMENT_EXAMPLE;
/// run ///
print_r(
$sqlInfo->resultFieldsInfo(null /* == */)
);
echo "</pre>";
echo '</ol>';
///////// \$sqlInfo->type2Text(3); //////////////////////////////////////////////////
echo <<< FUNCTIONDEF
<li id='u_type2Text'><b>\$sqlInfo->type2Text(<span class="type">integer</span> \$type_id) <span>: string</span></b>
FUNCTIONDEF;
echo "<pre class='docBlock'>".DocumentIt::methodDocBlockProtected("ia\Sql\Mysql\SqlInfo", "type2Text")."</pre>";
echo "<ol class='usage'>";
/// display ///
echo <<< DOCUMENT_EXAMPLE
<li>\$sqlInfo->type2Text(3); ->
DOCUMENT_EXAMPLE;
/// run ///
echo $sqlInfo->type2Text(3);
echo '</ol>';
///////// \$sqlInfo->getEnumSet('palabra'); //////////////////////////////////////////////////
echo <<< FUNCTIONDEF
<li id='u_getEnumSet'><b>\$sqlInfo->getEnumSet(<span class="type">string \$table</span> \$table) <span>: array</span></b>
FUNCTIONDEF;
echo "<pre class='docBlock'>".DocumentIt::methodDocBlockProtected("ia\Sql\Mysql\SqlInfo", "getEnumSet")."</pre>";
echo "<ol class='usage'>";
/// display ///
echo <<< DOCUMENT_EXAMPLE
<li>\$sqlInfo->getEnumSet('palabra');
-> </b><br><pre>
DOCUMENT_EXAMPLE;
/// run ///
print_r(
$sqlInfo->getEnumSet('palabra')
);
echo "</pre>";
echo '</ol>';
///////// \$sqlInfo->table_indexes(null /* == */); //////////////////////////////////////////////////
echo <<< FUNCTIONDEF
<li id='u_table_indexes'><b>\$sqlInfo->table_indexes(<span class="type"></span> \$table) <span>: </span></b>
FUNCTIONDEF;
echo "<pre class='docBlock'>".DocumentIt::methodDocBlockProtected("ia\Sql\Mysql\SqlInfo", "table_indexes")."</pre>";
echo "<ol class='usage'>";
/// display ///
echo <<< DOCUMENT_EXAMPLE
<li>\$sqlInfo->table_indexes(null /* == */);
-> </b><br><pre>
DOCUMENT_EXAMPLE;
/// run ///
print_r(
$sqlInfo->table_indexes(null /* == */)
);
echo "</pre>";
echo '</ol>';
///////// \$sqlInfo->flags2Array(3); //////////////////////////////////////////////////
echo <<< FUNCTIONDEF
<li id='u_flags2Array'><b>\$sqlInfo->flags2Array(<span class="type">integer</span> \$flags_num) <span>: array</span></b>
FUNCTIONDEF;
echo "<pre class='docBlock'>".DocumentIt::methodDocBlockProtected("ia\Sql\Mysql\SqlInfo", "flags2Array")."</pre>";
echo "<ol class='usage'>";
/// display ///
echo <<< DOCUMENT_EXAMPLE
<li>\$sqlInfo->flags2Array(3);
-> </b><br><pre>
DOCUMENT_EXAMPLE;
/// run ///
print_r(
$sqlInfo->flags2Array(3)
);
echo "</pre>";
echo '</ol>';
/* PerfilExample adds new methods here */
echo '</ul>';
} catch(Exception $exception) { echo "<pre class='errorBlock'>$exception</pre>"; }
phpunit test file template
<?php
use ia\Sql\Mysql\SqlInfo;
use PHPUnit\Framework\TestCase;
class SqlInfoTest extends TestCase {
/**
* @dataProvider documentDb_Provider
*
*/
public function test_documentDb( $expected) {
$sqlInfo = new SqlInfo($db);
$this->assertEquals($expected, $sqlInfo->documentDb() );
}
function documentDb_Provider() {
return [
'test 1' => [ '' ],
];
}
/**
* @dataProvider tableInfo_Provider
*
*/
public function test_tableInfo($table, $withCache , $expected) {
$sqlInfo = new SqlInfo($db);
$this->assertEquals($expected, $sqlInfo->tableInfo($table, $withCache) );
}
function tableInfo_Provider() {
return [
'test 1' => [ '', '', '' ],
];
}
/**
* @dataProvider queryInfo_Provider
*
*/
public function test_queryInfo($sql, $withUniqueIndexes, $queryCacheKey , $expected) {
$sqlInfo = new SqlInfo($db);
$this->assertEquals($expected, $sqlInfo->queryInfo($sql, $withUniqueIndexes, $queryCacheKey) );
}
function queryInfo_Provider() {
return [
'test 1' => [ '', '', '', '' ],
];
}
/**
* @dataProvider resultFieldsInfo_Provider
*
*/
public function test_resultFieldsInfo($fetch_fields, $withUniqueIndexes, $queryCacheKey , $expected) {
$sqlInfo = new SqlInfo($db);
$this->assertEquals($expected, $sqlInfo->resultFieldsInfo($fetch_fields, $withUniqueIndexes, $queryCacheKey) );
}
function resultFieldsInfo_Provider() {
return [
'test 1' => [ '', '', '', '' ],
];
}
/**
* @dataProvider type2Text_Provider
*
*/
public function test_type2Text($type_id , $expected) {
$sqlInfo = new SqlInfo($db);
$this->assertEquals($expected, $sqlInfo->type2Text($type_id) );
}
function type2Text_Provider() {
return [
'test 1' => [ '', '' ],
];
}
/**
* @dataProvider getEnumSet_Provider
*
*/
public function test_getEnumSet($table , $expected) {
$sqlInfo = new SqlInfo($db);
$this->assertEquals($expected, $sqlInfo->getEnumSet($table) );
}
function getEnumSet_Provider() {
return [
'test 1' => [ '', '' ],
];
}
/**
* @dataProvider table_indexes_Provider
*
*/
public function test_table_indexes($table , $expected) {
$sqlInfo = new SqlInfo($db);
$this->assertEquals($expected, $sqlInfo->table_indexes($table) );
}
function table_indexes_Provider() {
return [
'test 1' => [ '', '' ],
];
}
/**
* @dataProvider flags2Array_Provider
*
*/
public function test_flags2Array($flags_num , $expected) {
$sqlInfo = new SqlInfo($db);
$this->assertEquals($expected, $sqlInfo->flags2Array($flags_num) );
}
function flags2Array_Provider() {
return [
'test 1' => [ '', '' ],
];
}
}
ia Doc