From 1cefa17323e231c226795ccb8affd90d213a66b9 Mon Sep 17 00:00:00 2001 From: prolic Date: Sat, 2 May 2020 04:43:47 -0400 Subject: [PATCH 1/2] fix broken tests (because of phpunit-util changes) --- tests/EventStoreConnectionTestCase.php | 12 +- tests/Security/AuthenticationTestCase.php | 298 +++++++++--------- .../overriden_system_stream_security.php | 16 +- ...erriden_system_stream_security_for_all.php | 16 +- .../overriden_user_stream_security.php | 16 +- .../Security/stream_security_inheritance.php | 158 +++++----- ...subscription_handles_small_batch_sizes.php | 27 +- tests/subscribe_to_all_catching_up_should.php | 38 +-- tests/subscribe_to_all_should.php | 38 +-- tests/when_committing_empty_transaction.php | 46 ++- .../when_having_max_count_set_for_stream.php | 42 ++- ...ith_stream_metadata_as_structured_info.php | 6 +- 12 files changed, 338 insertions(+), 375 deletions(-) diff --git a/tests/EventStoreConnectionTestCase.php b/tests/EventStoreConnectionTestCase.php index b8427d6d..8c9db195 100644 --- a/tests/EventStoreConnectionTestCase.php +++ b/tests/EventStoreConnectionTestCase.php @@ -14,7 +14,7 @@ namespace ProophTest\EventStoreClient; use Amp\PHPUnit\AsyncTestCase; -use Amp\Promise; +use Generator; use Prooph\EventStore\Async\EventStoreConnection; use ProophTest\EventStoreClient\Helper\TestConnection; @@ -22,18 +22,14 @@ abstract class EventStoreConnectionTestCase extends AsyncTestCase { protected EventStoreConnection $connection; - protected function setUpAsync(): Promise + protected function setUpAsync(): Generator { $this->connection = TestConnection::create(); - $this->connection->connectAsync(); - - return parent::setUpAsync(); + yield $this->connection->connectAsync(); } - protected function tearDownAsync(): Promise + protected function tearDownAsync() { $this->connection->close(); - - return parent::tearDownAsync(); } } diff --git a/tests/Security/AuthenticationTestCase.php b/tests/Security/AuthenticationTestCase.php index 03a4c81e..4e672144 100644 --- a/tests/Security/AuthenticationTestCase.php +++ b/tests/Security/AuthenticationTestCase.php @@ -41,167 +41,163 @@ abstract class AuthenticationTestCase extends AsyncTestCase protected ?EventStoreConnection $connection; protected ?UserCredentials $userCredentials = null; - protected function setUpAsync(): Promise + protected function setUpAsync(): Generator { - return call(function (): Generator { - $manager = new UsersManager( - TestConnection::httpEndPoint(), - 5000, - EndpointExtensions::HTTP_SCHEMA, - $this->adminUser() - ); - - yield $manager->createUserAsync( - 'user1', - 'Test User 1', - [], - 'pa$$1' - ); - - yield $manager->createUserAsync( - 'user2', - 'Test User 2', - [], - 'pa$$2' - ); - - yield $manager->createUserAsync( - 'adm', - 'Administrator User', - [SystemRoles::ADMINS], - 'admpa$$' - ); - - $connection = TestConnection::create($this->adminUser()); - yield $connection->connectAsync(); - - yield $connection->setStreamMetadataAsync( - 'noacl-stream', - ExpectedVersion::ANY, - StreamMetadata::create()->build() - ); - yield $connection->setStreamMetadataAsync( - 'read-stream', - ExpectedVersion::ANY, - StreamMetadata::create()->setReadRoles('user1')->build() - ); - yield $connection->setStreamMetadataAsync( - 'write-stream', - ExpectedVersion::ANY, - StreamMetadata::create()->setWriteRoles('user1')->build() - ); - yield $connection->setStreamMetadataAsync( - 'metaread-stream', - ExpectedVersion::ANY, - StreamMetadata::create()->setMetadataReadRoles('user1')->build() - ); - yield $connection->setStreamMetadataAsync( - 'metawrite-stream', - ExpectedVersion::ANY, - StreamMetadata::create()->setMetadataWriteRoles('user1')->build() - ); - - yield $connection->setStreamMetadataAsync( - '$all', - ExpectedVersion::ANY, - StreamMetadata::create()->setReadRoles('user1')->build(), - new UserCredentials('adm', 'admpa$$') - ); - - yield $connection->setStreamMetadataAsync( - '$system-acl', - ExpectedVersion::ANY, - StreamMetadata::create() - ->setReadRoles('user1') - ->setWriteRoles('user1') - ->setMetadataReadRoles('user1') - ->setMetadataWriteRoles('user1') - ->build(), - new UserCredentials('adm', 'admpa$$') - ); - yield $connection->setStreamMetadataAsync( - '$system-adm', - ExpectedVersion::ANY, - StreamMetadata::create() - ->setReadRoles(SystemRoles::ADMINS) - ->setWriteRoles(SystemRoles::ADMINS) - ->setMetadataReadRoles(SystemRoles::ADMINS) - ->setMetadataWriteRoles(SystemRoles::ADMINS) - ->build(), - new UserCredentials('adm', 'admpa$$') - ); - - yield $connection->setStreamMetadataAsync( - 'normal-all', - ExpectedVersion::ANY, - StreamMetadata::create() - ->setReadRoles(SystemRoles::ALL) - ->setWriteRoles(SystemRoles::ALL) - ->setMetadataReadRoles(SystemRoles::ALL) - ->setMetadataWriteRoles(SystemRoles::ALL) - ->build() - ); - yield $connection->setStreamMetadataAsync( - '$system-all', - ExpectedVersion::ANY, - StreamMetadata::create() - ->setReadRoles(SystemRoles::ALL) - ->setWriteRoles(SystemRoles::ALL) - ->setMetadataReadRoles(SystemRoles::ALL) - ->setMetadataWriteRoles(SystemRoles::ALL) - ->build(), - new UserCredentials('adm', 'admpa$$') - ); + $manager = new UsersManager( + TestConnection::httpEndPoint(), + 5000, + EndpointExtensions::HTTP_SCHEMA, + $this->adminUser() + ); + + yield $manager->createUserAsync( + 'user1', + 'Test User 1', + [], + 'pa$$1' + ); - $connection->close(); + yield $manager->createUserAsync( + 'user2', + 'Test User 2', + [], + 'pa$$2' + ); + + yield $manager->createUserAsync( + 'adm', + 'Administrator User', + [SystemRoles::ADMINS], + 'admpa$$' + ); - $this->connection = TestConnection::create($this->userCredentials); + $connection = TestConnection::create($this->adminUser()); + yield $connection->connectAsync(); - yield $this->connection->connectAsync(); - }); + yield $connection->setStreamMetadataAsync( + 'noacl-stream', + ExpectedVersion::ANY, + StreamMetadata::create()->build() + ); + yield $connection->setStreamMetadataAsync( + 'read-stream', + ExpectedVersion::ANY, + StreamMetadata::create()->setReadRoles('user1')->build() + ); + yield $connection->setStreamMetadataAsync( + 'write-stream', + ExpectedVersion::ANY, + StreamMetadata::create()->setWriteRoles('user1')->build() + ); + yield $connection->setStreamMetadataAsync( + 'metaread-stream', + ExpectedVersion::ANY, + StreamMetadata::create()->setMetadataReadRoles('user1')->build() + ); + yield $connection->setStreamMetadataAsync( + 'metawrite-stream', + ExpectedVersion::ANY, + StreamMetadata::create()->setMetadataWriteRoles('user1')->build() + ); + + yield $connection->setStreamMetadataAsync( + '$all', + ExpectedVersion::ANY, + StreamMetadata::create()->setReadRoles('user1')->build(), + new UserCredentials('adm', 'admpa$$') + ); + + yield $connection->setStreamMetadataAsync( + '$system-acl', + ExpectedVersion::ANY, + StreamMetadata::create() + ->setReadRoles('user1') + ->setWriteRoles('user1') + ->setMetadataReadRoles('user1') + ->setMetadataWriteRoles('user1') + ->build(), + new UserCredentials('adm', 'admpa$$') + ); + yield $connection->setStreamMetadataAsync( + '$system-adm', + ExpectedVersion::ANY, + StreamMetadata::create() + ->setReadRoles(SystemRoles::ADMINS) + ->setWriteRoles(SystemRoles::ADMINS) + ->setMetadataReadRoles(SystemRoles::ADMINS) + ->setMetadataWriteRoles(SystemRoles::ADMINS) + ->build(), + new UserCredentials('adm', 'admpa$$') + ); + + yield $connection->setStreamMetadataAsync( + 'normal-all', + ExpectedVersion::ANY, + StreamMetadata::create() + ->setReadRoles(SystemRoles::ALL) + ->setWriteRoles(SystemRoles::ALL) + ->setMetadataReadRoles(SystemRoles::ALL) + ->setMetadataWriteRoles(SystemRoles::ALL) + ->build() + ); + yield $connection->setStreamMetadataAsync( + '$system-all', + ExpectedVersion::ANY, + StreamMetadata::create() + ->setReadRoles(SystemRoles::ALL) + ->setWriteRoles(SystemRoles::ALL) + ->setMetadataReadRoles(SystemRoles::ALL) + ->setMetadataWriteRoles(SystemRoles::ALL) + ->build(), + new UserCredentials('adm', 'admpa$$') + ); + + $connection->close(); + + $this->connection = TestConnection::create($this->userCredentials); + + yield $this->connection->connectAsync(); } - protected function tearDownAsync(): Promise + protected function tearDownAsync(): Generator { $this->userCredentials = null; $this->connection->close(); - return call(function (): Generator { - $manager = new UsersManager( - TestConnection::httpEndPoint(), - 5000, - EndpointExtensions::HTTP_SCHEMA, - $this->adminUser() - ); - - yield $manager->deleteUserAsync('user1'); - yield $manager->deleteUserAsync('user2'); - yield $manager->deleteUserAsync('adm'); - - $connection = TestConnection::create($this->adminUser()); - yield $connection->connectAsync(); - - yield $connection->setStreamMetadataAsync( - '$all', - ExpectedVersion::ANY, - StreamMetadata::create()->build(), - $this->adminUser() - ); - - yield $connection->setStreamMetadataAsync( - '$system-acl', - ExpectedVersion::ANY, - StreamMetadata::create()->build(), - $this->adminUser() - ); - - yield $connection->setSystemSettingsAsync( - new SystemSettings(), - $this->adminUser() - ); - - $connection->close(); - }); + $manager = new UsersManager( + TestConnection::httpEndPoint(), + 5000, + EndpointExtensions::HTTP_SCHEMA, + $this->adminUser() + ); + + yield $manager->deleteUserAsync('user1'); + yield $manager->deleteUserAsync('user2'); + yield $manager->deleteUserAsync('adm'); + + $connection = TestConnection::create($this->adminUser()); + yield $connection->connectAsync(); + + yield $connection->setStreamMetadataAsync( + '$all', + ExpectedVersion::ANY, + StreamMetadata::create()->build(), + $this->adminUser() + ); + + yield $connection->setStreamMetadataAsync( + '$system-acl', + ExpectedVersion::ANY, + StreamMetadata::create()->build(), + $this->adminUser() + ); + + yield $connection->setSystemSettingsAsync( + new SystemSettings(), + $this->adminUser() + ); + + $connection->close(); } protected function readEvent(string $streamId, ?string $login, ?string $password): Promise diff --git a/tests/Security/overriden_system_stream_security.php b/tests/Security/overriden_system_stream_security.php index e68df009..77978fa7 100644 --- a/tests/Security/overriden_system_stream_security.php +++ b/tests/Security/overriden_system_stream_security.php @@ -24,18 +24,16 @@ class overriden_system_stream_security extends AuthenticationTestCase { - protected function setUpAsync(): Promise + protected function setUpAsync(): Generator { - return call(function (): Generator { - yield parent::setUpAsync(); + yield from parent::setUpAsync(); - $settings = new SystemSettings( - null, - new StreamAcl(['user1'], ['user1'], ['user1'], ['user1'], ['user1']) - ); + $settings = new SystemSettings( + null, + new StreamAcl(['user1'], ['user1'], ['user1'], ['user1'], ['user1']) + ); - yield $this->connection->setSystemSettingsAsync($settings, new UserCredentials('adm', 'admpa$$')); - }); + yield $this->connection->setSystemSettingsAsync($settings, new UserCredentials('adm', 'admpa$$')); } /** @test */ diff --git a/tests/Security/overriden_system_stream_security_for_all.php b/tests/Security/overriden_system_stream_security_for_all.php index dc4acea7..0107a1e2 100644 --- a/tests/Security/overriden_system_stream_security_for_all.php +++ b/tests/Security/overriden_system_stream_security_for_all.php @@ -24,18 +24,16 @@ class overriden_system_stream_security_for_all extends AuthenticationTestCase { - protected function setUpAsync(): Promise + protected function setUpAsync(): Generator { - return call(function (): Generator { - yield parent::setUpAsync(); + yield from parent::setUpAsync(); - $settings = new SystemSettings( - null, - new StreamAcl([SystemRoles::ALL], [SystemRoles::ALL], [SystemRoles::ALL], [SystemRoles::ALL], [SystemRoles::ALL]) - ); + $settings = new SystemSettings( + null, + new StreamAcl([SystemRoles::ALL], [SystemRoles::ALL], [SystemRoles::ALL], [SystemRoles::ALL], [SystemRoles::ALL]) + ); - yield $this->connection->setSystemSettingsAsync($settings, new UserCredentials('adm', 'admpa$$')); - }); + yield $this->connection->setSystemSettingsAsync($settings, new UserCredentials('adm', 'admpa$$')); } /** @test */ diff --git a/tests/Security/overriden_user_stream_security.php b/tests/Security/overriden_user_stream_security.php index c23a6e8c..d4ca94e2 100644 --- a/tests/Security/overriden_user_stream_security.php +++ b/tests/Security/overriden_user_stream_security.php @@ -24,18 +24,16 @@ class overriden_user_stream_security extends AuthenticationTestCase { - protected function setUpAsync(): Promise + protected function setUpAsync(): Generator { - return call(function (): Generator { - yield parent::setUpAsync(); + yield from parent::setUpAsync(); - $settings = new SystemSettings( - new StreamAcl(['user1'], ['user1'], ['user1'], ['user1'], ['user1']), - null - ); + $settings = new SystemSettings( + new StreamAcl(['user1'], ['user1'], ['user1'], ['user1'], ['user1']), + null + ); - yield $this->connection->setSystemSettingsAsync($settings, new UserCredentials('adm', 'admpa$$')); - }); + yield $this->connection->setSystemSettingsAsync($settings, new UserCredentials('adm', 'admpa$$')); } /** @test */ diff --git a/tests/Security/stream_security_inheritance.php b/tests/Security/stream_security_inheritance.php index 3a63bc1c..2690e5d8 100644 --- a/tests/Security/stream_security_inheritance.php +++ b/tests/Security/stream_security_inheritance.php @@ -26,87 +26,85 @@ class stream_security_inheritance extends AuthenticationTestCase { - protected function setUpAsync(): Promise + protected function setUpAsync(): Generator { - return call(function (): Generator { - yield parent::setUpAsync(); - - $settings = new SystemSettings( - new StreamAcl([], ['user1']), - new StreamAcl([], ['user1']) - ); - - yield $this->connection->setSystemSettingsAsync($settings, new UserCredentials('adm', 'admpa$$')); - - yield $this->connection->setStreamMetadataAsync( - 'user-no-acl', - ExpectedVersion::ANY, - StreamMetadata::create()->build(), - new UserCredentials('adm', 'admpa$$') - ); - yield $this->connection->setStreamMetadataAsync( - 'user-w-diff', - ExpectedVersion::ANY, - StreamMetadata::create()->setWriteRoles('user2')->build(), - new UserCredentials('adm', 'admpa$$') - ); - yield $this->connection->setStreamMetadataAsync( - 'user-w-multiple', - ExpectedVersion::ANY, - StreamMetadata::create()->setWriteRoles('user1', 'user2')->build(), - new UserCredentials('adm', 'admpa$$') - ); - yield $this->connection->setStreamMetadataAsync( - 'user-w-restricted', - ExpectedVersion::ANY, - StreamMetadata::create()->setWriteRoles('')->build(), - new UserCredentials('adm', 'admpa$$') - ); - yield $this->connection->setStreamMetadataAsync( - 'user-w-all', - ExpectedVersion::ANY, - StreamMetadata::create()->setWriteRoles(SystemRoles::ALL)->build(), - new UserCredentials('adm', 'admpa$$') - ); - - yield $this->connection->setStreamMetadataAsync( - 'user-r-restricted', - ExpectedVersion::ANY, - StreamMetadata::create()->setReadRoles('user1')->build(), - new UserCredentials('adm', 'admpa$$') - ); - - yield $this->connection->setStreamMetadataAsync( - '$sys-no-acl', - ExpectedVersion::ANY, - StreamMetadata::create()->build(), - new UserCredentials('adm', 'admpa$$') - ); - yield $this->connection->setStreamMetadataAsync( - '$sys-w-diff', - ExpectedVersion::ANY, - StreamMetadata::create()->setWriteRoles('user2')->build(), - new UserCredentials('adm', 'admpa$$') - ); - yield $this->connection->setStreamMetadataAsync( - '$sys-w-multiple', - ExpectedVersion::ANY, - StreamMetadata::create()->setWriteRoles('user1', 'user2')->build(), - new UserCredentials('adm', 'admpa$$') - ); - yield $this->connection->setStreamMetadataAsync( - '$sys-w-restricted', - ExpectedVersion::ANY, - StreamMetadata::create()->setWriteRoles('')->build(), - new UserCredentials('adm', 'admpa$$') - ); - yield $this->connection->setStreamMetadataAsync( - '$sys-w-all', - ExpectedVersion::ANY, - StreamMetadata::create()->setWriteRoles(SystemRoles::ALL)->build(), - new UserCredentials('adm', 'admpa$$') - ); - }); + yield from parent::setUpAsync(); + + $settings = new SystemSettings( + new StreamAcl([], ['user1']), + new StreamAcl([], ['user1']) + ); + + yield $this->connection->setSystemSettingsAsync($settings, new UserCredentials('adm', 'admpa$$')); + + yield $this->connection->setStreamMetadataAsync( + 'user-no-acl', + ExpectedVersion::ANY, + StreamMetadata::create()->build(), + new UserCredentials('adm', 'admpa$$') + ); + yield $this->connection->setStreamMetadataAsync( + 'user-w-diff', + ExpectedVersion::ANY, + StreamMetadata::create()->setWriteRoles('user2')->build(), + new UserCredentials('adm', 'admpa$$') + ); + yield $this->connection->setStreamMetadataAsync( + 'user-w-multiple', + ExpectedVersion::ANY, + StreamMetadata::create()->setWriteRoles('user1', 'user2')->build(), + new UserCredentials('adm', 'admpa$$') + ); + yield $this->connection->setStreamMetadataAsync( + 'user-w-restricted', + ExpectedVersion::ANY, + StreamMetadata::create()->setWriteRoles('')->build(), + new UserCredentials('adm', 'admpa$$') + ); + yield $this->connection->setStreamMetadataAsync( + 'user-w-all', + ExpectedVersion::ANY, + StreamMetadata::create()->setWriteRoles(SystemRoles::ALL)->build(), + new UserCredentials('adm', 'admpa$$') + ); + + yield $this->connection->setStreamMetadataAsync( + 'user-r-restricted', + ExpectedVersion::ANY, + StreamMetadata::create()->setReadRoles('user1')->build(), + new UserCredentials('adm', 'admpa$$') + ); + + yield $this->connection->setStreamMetadataAsync( + '$sys-no-acl', + ExpectedVersion::ANY, + StreamMetadata::create()->build(), + new UserCredentials('adm', 'admpa$$') + ); + yield $this->connection->setStreamMetadataAsync( + '$sys-w-diff', + ExpectedVersion::ANY, + StreamMetadata::create()->setWriteRoles('user2')->build(), + new UserCredentials('adm', 'admpa$$') + ); + yield $this->connection->setStreamMetadataAsync( + '$sys-w-multiple', + ExpectedVersion::ANY, + StreamMetadata::create()->setWriteRoles('user1', 'user2')->build(), + new UserCredentials('adm', 'admpa$$') + ); + yield $this->connection->setStreamMetadataAsync( + '$sys-w-restricted', + ExpectedVersion::ANY, + StreamMetadata::create()->setWriteRoles('')->build(), + new UserCredentials('adm', 'admpa$$') + ); + yield $this->connection->setStreamMetadataAsync( + '$sys-w-all', + ExpectedVersion::ANY, + StreamMetadata::create()->setWriteRoles(SystemRoles::ALL)->build(), + new UserCredentials('adm', 'admpa$$') + ); } /** @test */ diff --git a/tests/catch_up_subscription_handles_small_batch_sizes.php b/tests/catch_up_subscription_handles_small_batch_sizes.php index aa0799bd..2b8195b5 100644 --- a/tests/catch_up_subscription_handles_small_batch_sizes.php +++ b/tests/catch_up_subscription_handles_small_batch_sizes.php @@ -13,7 +13,6 @@ namespace ProophTest\EventStoreClient; -use function Amp\call; use Amp\Deferred; use Amp\Promise; use function Amp\Promise\timeout; @@ -36,22 +35,20 @@ class catch_up_subscription_handles_small_batch_sizes extends EventStoreConnecti private string $streamName = 'TestStream'; private CatchUpSubscriptionSettings $settings; - protected function setUpAsync(): Promise + protected function setUpAsync(): Generator { - return call(function (): Generator { - yield parent::setUpAsync(); - - //Create 500 events - for ($i = 0; $i < 5; $i++) { - yield $this->connection->appendToStreamAsync( - $this->streamName, - ExpectedVersion::ANY, - $this->createOneHundredEvents() - ); - } + yield from parent::setUpAsync(); + + //Create 500 events + for ($i = 0; $i < 5; $i++) { + yield $this->connection->appendToStreamAsync( + $this->streamName, + ExpectedVersion::ANY, + $this->createOneHundredEvents() + ); + } - $this->settings = new CatchUpSubscriptionSettings(100, 1, false, true); - }); + $this->settings = new CatchUpSubscriptionSettings(100, 1, false, true); } /** @return EventData[] */ diff --git a/tests/subscribe_to_all_catching_up_should.php b/tests/subscribe_to_all_catching_up_should.php index e5667602..d82fdca6 100644 --- a/tests/subscribe_to_all_catching_up_should.php +++ b/tests/subscribe_to_all_catching_up_should.php @@ -44,32 +44,26 @@ class subscribe_to_all_catching_up_should extends EventStoreConnectionTestCase { private const TIMEOUT = 10000; - protected function setUpAsync(): Promise + protected function setUpAsync(): Generator { - return call(function (): Generator { - parent::setUpAsync(); - - yield $this->connection->setStreamMetadataAsync( - '$all', - ExpectedVersion::ANY, - StreamMetadata::create()->setReadRoles(SystemRoles::ALL)->build(), - new UserCredentials(SystemUsers::ADMIN, SystemUsers::DEFAULT_ADMIN_PASSWORD) - ); - }); + yield from parent::setUpAsync(); + + yield $this->connection->setStreamMetadataAsync( + '$all', + ExpectedVersion::ANY, + StreamMetadata::create()->setReadRoles(SystemRoles::ALL)->build(), + new UserCredentials(SystemUsers::ADMIN, SystemUsers::DEFAULT_ADMIN_PASSWORD) + ); } - protected function tearDownAsync(): Promise + protected function tearDownAsync(): Generator { - return call(function (): Generator { - yield $this->connection->setStreamMetadataAsync( - '$all', - ExpectedVersion::ANY, - StreamMetadata::create()->build(), - new UserCredentials(SystemUsers::ADMIN, SystemUsers::DEFAULT_ADMIN_PASSWORD) - ); - - yield parent::tearDownAsync(); - }); + yield $this->connection->setStreamMetadataAsync( + '$all', + ExpectedVersion::ANY, + StreamMetadata::create()->build(), + new UserCredentials(SystemUsers::ADMIN, SystemUsers::DEFAULT_ADMIN_PASSWORD) + ); } /** @test */ diff --git a/tests/subscribe_to_all_should.php b/tests/subscribe_to_all_should.php index 366ecfa1..9fe21ce8 100644 --- a/tests/subscribe_to_all_should.php +++ b/tests/subscribe_to_all_should.php @@ -34,33 +34,27 @@ class subscribe_to_all_should extends EventStoreConnectionTestCase { private const TIMEOUT = 10000; - protected function setUpAsync(): Promise + protected function setUpAsync(): Generator { - return call(function (): Generator { - yield parent::setUpAsync(); - - yield $this->connection->setStreamMetadataAsync( - '$all', - ExpectedVersion::ANY, - StreamMetadata::create()->setReadRoles(SystemRoles::ALL)->build(), - new UserCredentials(SystemUsers::ADMIN, SystemUsers::DEFAULT_ADMIN_PASSWORD) - ); - }); + yield from parent::setUpAsync(); + + yield $this->connection->setStreamMetadataAsync( + '$all', + ExpectedVersion::ANY, + StreamMetadata::create()->setReadRoles(SystemRoles::ALL)->build(), + new UserCredentials(SystemUsers::ADMIN, SystemUsers::DEFAULT_ADMIN_PASSWORD) + ); } - protected function tearDownAsync(): Promise + protected function tearDownAsync(): Generator { - return call(function (): Generator { - yield $this->connection->setStreamMetadataAsync( - '$all', - ExpectedVersion::ANY, - new StreamMetadata(), - new UserCredentials(SystemUsers::ADMIN, SystemUsers::DEFAULT_ADMIN_PASSWORD) + yield $this->connection->setStreamMetadataAsync( + '$all', + ExpectedVersion::ANY, + new StreamMetadata(), + new UserCredentials(SystemUsers::ADMIN, SystemUsers::DEFAULT_ADMIN_PASSWORD) - ); - - yield parent::tearDownAsync(); - }); + ); } /** @test */ diff --git a/tests/when_committing_empty_transaction.php b/tests/when_committing_empty_transaction.php index 190071c3..1724f2de 100644 --- a/tests/when_committing_empty_transaction.php +++ b/tests/when_committing_empty_transaction.php @@ -35,42 +35,38 @@ class when_committing_empty_transaction extends AsyncTestCase private EventData $firstEvent; private string $stream; - protected function setUpAsync(): Promise + protected function setUpAsync(): Generator { - return call(function (): Generator { - $this->firstEvent = TestEvent::newTestEvent(); - $this->connection = TestConnection::create(); - $this->stream = Guid::generateAsHex(); + $this->firstEvent = TestEvent::newTestEvent(); + $this->connection = TestConnection::create(); + $this->stream = Guid::generateAsHex(); - yield $this->connection->connectAsync(); + yield $this->connection->connectAsync(); - $result = yield $this->connection->appendToStreamAsync( - $this->stream, - ExpectedVersion::NO_STREAM, - [$this->firstEvent, TestEvent::newTestEvent(), TestEvent::newTestEvent()] - ); - \assert($result instanceof WriteResult); + $result = yield $this->connection->appendToStreamAsync( + $this->stream, + ExpectedVersion::NO_STREAM, + [$this->firstEvent, TestEvent::newTestEvent(), TestEvent::newTestEvent()] + ); + \assert($result instanceof WriteResult); - $this->assertSame(2, $result->nextExpectedVersion()); + $this->assertSame(2, $result->nextExpectedVersion()); - $transaction = yield $this->connection->startTransactionAsync( - $this->stream, - 2 - ); - \assert($transaction instanceof EventStoreTransaction); + $transaction = yield $this->connection->startTransactionAsync( + $this->stream, + 2 + ); + \assert($transaction instanceof EventStoreTransaction); - $result = yield $transaction->commitAsync(); - \assert($result instanceof WriteResult); + $result = yield $transaction->commitAsync(); + \assert($result instanceof WriteResult); - $this->assertSame(2, $result->nextExpectedVersion()); - }); + $this->assertSame(2, $result->nextExpectedVersion()); } - protected function tearDownAsync(): Promise + protected function tearDownAsync() { $this->connection->close(); - - return parent::tearDownAsync(); } /** @test */ diff --git a/tests/when_having_max_count_set_for_stream.php b/tests/when_having_max_count_set_for_stream.php index 7b965cc5..bb7de76b 100644 --- a/tests/when_having_max_count_set_for_stream.php +++ b/tests/when_having_max_count_set_for_stream.php @@ -29,29 +29,27 @@ class when_having_max_count_set_for_stream extends EventStoreConnectionTestCase /** @var EventData[] */ private array $testEvents = []; - protected function setUpAsync(): Promise + protected function setUpAsync(): Generator { - return call(function (): Generator { - yield parent::setUpAsync(); - - yield $this->connection->setStreamMetadataAsync( - $this->stream, - ExpectedVersion::ANY, - StreamMetadata::create()->setMaxCount(3)->build(), - DefaultData::adminCredentials() - ); - - for ($i = 0; $i < 5; $i++) { - $this->testEvents[] = TestEvent::newTestEvent(null, (string) $i); - } - - yield $this->connection->appendToStreamAsync( - $this->stream, - ExpectedVersion::ANY, - $this->testEvents, - DefaultData::adminCredentials() - ); - }); + yield from parent::setUpAsync(); + + yield $this->connection->setStreamMetadataAsync( + $this->stream, + ExpectedVersion::ANY, + StreamMetadata::create()->setMaxCount(3)->build(), + DefaultData::adminCredentials() + ); + + for ($i = 0; $i < 5; $i++) { + $this->testEvents[] = TestEvent::newTestEvent(null, (string) $i); + } + + yield $this->connection->appendToStreamAsync( + $this->stream, + ExpectedVersion::ANY, + $this->testEvents, + DefaultData::adminCredentials() + ); } /** @test */ diff --git a/tests/when_working_with_stream_metadata_as_structured_info.php b/tests/when_working_with_stream_metadata_as_structured_info.php index 20ce7376..99347e59 100644 --- a/tests/when_working_with_stream_metadata_as_structured_info.php +++ b/tests/when_working_with_stream_metadata_as_structured_info.php @@ -27,11 +27,11 @@ class when_working_with_stream_metadata_as_structured_info extends EventStoreCon { private string $stream; - protected function setUpAsync(): Promise + protected function setUp(): void { - $this->stream = self::class . '\\' . $this->getName(); + parent::setUp(); - return parent::setUpAsync(); + $this->stream = self::class . '\\' . $this->getName(); } /** @test */ From 1505728db63bdc913a016d409545b579934cc178 Mon Sep 17 00:00:00 2001 From: prolic Date: Sat, 2 May 2020 05:58:17 -0400 Subject: [PATCH 2/2] fix broken tests (because of phpunit-util changes) --- composer.json | 2 +- tests/EventStoreConnectionTestCase.php | 5 ++++- tests/Security/overriden_system_stream_security.php | 1 - tests/Security/overriden_system_stream_security_for_all.php | 1 - tests/Security/overriden_user_stream_security.php | 1 - tests/Security/stream_security_inheritance.php | 2 -- tests/subscribe_to_all_catching_up_should.php | 3 ++- tests/subscribe_to_all_should.php | 4 ++-- tests/when_committing_empty_transaction.php | 2 -- tests/when_having_max_count_set_for_stream.php | 2 -- .../when_working_with_stream_metadata_as_structured_info.php | 1 - 11 files changed, 9 insertions(+), 15 deletions(-) diff --git a/composer.json b/composer.json index 989f83cd..2ecb85eb 100644 --- a/composer.json +++ b/composer.json @@ -32,7 +32,7 @@ }, "require-dev": { "amphp/log": "^1.0", - "amphp/phpunit-util": "dev-alt-13", + "amphp/phpunit-util": "dev-master", "doctrine/instantiator": "^1.1", "php-coveralls/php-coveralls": "^2.1", "phpspec/prophecy": "^1.7.2", diff --git a/tests/EventStoreConnectionTestCase.php b/tests/EventStoreConnectionTestCase.php index 8c9db195..cc99fbb4 100644 --- a/tests/EventStoreConnectionTestCase.php +++ b/tests/EventStoreConnectionTestCase.php @@ -14,6 +14,7 @@ namespace ProophTest\EventStoreClient; use Amp\PHPUnit\AsyncTestCase; +use Amp\Success; use Generator; use Prooph\EventStore\Async\EventStoreConnection; use ProophTest\EventStoreClient\Helper\TestConnection; @@ -28,8 +29,10 @@ protected function setUpAsync(): Generator yield $this->connection->connectAsync(); } - protected function tearDownAsync() + protected function tearDownAsync(): Generator { $this->connection->close(); + + yield new Success(); } } diff --git a/tests/Security/overriden_system_stream_security.php b/tests/Security/overriden_system_stream_security.php index 77978fa7..03aec334 100644 --- a/tests/Security/overriden_system_stream_security.php +++ b/tests/Security/overriden_system_stream_security.php @@ -14,7 +14,6 @@ namespace ProophTest\EventStoreClient\Security; use function Amp\call; -use Amp\Promise; use Generator; use Prooph\EventStore\Async\EventStoreTransaction; use Prooph\EventStore\Exception\AccessDenied; diff --git a/tests/Security/overriden_system_stream_security_for_all.php b/tests/Security/overriden_system_stream_security_for_all.php index 0107a1e2..71b11055 100644 --- a/tests/Security/overriden_system_stream_security_for_all.php +++ b/tests/Security/overriden_system_stream_security_for_all.php @@ -14,7 +14,6 @@ namespace ProophTest\EventStoreClient\Security; use function Amp\call; -use Amp\Promise; use Generator; use Prooph\EventStore\Async\EventStoreTransaction; use Prooph\EventStore\Common\SystemRoles; diff --git a/tests/Security/overriden_user_stream_security.php b/tests/Security/overriden_user_stream_security.php index d4ca94e2..c0a42b08 100644 --- a/tests/Security/overriden_user_stream_security.php +++ b/tests/Security/overriden_user_stream_security.php @@ -14,7 +14,6 @@ namespace ProophTest\EventStoreClient\Security; use function Amp\call; -use Amp\Promise; use Generator; use Prooph\EventStore\Async\EventStoreTransaction; use Prooph\EventStore\Exception\AccessDenied; diff --git a/tests/Security/stream_security_inheritance.php b/tests/Security/stream_security_inheritance.php index 2690e5d8..284238f7 100644 --- a/tests/Security/stream_security_inheritance.php +++ b/tests/Security/stream_security_inheritance.php @@ -13,8 +13,6 @@ namespace ProophTest\EventStoreClient\Security; -use function Amp\call; -use Amp\Promise; use Generator; use Prooph\EventStore\Common\SystemRoles; use Prooph\EventStore\Exception\AccessDenied; diff --git a/tests/subscribe_to_all_catching_up_should.php b/tests/subscribe_to_all_catching_up_should.php index d82fdca6..4f7f335e 100644 --- a/tests/subscribe_to_all_catching_up_should.php +++ b/tests/subscribe_to_all_catching_up_should.php @@ -13,7 +13,6 @@ namespace ProophTest\EventStoreClient; -use function Amp\call; use Amp\Deferred; use Amp\Delayed; use Amp\Promise; @@ -64,6 +63,8 @@ protected function tearDownAsync(): Generator StreamMetadata::create()->build(), new UserCredentials(SystemUsers::ADMIN, SystemUsers::DEFAULT_ADMIN_PASSWORD) ); + + yield from parent::tearDownAsync(); } /** @test */ diff --git a/tests/subscribe_to_all_should.php b/tests/subscribe_to_all_should.php index 9fe21ce8..3aaa339d 100644 --- a/tests/subscribe_to_all_should.php +++ b/tests/subscribe_to_all_should.php @@ -13,7 +13,6 @@ namespace ProophTest\EventStoreClient; -use function Amp\call; use Amp\Promise; use Amp\Success; use Amp\TimeoutException; @@ -53,8 +52,9 @@ protected function tearDownAsync(): Generator ExpectedVersion::ANY, new StreamMetadata(), new UserCredentials(SystemUsers::ADMIN, SystemUsers::DEFAULT_ADMIN_PASSWORD) - ); + + yield from parent::tearDownAsync(); } /** @test */ diff --git a/tests/when_committing_empty_transaction.php b/tests/when_committing_empty_transaction.php index 1724f2de..64e923e0 100644 --- a/tests/when_committing_empty_transaction.php +++ b/tests/when_committing_empty_transaction.php @@ -13,9 +13,7 @@ namespace ProophTest\EventStoreClient; -use function Amp\call; use Amp\PHPUnit\AsyncTestCase; -use Amp\Promise; use Generator; use Prooph\EventStore\Async\EventStoreConnection; use Prooph\EventStore\Async\EventStoreTransaction; diff --git a/tests/when_having_max_count_set_for_stream.php b/tests/when_having_max_count_set_for_stream.php index bb7de76b..ef9dfe07 100644 --- a/tests/when_having_max_count_set_for_stream.php +++ b/tests/when_having_max_count_set_for_stream.php @@ -13,8 +13,6 @@ namespace ProophTest\EventStoreClient; -use function Amp\call; -use Amp\Promise; use Generator; use Prooph\EventStore\EventData; use Prooph\EventStore\ExpectedVersion; diff --git a/tests/when_working_with_stream_metadata_as_structured_info.php b/tests/when_working_with_stream_metadata_as_structured_info.php index 99347e59..ec5a451b 100644 --- a/tests/when_working_with_stream_metadata_as_structured_info.php +++ b/tests/when_working_with_stream_metadata_as_structured_info.php @@ -13,7 +13,6 @@ namespace ProophTest\EventStoreClient; -use Amp\Promise; use Generator; use Prooph\EventStore\Exception\RuntimeException; use Prooph\EventStore\Exception\WrongExpectedVersion;