|
|
@@ -1352,6 +1352,7 @@ class QueryTest extends TestCase
|
|
|
|
|
|
$second = $result->fetch('assoc');
|
|
|
$this->assertEquals(5, $second['id']);
|
|
|
+ $result->closeCursor();
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
@@ -1372,6 +1373,7 @@ class QueryTest extends TestCase
|
|
|
->execute();
|
|
|
$this->assertCount(1, $result);
|
|
|
$this->assertEquals(['id' => 2], $result->fetch('assoc'));
|
|
|
+ $result->closeCursor();
|
|
|
|
|
|
$query = new Query($this->connection);
|
|
|
$result = $query
|
|
|
@@ -1383,6 +1385,7 @@ class QueryTest extends TestCase
|
|
|
})
|
|
|
->execute();
|
|
|
$this->assertCount(0, $result);
|
|
|
+ $result->closeCursor();
|
|
|
|
|
|
$query = new Query($this->connection);
|
|
|
$result = $query
|
|
|
@@ -1397,6 +1400,7 @@ class QueryTest extends TestCase
|
|
|
->execute();
|
|
|
$this->assertCount(1, $result);
|
|
|
$this->assertEquals(['id' => 1], $result->fetch('assoc'));
|
|
|
+ $result->closeCursor();
|
|
|
|
|
|
$query = new Query($this->connection);
|
|
|
$result = $query
|
|
|
@@ -1411,6 +1415,7 @@ class QueryTest extends TestCase
|
|
|
$this->assertCount(2, $result);
|
|
|
$this->assertEquals(['id' => 1], $result->fetch('assoc'));
|
|
|
$this->assertEquals(['id' => 3], $result->fetch('assoc'));
|
|
|
+ $result->closeCursor();
|
|
|
|
|
|
$query = new Query($this->connection);
|
|
|
$result = $query
|
|
|
@@ -1426,6 +1431,7 @@ class QueryTest extends TestCase
|
|
|
$this->assertCount(2, $result);
|
|
|
$this->assertEquals(['id' => 1], $result->fetch('assoc'));
|
|
|
$this->assertEquals(['id' => 2], $result->fetch('assoc'));
|
|
|
+ $result->closeCursor();
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
@@ -1449,6 +1455,7 @@ class QueryTest extends TestCase
|
|
|
$this->assertCount(5, $result);
|
|
|
$this->assertEquals(['id' => 1], $result->fetch('assoc'));
|
|
|
$this->assertEquals(['id' => 3], $result->fetch('assoc'));
|
|
|
+ $result->closeCursor();
|
|
|
|
|
|
$query = new Query($this->connection);
|
|
|
$result = $query
|
|
|
@@ -1461,6 +1468,7 @@ class QueryTest extends TestCase
|
|
|
})
|
|
|
->execute();
|
|
|
$this->assertCount(6, $result);
|
|
|
+ $result->closeCursor();
|
|
|
|
|
|
$query = new Query($this->connection);
|
|
|
$result = $query
|
|
|
@@ -1473,6 +1481,7 @@ class QueryTest extends TestCase
|
|
|
$this->assertCount(2, $result);
|
|
|
$this->assertEquals(['id' => 1], $result->fetch('assoc'));
|
|
|
$this->assertEquals(['id' => 2], $result->fetch('assoc'));
|
|
|
+ $result->closeCursor();
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
@@ -1485,42 +1494,48 @@ class QueryTest extends TestCase
|
|
|
$query = new Query($this->connection);
|
|
|
$result = $query
|
|
|
->select(['id'])
|
|
|
- ->from('articles')
|
|
|
+ ->from('comments')
|
|
|
->order(['id' => 'desc'])
|
|
|
->execute();
|
|
|
- $this->assertEquals(['id' => 3], $result->fetch('assoc'));
|
|
|
- $this->assertEquals(['id' => 2], $result->fetch('assoc'));
|
|
|
- $this->assertEquals(['id' => 1], $result->fetch('assoc'));
|
|
|
+ $this->assertEquals(['id' => 6], $result->fetch('assoc'));
|
|
|
+ $this->assertEquals(['id' => 5], $result->fetch('assoc'));
|
|
|
+ $this->assertEquals(['id' => 4], $result->fetch('assoc'));
|
|
|
+ $result->closeCursor();
|
|
|
|
|
|
$result = $query->order(['id' => 'asc'])->execute();
|
|
|
$this->assertEquals(['id' => 1], $result->fetch('assoc'));
|
|
|
$this->assertEquals(['id' => 2], $result->fetch('assoc'));
|
|
|
$this->assertEquals(['id' => 3], $result->fetch('assoc'));
|
|
|
+ $result->closeCursor();
|
|
|
|
|
|
- $result = $query->order(['title' => 'asc'])->execute();
|
|
|
+ $result = $query->order(['comment' => 'asc'])->execute();
|
|
|
$this->assertEquals(['id' => 1], $result->fetch('assoc'));
|
|
|
$this->assertEquals(['id' => 2], $result->fetch('assoc'));
|
|
|
$this->assertEquals(['id' => 3], $result->fetch('assoc'));
|
|
|
+ $result->closeCursor();
|
|
|
|
|
|
- $result = $query->order(['title' => 'asc'], true)->execute();
|
|
|
+ $result = $query->order(['comment' => 'asc'], true)->execute();
|
|
|
$this->assertEquals(['id' => 1], $result->fetch('assoc'));
|
|
|
- $this->assertEquals(['id' => 2], $result->fetch('assoc'));
|
|
|
- $this->assertEquals(['id' => 3], $result->fetch('assoc'));
|
|
|
+ $this->assertEquals(['id' => 5], $result->fetch('assoc'));
|
|
|
+ $this->assertEquals(['id' => 4], $result->fetch('assoc'));
|
|
|
+ $result->closeCursor();
|
|
|
|
|
|
- $result = $query->order(['title' => 'asc', 'published' => 'asc'], true)
|
|
|
+ $result = $query->order(['user_id' => 'asc', 'created' => 'desc'], true)
|
|
|
->execute();
|
|
|
- $this->assertEquals(['id' => 1], $result->fetch('assoc'));
|
|
|
- $this->assertEquals(['id' => 2], $result->fetch('assoc'));
|
|
|
+ $this->assertEquals(['id' => 5], $result->fetch('assoc'));
|
|
|
+ $this->assertEquals(['id' => 4], $result->fetch('assoc'));
|
|
|
$this->assertEquals(['id' => 3], $result->fetch('assoc'));
|
|
|
+ $result->closeCursor();
|
|
|
|
|
|
$expression = $query->newExpr(['(id + :offset) % 2']);
|
|
|
$result = $query
|
|
|
->order([$expression, 'id' => 'desc'], true)
|
|
|
->bind(':offset', 1, null)
|
|
|
->execute();
|
|
|
+ $this->assertEquals(['id' => 5], $result->fetch('assoc'));
|
|
|
$this->assertEquals(['id' => 3], $result->fetch('assoc'));
|
|
|
$this->assertEquals(['id' => 1], $result->fetch('assoc'));
|
|
|
- $this->assertEquals(['id' => 2], $result->fetch('assoc'));
|
|
|
+ $result->closeCursor();
|
|
|
|
|
|
$result = $query
|
|
|
->order($expression, true)
|
|
|
@@ -1529,7 +1544,8 @@ class QueryTest extends TestCase
|
|
|
->execute();
|
|
|
$this->assertEquals(['id' => 1], $result->fetch('assoc'));
|
|
|
$this->assertEquals(['id' => 3], $result->fetch('assoc'));
|
|
|
- $this->assertEquals(['id' => 2], $result->fetch('assoc'));
|
|
|
+ $this->assertEquals(['id' => 5], $result->fetch('assoc'));
|
|
|
+ $result->closeCursor();
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
@@ -1547,6 +1563,7 @@ class QueryTest extends TestCase
|
|
|
$this->assertEquals(['id' => 1], $result->fetch('assoc'));
|
|
|
$this->assertEquals(['id' => 2], $result->fetch('assoc'));
|
|
|
$this->assertEquals(['id' => 3], $result->fetch('assoc'));
|
|
|
+ $result->closeCursor();
|
|
|
}
|
|
|
|
|
|
/**
|