Skip to content

Commit 469f000

Browse files
テストを追加
1 parent 7257894 commit 469f000

10 files changed

Lines changed: 1413 additions & 128 deletions
Lines changed: 91 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,91 @@
1+
<?php
2+
3+
declare(strict_types=1);
4+
5+
namespace Akinoriakatsuka\CqrsEsExamplePhp\Tests\Command\Domain\Events;
6+
7+
use DateTimeImmutable;
8+
use PHPUnit\Framework\TestCase;
9+
use Akinoriakatsuka\CqrsEsExamplePhp\Command\Domain\Events\GroupChatMemberRemoved;
10+
use Akinoriakatsuka\CqrsEsExamplePhp\Command\Domain\Models\GroupChatId;
11+
use Akinoriakatsuka\CqrsEsExamplePhp\Command\Domain\Models\UserAccountId;
12+
13+
class GroupChatMemberRemovedTest extends TestCase {
14+
private GroupChatMemberRemoved $event;
15+
private string $id;
16+
private GroupChatId $aggregateId;
17+
private UserAccountId $memberUserAccountId;
18+
private UserAccountId $executorId;
19+
private int $sequenceNumber;
20+
private DateTimeImmutable $occurredAt;
21+
22+
protected function setUp(): void {
23+
$this->id = 'event-id-123';
24+
$this->aggregateId = new GroupChatId();
25+
$this->memberUserAccountId = new UserAccountId();
26+
$this->executorId = new UserAccountId();
27+
$this->sequenceNumber = 4;
28+
$this->occurredAt = new DateTimeImmutable();
29+
30+
$this->event = new GroupChatMemberRemoved(
31+
$this->id,
32+
$this->aggregateId,
33+
$this->memberUserAccountId,
34+
$this->executorId,
35+
$this->sequenceNumber,
36+
$this->occurredAt
37+
);
38+
}
39+
40+
public function testGetId(): void {
41+
$this->assertSame($this->id, $this->event->getId());
42+
}
43+
44+
public function testGetTypeName(): void {
45+
$this->assertSame('group-chat-member-removed', $this->event->getTypeName());
46+
}
47+
48+
public function testGetAggregateId(): void {
49+
$this->assertSame($this->aggregateId, $this->event->getAggregateId());
50+
}
51+
52+
public function testGetMemberUserAccountId(): void {
53+
$this->assertSame($this->memberUserAccountId, $this->event->getMemberUserAccountId());
54+
}
55+
56+
public function testGetExecutorId(): void {
57+
$this->assertSame($this->executorId, $this->event->getExecutorId());
58+
}
59+
60+
public function testGetSequenceNumber(): void {
61+
$this->assertSame($this->sequenceNumber, $this->event->getSequenceNumber());
62+
}
63+
64+
public function testIsCreated(): void {
65+
$this->assertFalse($this->event->isCreated());
66+
}
67+
68+
public function testGetOccurredAt(): void {
69+
$this->assertSame($this->occurredAt, $this->event->getOccurredAt());
70+
}
71+
72+
public function testJsonSerialize(): void {
73+
$json = $this->event->jsonSerialize();
74+
75+
$this->assertIsArray($json);
76+
$this->assertArrayHasKey('id', $json);
77+
$this->assertArrayHasKey('type', $json);
78+
$this->assertArrayHasKey('groupChatId', $json);
79+
$this->assertArrayHasKey('memberUserAccountId', $json);
80+
$this->assertArrayHasKey('executorId', $json);
81+
$this->assertArrayHasKey('sequenceNumber', $json);
82+
$this->assertArrayHasKey('occurredAt', $json);
83+
84+
$this->assertSame($this->id, $json['id']);
85+
$this->assertSame('group-chat-member-removed', $json['type']);
86+
$this->assertSame($this->aggregateId, $json['groupChatId']);
87+
$this->assertSame($this->memberUserAccountId, $json['memberUserAccountId']);
88+
$this->assertSame($this->executorId, $json['executorId']);
89+
$this->assertSame($this->sequenceNumber, $json['sequenceNumber']);
90+
}
91+
}
Lines changed: 92 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,92 @@
1+
<?php
2+
3+
declare(strict_types=1);
4+
5+
namespace Akinoriakatsuka\CqrsEsExamplePhp\Tests\Command\Domain\Events;
6+
7+
use DateTimeImmutable;
8+
use PHPUnit\Framework\TestCase;
9+
use Akinoriakatsuka\CqrsEsExamplePhp\Command\Domain\Events\GroupChatMessageDeleted;
10+
use Akinoriakatsuka\CqrsEsExamplePhp\Command\Domain\Models\GroupChatId;
11+
use Akinoriakatsuka\CqrsEsExamplePhp\Command\Domain\Models\MessageId;
12+
use Akinoriakatsuka\CqrsEsExamplePhp\Command\Domain\Models\UserAccountId;
13+
14+
class GroupChatMessageDeletedTest extends TestCase {
15+
private GroupChatMessageDeleted $event;
16+
private string $id;
17+
private GroupChatId $groupChatId;
18+
private MessageId $messageId;
19+
private UserAccountId $executorId;
20+
private int $sequenceNumber;
21+
private DateTimeImmutable $occurredAt;
22+
23+
protected function setUp(): void {
24+
$this->id = 'event-id-123';
25+
$this->groupChatId = new GroupChatId();
26+
$this->messageId = new MessageId();
27+
$this->executorId = new UserAccountId();
28+
$this->sequenceNumber = 4;
29+
$this->occurredAt = new DateTimeImmutable();
30+
31+
$this->event = new GroupChatMessageDeleted(
32+
$this->id,
33+
$this->groupChatId,
34+
$this->messageId,
35+
$this->executorId,
36+
$this->sequenceNumber,
37+
$this->occurredAt
38+
);
39+
}
40+
41+
public function testGetId(): void {
42+
$this->assertSame($this->id, $this->event->getId());
43+
}
44+
45+
public function testGetTypeName(): void {
46+
$this->assertSame('group-chat-message-deleted', $this->event->getTypeName());
47+
}
48+
49+
public function testGetAggregateId(): void {
50+
$this->assertSame($this->groupChatId, $this->event->getAggregateId());
51+
}
52+
53+
public function testGetMessageId(): void {
54+
$this->assertSame($this->messageId, $this->event->getMessageId());
55+
}
56+
57+
public function testGetExecutorId(): void {
58+
$this->assertSame($this->executorId, $this->event->getExecutorId());
59+
}
60+
61+
public function testGetSequenceNumber(): void {
62+
$this->assertSame($this->sequenceNumber, $this->event->getSequenceNumber());
63+
}
64+
65+
public function testIsCreated(): void {
66+
$this->assertFalse($this->event->isCreated());
67+
}
68+
69+
public function testGetOccurredAt(): void {
70+
$this->assertSame($this->occurredAt, $this->event->getOccurredAt());
71+
}
72+
73+
public function testJsonSerialize(): void {
74+
$json = $this->event->jsonSerialize();
75+
76+
$this->assertIsArray($json);
77+
$this->assertArrayHasKey('id', $json);
78+
$this->assertArrayHasKey('type', $json);
79+
$this->assertArrayHasKey('groupChatId', $json);
80+
$this->assertArrayHasKey('messageId', $json);
81+
$this->assertArrayHasKey('executorId', $json);
82+
$this->assertArrayHasKey('sequenceNumber', $json);
83+
$this->assertArrayHasKey('occurredAt', $json);
84+
85+
$this->assertSame($this->id, $json['id']);
86+
$this->assertSame('group-chat-message-deleted', $json['type']);
87+
$this->assertSame($this->groupChatId, $json['groupChatId']);
88+
$this->assertSame($this->messageId, $json['messageId']);
89+
$this->assertSame($this->executorId, $json['executorId']);
90+
$this->assertSame($this->sequenceNumber, $json['sequenceNumber']);
91+
}
92+
}
Lines changed: 101 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,101 @@
1+
<?php
2+
3+
declare(strict_types=1);
4+
5+
namespace Akinoriakatsuka\CqrsEsExamplePhp\Tests\Command\Domain\Events;
6+
7+
use DateTimeImmutable;
8+
use PHPUnit\Framework\TestCase;
9+
use Akinoriakatsuka\CqrsEsExamplePhp\Command\Domain\Events\GroupChatMessageEdited;
10+
use Akinoriakatsuka\CqrsEsExamplePhp\Command\Domain\Models\GroupChatId;
11+
use Akinoriakatsuka\CqrsEsExamplePhp\Command\Domain\Models\MessageId;
12+
use Akinoriakatsuka\CqrsEsExamplePhp\Command\Domain\Models\UserAccountId;
13+
14+
class GroupChatMessageEditedTest extends TestCase {
15+
private GroupChatMessageEdited $event;
16+
private string $id;
17+
private GroupChatId $groupChatId;
18+
private MessageId $messageId;
19+
private string $newText;
20+
private UserAccountId $executorId;
21+
private int $sequenceNumber;
22+
private DateTimeImmutable $occurredAt;
23+
24+
protected function setUp(): void {
25+
$this->id = 'event-id-123';
26+
$this->groupChatId = new GroupChatId();
27+
$this->messageId = new MessageId();
28+
$this->newText = 'Updated message text';
29+
$this->executorId = new UserAccountId();
30+
$this->sequenceNumber = 4;
31+
$this->occurredAt = new DateTimeImmutable();
32+
33+
$this->event = new GroupChatMessageEdited(
34+
$this->id,
35+
$this->groupChatId,
36+
$this->messageId,
37+
$this->newText,
38+
$this->executorId,
39+
$this->sequenceNumber,
40+
$this->occurredAt
41+
);
42+
}
43+
44+
public function testGetId(): void {
45+
$this->assertSame($this->id, $this->event->getId());
46+
}
47+
48+
public function testGetTypeName(): void {
49+
$this->assertSame('group-chat-message-edited', $this->event->getTypeName());
50+
}
51+
52+
public function testGetAggregateId(): void {
53+
$this->assertSame($this->groupChatId, $this->event->getAggregateId());
54+
}
55+
56+
public function testGetMessageId(): void {
57+
$this->assertSame($this->messageId, $this->event->getMessageId());
58+
}
59+
60+
public function testGetNewText(): void {
61+
$this->assertSame($this->newText, $this->event->getNewText());
62+
}
63+
64+
public function testGetExecutorId(): void {
65+
$this->assertSame($this->executorId, $this->event->getExecutorId());
66+
}
67+
68+
public function testGetSequenceNumber(): void {
69+
$this->assertSame($this->sequenceNumber, $this->event->getSequenceNumber());
70+
}
71+
72+
public function testIsCreated(): void {
73+
$this->assertFalse($this->event->isCreated());
74+
}
75+
76+
public function testGetOccurredAt(): void {
77+
$this->assertSame($this->occurredAt, $this->event->getOccurredAt());
78+
}
79+
80+
public function testJsonSerialize(): void {
81+
$json = $this->event->jsonSerialize();
82+
83+
$this->assertIsArray($json);
84+
$this->assertArrayHasKey('id', $json);
85+
$this->assertArrayHasKey('type', $json);
86+
$this->assertArrayHasKey('groupChatId', $json);
87+
$this->assertArrayHasKey('messageId', $json);
88+
$this->assertArrayHasKey('newText', $json);
89+
$this->assertArrayHasKey('executorId', $json);
90+
$this->assertArrayHasKey('sequenceNumber', $json);
91+
$this->assertArrayHasKey('occurredAt', $json);
92+
93+
$this->assertSame($this->id, $json['id']);
94+
$this->assertSame('group-chat-message-edited', $json['type']);
95+
$this->assertSame($this->groupChatId, $json['groupChatId']);
96+
$this->assertSame($this->messageId, $json['messageId']);
97+
$this->assertSame($this->newText, $json['newText']);
98+
$this->assertSame($this->executorId, $json['executorId']);
99+
$this->assertSame($this->sequenceNumber, $json['sequenceNumber']);
100+
}
101+
}
Lines changed: 97 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,97 @@
1+
<?php
2+
3+
declare(strict_types=1);
4+
5+
namespace Akinoriakatsuka\CqrsEsExamplePhp\Tests\Command\Domain\Events;
6+
7+
use DateTimeImmutable;
8+
use PHPUnit\Framework\TestCase;
9+
use Akinoriakatsuka\CqrsEsExamplePhp\Command\Domain\Events\GroupChatMessagePosted;
10+
use Akinoriakatsuka\CqrsEsExamplePhp\Command\Domain\Models\GroupChatId;
11+
use Akinoriakatsuka\CqrsEsExamplePhp\Command\Domain\Models\Message;
12+
use Akinoriakatsuka\CqrsEsExamplePhp\Command\Domain\Models\MessageId;
13+
use Akinoriakatsuka\CqrsEsExamplePhp\Command\Domain\Models\UserAccountId;
14+
15+
class GroupChatMessagePostedTest extends TestCase {
16+
private GroupChatMessagePosted $event;
17+
private string $id;
18+
private GroupChatId $groupChatId;
19+
private Message $message;
20+
private UserAccountId $executorId;
21+
private int $sequenceNumber;
22+
private DateTimeImmutable $occurredAt;
23+
24+
protected function setUp(): void {
25+
$this->id = 'event-id-123';
26+
$this->groupChatId = new GroupChatId();
27+
$this->message = new Message(
28+
new MessageId(),
29+
'Hello, this is a test message',
30+
new UserAccountId()
31+
);
32+
$this->executorId = new UserAccountId();
33+
$this->sequenceNumber = 4;
34+
$this->occurredAt = new DateTimeImmutable();
35+
36+
$this->event = new GroupChatMessagePosted(
37+
$this->id,
38+
$this->groupChatId,
39+
$this->message,
40+
$this->executorId,
41+
$this->sequenceNumber,
42+
$this->occurredAt
43+
);
44+
}
45+
46+
public function testGetId(): void {
47+
$this->assertSame($this->id, $this->event->getId());
48+
}
49+
50+
public function testGetTypeName(): void {
51+
$this->assertSame('group-chat-message-posted', $this->event->getTypeName());
52+
}
53+
54+
public function testGetAggregateId(): void {
55+
$this->assertSame($this->groupChatId, $this->event->getAggregateId());
56+
}
57+
58+
public function testGetMessage(): void {
59+
$this->assertSame($this->message, $this->event->getMessage());
60+
}
61+
62+
public function testGetExecutorId(): void {
63+
$this->assertSame($this->executorId, $this->event->getExecutorId());
64+
}
65+
66+
public function testGetSequenceNumber(): void {
67+
$this->assertSame($this->sequenceNumber, $this->event->getSequenceNumber());
68+
}
69+
70+
public function testIsCreated(): void {
71+
$this->assertFalse($this->event->isCreated());
72+
}
73+
74+
public function testGetOccurredAt(): void {
75+
$this->assertSame($this->occurredAt, $this->event->getOccurredAt());
76+
}
77+
78+
public function testJsonSerialize(): void {
79+
$json = $this->event->jsonSerialize();
80+
81+
$this->assertIsArray($json);
82+
$this->assertArrayHasKey('id', $json);
83+
$this->assertArrayHasKey('type', $json);
84+
$this->assertArrayHasKey('groupChatId', $json);
85+
$this->assertArrayHasKey('message', $json);
86+
$this->assertArrayHasKey('executorId', $json);
87+
$this->assertArrayHasKey('sequenceNumber', $json);
88+
$this->assertArrayHasKey('occurredAt', $json);
89+
90+
$this->assertSame($this->id, $json['id']);
91+
$this->assertSame('group-chat-message-posted', $json['type']);
92+
$this->assertSame($this->groupChatId, $json['groupChatId']);
93+
$this->assertSame($this->message, $json['message']);
94+
$this->assertSame($this->executorId, $json['executorId']);
95+
$this->assertSame($this->sequenceNumber, $json['sequenceNumber']);
96+
}
97+
}

0 commit comments

Comments
 (0)