Question

I keep getting this issue with PDO, where this error crops up in my tests.

<?php

require_once('simpletest/unit_tester.php');
require_once('simpletest/reporter.php');
require_once('../model.php');

class TestOfCallMapper extends UnitTestCase {
 function testOfReturnsAll() {
 }

 function setUp() {
  R::setup("mysql:host=localhost;dbname=poo", root, '');
  $this->destroySchema();
  $this->createSchema();
 }

 function tearDown() {
  $this->destroySchema();
 }

 private function createSchema() {
  R::exec(file_get_contents('../database/create_schema.sql'));
 }

 private function destroySchema() {
  R::exec(file_get_contents('../database/destroy_schema.sql'));
 }

}

$test = new TestOfCallMapper('Test of CallMapper Methods');
$test->run(new HTMLReporter());

I'm pretty sure that what's happening is that the stuff in my create_schema file is continuing to execute and blocking other queries from running since it tells me the queries are unbuffered. I switched away from using PDO because this didn't make sense to me and started using a different ORM called Redbean. Unfortunately, I'm getting this irritating error again, and I can't seem to fix it, since apparently Redbean sits on top of PDO. When I used PDO, I tried setting the option to turn on buffered queries and it didn't work. Outside of my tests, the method seems to work fine, but I'm not really sure that's acceptable.

Was it helpful?

Solution

This fixed itself when I switched to a new server. I never found the problem.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top