Commit 73d2e8b5 authored by Jeremy Mikola's avatar Jeremy Mikola

Assert change stream validity after calling next()

parent 003e5eb8
...@@ -42,6 +42,7 @@ class WatchFunctionalTest extends FunctionalTestCase ...@@ -42,6 +42,7 @@ class WatchFunctionalTest extends FunctionalTestCase
$this->insertDocument(['_id' => 2, 'x' => 'bar']); $this->insertDocument(['_id' => 2, 'x' => 'bar']);
$changeStream->next(); $changeStream->next();
$this->assertTrue($changeStream->valid());
$expectedResult = [ $expectedResult = [
'_id' => $changeStream->current()->_id, '_id' => $changeStream->current()->_id,
...@@ -58,6 +59,7 @@ class WatchFunctionalTest extends FunctionalTestCase ...@@ -58,6 +59,7 @@ class WatchFunctionalTest extends FunctionalTestCase
$this->insertDocument(['_id' => 3, 'x' => 'baz']); $this->insertDocument(['_id' => 3, 'x' => 'baz']);
$changeStream->next(); $changeStream->next();
$this->assertTrue($changeStream->valid());
$expectedResult = [ $expectedResult = [
'_id' => $changeStream->current()->_id, '_id' => $changeStream->current()->_id,
...@@ -139,6 +141,7 @@ class WatchFunctionalTest extends FunctionalTestCase ...@@ -139,6 +141,7 @@ class WatchFunctionalTest extends FunctionalTestCase
$this->insertDocument(['_id' => 2, 'x' => 'bar']); $this->insertDocument(['_id' => 2, 'x' => 'bar']);
$changeStream->next(); $changeStream->next();
$this->assertTrue($changeStream->valid());
$expectedResult = [ $expectedResult = [
'_id' => $changeStream->current()->_id, '_id' => $changeStream->current()->_id,
...@@ -153,11 +156,13 @@ class WatchFunctionalTest extends FunctionalTestCase ...@@ -153,11 +156,13 @@ class WatchFunctionalTest extends FunctionalTestCase
$this->killChangeStreamCursor($changeStream); $this->killChangeStreamCursor($changeStream);
$changeStream->next(); $changeStream->next();
$this->assertFalse($changeStream->valid());
$this->assertNull($changeStream->current()); $this->assertNull($changeStream->current());
$this->insertDocument(['_id' => 3, 'x' => 'baz']); $this->insertDocument(['_id' => 3, 'x' => 'baz']);
$changeStream->next(); $changeStream->next();
$this->assertTrue($changeStream->valid());
$expectedResult = [ $expectedResult = [
'_id' => $changeStream->current()->_id, '_id' => $changeStream->current()->_id,
...@@ -178,6 +183,7 @@ class WatchFunctionalTest extends FunctionalTestCase ...@@ -178,6 +183,7 @@ class WatchFunctionalTest extends FunctionalTestCase
$this->killChangeStreamCursor($changeStream); $this->killChangeStreamCursor($changeStream);
$changeStream->next(); $changeStream->next();
$this->assertFalse($changeStream->valid());
$this->assertNull($changeStream->current()); $this->assertNull($changeStream->current());
} }
...@@ -191,6 +197,7 @@ class WatchFunctionalTest extends FunctionalTestCase ...@@ -191,6 +197,7 @@ class WatchFunctionalTest extends FunctionalTestCase
$this->insertDocument(['_id' => 1, 'x' => 'foo']); $this->insertDocument(['_id' => 1, 'x' => 'foo']);
$changeStream->next(); $changeStream->next();
$this->assertFalse($changeStream->valid());
$this->assertNull($changeStream->current()); $this->assertNull($changeStream->current());
} }
...@@ -204,21 +211,27 @@ class WatchFunctionalTest extends FunctionalTestCase ...@@ -204,21 +211,27 @@ class WatchFunctionalTest extends FunctionalTestCase
$this->insertDocument(['_id' => 1, 'x' => 'foo']); $this->insertDocument(['_id' => 1, 'x' => 'foo']);
$changeStream->next(); $changeStream->next();
$this->assertTrue($changeStream->valid());
$this->assertSame(1, $changeStream->key()); $this->assertSame(1, $changeStream->key());
$changeStream->next(); $changeStream->next();
$this->assertFalse($changeStream->valid());
$this->assertNull($changeStream->key()); $this->assertNull($changeStream->key());
$changeStream->next(); $changeStream->next();
$this->assertFalse($changeStream->valid());
$this->assertNull($changeStream->key()); $this->assertNull($changeStream->key());
$this->killChangeStreamCursor($changeStream); $this->killChangeStreamCursor($changeStream);
$changeStream->next(); $changeStream->next();
$this->assertFalse($changeStream->valid());
$this->assertNull($changeStream->key()); $this->assertNull($changeStream->key());
$this->insertDocument(['_id' => 2, 'x' => 'bar']); $this->insertDocument(['_id' => 2, 'x' => 'bar']);
$changeStream->next(); $changeStream->next();
$this->assertTrue($changeStream->valid());
$this->assertSame(2, $changeStream->key()); $this->assertSame(2, $changeStream->key());
} }
...@@ -232,6 +245,7 @@ class WatchFunctionalTest extends FunctionalTestCase ...@@ -232,6 +245,7 @@ class WatchFunctionalTest extends FunctionalTestCase
$this->insertDocument(['_id' => 1]); $this->insertDocument(['_id' => 1]);
$changeStream->next(); $changeStream->next();
$this->assertTrue($changeStream->valid());
$expectedResult = [ $expectedResult = [
'_id' => $changeStream->current()->_id, '_id' => $changeStream->current()->_id,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment