Skip to content

Commit

Permalink
Merge pull request #86 from piotras/ratatoskr
Browse files Browse the repository at this point in the history
New test and doc update
  • Loading branch information
piotras committed Mar 14, 2012
2 parents f6cf82d + ce58b79 commit 8fe96c8
Show file tree
Hide file tree
Showing 2 changed files with 123 additions and 0 deletions.
54 changes: 54 additions & 0 deletions docs/midgard_documentor.php
Expand Up @@ -113,6 +113,44 @@ public static function get_midgard_base_classes()
return $classes;
}

public static function get_midgard_abstract_classes()
{
$classes = array();

$all_classes = self::get_classes();

if (empty($all_classes))
return $classes;

foreach ($all_classes as $refclass)
{
if ($refclass->isAbstract() === false) {
continue;
}
$classes[] = $refclass;
}
return $classes;
}

public static function get_midgard_interfaces()
{
$classes = array();

$all_classes = self::get_classes();

if (empty($all_classes))
return $classes;

foreach ($all_classes as $refclass)
{
if ($refclass->isInterface() === false) {
continue;
}
$classes[] = $refclass;
}
return $classes;
}

public function create_footer()
{

Expand All @@ -133,6 +171,22 @@ public function get_index_buffer()
{
$this->add_to_index($refclass);
}

$this->index_buffer .= "<h2> Abstract classes </h2>";
$midgard_abstract_classes = self::get_midgard_abstract_classes();

foreach ($midgard_abstract_classes as $refclass)
{
$this->add_to_index($refclass);
}

$this->index_buffer .= "<h2> Interfaces </h2>";
$midgard_interfaces = self::get_midgard_interfaces();

foreach ($midgard_interfaces as $refclass)
{
$this->add_to_index($refclass);
}

$this->index_buffer .= "<h2> Database access classes </h2>";
$midgard_dbobject_classes = self::get_midgard_dbobject_classes();
Expand Down
69 changes: 69 additions & 0 deletions phpunit/tests/010_Query/SqlQuerySelectDataConstraintGroupTest.php
@@ -0,0 +1,69 @@
<?php

class SqlQuerySelectDataConstraintGroupTest extends MidgardTest
{
protected $select = null;
protected $mgd = null;

public function setUp()
{
$this->mgd = midgard_connection::get_instance();

if ($this->select === null) {
$this->select = new MidgardSqlQuerySelectData(midgard_connection::get_instance());
}
}

public function tearDown()
{
unset($this->select);
}

public function testInheritance()
{
$cg = new MidgardQueryConstraintGroup("AND");
$this->assertInstanceOf("MidgardQueryConstraintSimple", $cg);
}

public function testQueryConstraintGroup()
{
$storage = new MidgardQueryStorage("midgard_snippet");
$columnA = new MidgardSqlQueryColumn(
new MidgardQueryProperty("name", $storage),
"tbl1",
"a"
);

$columnB = new MidgardSqlQueryColumn(
new MidgardQueryProperty("code", $storage),
"tbl1",
"b"
);

$this->select->add_column($columnA);
$this->select->add_column($columnB);

$cg = new MidgardQueryConstraintGroup("AND");

$cg->add_constraint(
new MidgardSqlQueryConstraint(
$columnA,
"<>",
new MidgardQueryValue("")
)
);

$cg->add_constraint(
new MidgardSqlQueryConstraint(
$columnB,
"<>",
new MidgardQueryValue("")
)
);

$this->select->set_constraint($cg);
$this->select->execute();
}
}

?>

0 comments on commit 8fe96c8

Please sign in to comment.