diff --git a/Unit_testing/ArrayDataSet.php b/Unit_testing/ArrayDataSet.php new file mode 100644 index 0000000..ce30a13 --- /dev/null +++ b/Unit_testing/ArrayDataSet.php @@ -0,0 +1,53 @@ + $rows ) + { + $columns = array(); + if ( isset( $rows[0] ) ) + { + $columns = array_keys($rows[0]); + } + + $metaData = new PHPUnit_Extensions_Database_DataSet_DefaultTableMetaData( $tableName, $columns ); + $table = new PHPUnit_Extensions_Database_DataSet_DefaultTable( $metaData ); + + foreach ( $rows AS $row ) + { + $table->addRow( $row ); + } + $this->tables[$tableName] = $table; + } + } + + protected function createIterator( $reverse = FALSE ) + { + return new PHPUnit_Extensions_Database_DataSet_DefaultTableIterator( $this->tables, $reverse ); + } + + public function getTable( $tableName ) + { + if ( !isset( $this->tables[$tableName] ) ) + { + throw new InvalidArgumentException( "$tableName is not a table in the current database." ); + } + + return $this->tables[$tableName]; + } +} +?>