Skip to content

Commit

Permalink
Merge pull request #19 from prooph/bugs
Browse files Browse the repository at this point in the history
resolve random test failures
  • Loading branch information
prolic committed Oct 21, 2018
2 parents 472d486 + 897b806 commit 47df956
Show file tree
Hide file tree
Showing 2 changed files with 23 additions and 2 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -73,6 +73,7 @@ protected function given(): Generator
new class($this->resetEvent, $this->firstEvent) implements EventAppearedOnPersistentSubscription {
private $deferred;
private $firstEvent;
private $set = false;

public function __construct($deferred, &$firstEvent)
{
Expand All @@ -85,8 +86,11 @@ public function __invoke(
ResolvedEvent $resolvedEvent,
?int $retryCount = null
): Promise {
$this->firstEvent = $resolvedEvent;
$this->deferred->resolve(true);
if (! $this->set) {
$this->set = true;
$this->firstEvent = $resolvedEvent;
$this->deferred->resolve(true);
}

return new Success();
}
Expand Down
17 changes: 17 additions & 0 deletions tests/soft_delete.php
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@

namespace ProophTest\EventStoreClient;

use Amp\Delayed;
use Generator;
use PHPUnit\Framework\TestCase;
use Prooph\EventStoreClient\EventData;
Expand Down Expand Up @@ -123,6 +124,8 @@ public function soft_deleted_stream_allows_recreation_when_expver_any(): void

$this->assertSame(4, $result->nextExpectedVersion());

yield new Delayed(100); // wait for server to update stream

/** @var StreamEventsSlice $result */
$result = yield $this->conn->readStreamEventsForwardAsync(
$stream,
Expand Down Expand Up @@ -196,6 +199,8 @@ public function soft_deleted_stream_allows_recreation_when_expver_no_stream(): v

$this->assertSame(4, $result->nextExpectedVersion());

yield new Delayed(100); // wait for server to update stream

/** @var StreamEventsSlice $result */
$result = yield $this->conn->readStreamEventsForwardAsync(
$stream,
Expand Down Expand Up @@ -269,6 +274,8 @@ public function soft_deleted_stream_allows_recreation_when_expver_is_exact(): vo

$this->assertSame(4, $result->nextExpectedVersion());

yield new Delayed(100); // wait for server to update stream

/** @var StreamEventsSlice $result */
$result = yield $this->conn->readStreamEventsForwardAsync(
$stream,
Expand Down Expand Up @@ -359,6 +366,8 @@ public function soft_deleted_stream_when_recreated_preserves_metadata_except_tru

$this->assertSame(4, $result->nextExpectedVersion());

yield new Delayed(100); // wait for server to update stream

/** @var StreamEventsSlice $result */
$result = yield $this->conn->readStreamEventsForwardAsync(
$stream,
Expand Down Expand Up @@ -603,6 +612,8 @@ public function setting_json_metadata_on_empty_soft_deleted_stream_recreates_str

$this->assertSame(1, $result->nextExpectedVersion());

yield new Delayed(100); // wait for server to update stream

/** @var StreamEventsSlice $result */
$result = yield $this->conn->readStreamEventsForwardAsync(
$stream,
Expand Down Expand Up @@ -664,6 +675,8 @@ public function setting_json_metadata_on_nonempty_soft_deleted_stream_recreates_

$this->assertSame(1, $result->nextExpectedVersion());

yield new Delayed(100); // wait for server to update stream

/** @var StreamEventsSlice $result */
$result = yield $this->conn->readStreamEventsForwardAsync(
$stream,
Expand Down Expand Up @@ -706,6 +719,8 @@ public function setting_nonjson_metadata_on_empty_soft_deleted_stream_recreates_

$this->assertSame(1, $result->nextExpectedVersion());

yield new Delayed(100); // wait for server to update stream

/** @var StreamEventsSlice $result */
$result = yield $this->conn->readStreamEventsForwardAsync($stream, 0, 100, false);

Expand Down Expand Up @@ -751,6 +766,8 @@ public function setting_nonjson_metadata_on_nonempty_soft_deleted_stream_recreat

$this->assertSame(1, $result->nextExpectedVersion());

yield new Delayed(100); // wait for server to update stream

/** @var StreamEventsSlice $result */
$result = yield $this->conn->readStreamEventsForwardAsync($stream, 0, 100, false);

Expand Down

0 comments on commit 47df956

Please sign in to comment.