diff options
author | Simon Holywell <[email protected]> | 2014-06-03 13:47:16 +0100 |
---|---|---|
committer | Simon Holywell <[email protected]> | 2014-06-03 13:47:16 +0100 |
commit | f8f46c084cfbff704dd39f6d89de5308a3d30b0d (patch) | |
tree | c1e28e128d50b31347f51dfe967c8d707da4478c /test/bootstrap.php | |
parent | 4745ee73381c6a6bbb099cff745ac8781ce38ffc (diff) | |
parent | 93e050c209898f64e84112b3fffe77d100149b2e (diff) |
Merge pull request #206 from charsleysa/develop
Fix for parameter types.
Diffstat (limited to 'test/bootstrap.php')
-rw-r--r-- | test/bootstrap.php | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/test/bootstrap.php b/test/bootstrap.php index 9a40762..8790dc7 100644 --- a/test/bootstrap.php +++ b/test/bootstrap.php @@ -10,6 +10,7 @@ require_once dirname(__FILE__) . '/../idiorm.php'; class MockPDOStatement extends PDOStatement { private $current_row = 0; private $statement = NULL; + private $bindParams = array(); /** * Store the statement that gets passed to the constructor @@ -21,9 +22,10 @@ class MockPDOStatement extends PDOStatement { /** * Check that the array */ - public function execute($params) { + public function execute($params = NULL) { $count = 0; $m = array(); + if (is_null($params)) $params = $this->bindParams; if (preg_match_all('/"[^"\\\\]*(?:\\?)[^"\\\\]*"|\'[^\'\\\\]*(?:\\?)[^\'\\\\]*\'|(\\?)/', $this->statement, $m, PREG_SET_ORDER)) { $count = count($m); for ($v = 0; $v < $count; $v++) { @@ -40,6 +42,20 @@ class MockPDOStatement extends PDOStatement { } } } + + /** + * Add data to arrays + */ + public function bindParams($index, $value, $type) + { + // Do check on index, and type + if (!is_int($index)) throw new Exception('Incorrect parameter type. Expected $index to be an integer.'); + if (!is_int($type) || ($type != PDO::PARAM_STR && $type != PDO::PARAM_NULL && $type != PDO::PARAM_BOOL && $type != PDO::PARAM_INT)) + throw new Exception('Incorrect parameter type. Expected $type to be an integer.'); + + // Add param to array + $this->bindParams[$index - 1] = $value; + } /** * Return some dummy data |