Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
68 changes: 56 additions & 12 deletions tests/integration/IntegrationTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -1534,9 +1534,17 @@ public function testExportUsers()

public function testQueryThreadsWithFilter()
{
// Create a fresh channel with both users as members
$testChannel = $this->client->Channel(
"messaging",
$this->generateGuid(),
["test" => true, "language" => "php"]
);
$testChannel->create($this->user1["id"], [$this->user1["id"], $this->user2["id"]]);

// Create a thread by sending a message with a parent_id
$parentMessage = $this->channel->sendMessage(["text" => "Parent message"], $this->user1["id"]);
$threadMessage = $this->channel->sendMessage(
$parentMessage = $testChannel->sendMessage(["text" => "Parent message"], $this->user1["id"]);
$threadMessage = $testChannel->sendMessage(
["text" => "Thread message", "parent_id" => $parentMessage["message"]["id"]],
$this->user2["id"]
);
Expand All @@ -1551,19 +1559,30 @@ public function testQueryThreadsWithFilter()
// Verify the response
$this->assertTrue(array_key_exists("threads", (array)$response));
$this->assertGreaterThanOrEqual(1, count($response["threads"]));

// Cleanup
$testChannel->delete();
}

public function testQueryThreadsWithSort()
{
// Create a fresh channel with both users as members
$testChannel = $this->client->Channel(
"messaging",
$this->generateGuid(),
["test" => true, "language" => "php"]
);
$testChannel->create($this->user1["id"], [$this->user1["id"], $this->user2["id"]]);

// Create multiple threads
$parentMessage1 = $this->channel->sendMessage(["text" => "Parent message 1"], $this->user1["id"]);
$threadMessage1 = $this->channel->sendMessage(
$parentMessage1 = $testChannel->sendMessage(["text" => "Parent message 1"], $this->user1["id"]);
$threadMessage1 = $testChannel->sendMessage(
["text" => "Thread message 1", "parent_id" => $parentMessage1["message"]["id"]],
$this->user2["id"]
);

$parentMessage2 = $this->channel->sendMessage(["text" => "Parent message 2"], $this->user1["id"]);
$threadMessage2 = $this->channel->sendMessage(
$parentMessage2 = $testChannel->sendMessage(["text" => "Parent message 2"], $this->user1["id"]);
$threadMessage2 = $testChannel->sendMessage(
["text" => "Thread message 2", "parent_id" => $parentMessage2["message"]["id"]],
$this->user2["id"]
);
Expand All @@ -1578,19 +1597,30 @@ public function testQueryThreadsWithSort()
// Verify the response
$this->assertTrue(array_key_exists("threads", (array)$response));
$this->assertGreaterThanOrEqual(2, count($response["threads"]));

// Cleanup
$testChannel->delete();
}

public function testQueryThreadsWithFilterAndSort()
{
// Create a fresh channel with both users as members
$testChannel = $this->client->Channel(
"messaging",
$this->generateGuid(),
["test" => true, "language" => "php"]
);
$testChannel->create($this->user1["id"], [$this->user1["id"], $this->user2["id"]]);

// Create multiple threads
$parentMessage1 = $this->channel->sendMessage(["text" => "Parent message 1"], $this->user1["id"]);
$threadMessage1 = $this->channel->sendMessage(
$parentMessage1 = $testChannel->sendMessage(["text" => "Parent message 1"], $this->user1["id"]);
$threadMessage1 = $testChannel->sendMessage(
["text" => "Thread message 1", "parent_id" => $parentMessage1["message"]["id"]],
$this->user2["id"]
);

$parentMessage2 = $this->channel->sendMessage(["text" => "Parent message 2"], $this->user1["id"]);
$threadMessage2 = $this->channel->sendMessage(
$parentMessage2 = $testChannel->sendMessage(["text" => "Parent message 2"], $this->user1["id"]);
$threadMessage2 = $testChannel->sendMessage(
["text" => "Thread message 2", "parent_id" => $parentMessage2["message"]["id"]],
$this->user2["id"]
);
Expand All @@ -1605,13 +1635,24 @@ public function testQueryThreadsWithFilterAndSort()
// Verify the response
$this->assertTrue(array_key_exists("threads", (array)$response));
$this->assertGreaterThanOrEqual(2, count($response["threads"]));

// Cleanup
$testChannel->delete();
}

public function testQueryThreadsWithoutFilterAndSort()
{
// Create a fresh channel with both users as members
$testChannel = $this->client->Channel(
"messaging",
$this->generateGuid(),
["test" => true, "language" => "php"]
);
$testChannel->create($this->user1["id"], [$this->user1["id"], $this->user2["id"]]);

// Create a thread by sending a message with a parent_id
$parentMessage = $this->channel->sendMessage(["text" => "Parent message for no filter test"], $this->user1["id"]);
$threadMessage = $this->channel->sendMessage(
$parentMessage = $testChannel->sendMessage(["text" => "Parent message for no filter test"], $this->user1["id"]);
$threadMessage = $testChannel->sendMessage(
["text" => "Thread message for no filter test", "parent_id" => $parentMessage["message"]["id"]],
$this->user2["id"]
);
Expand All @@ -1626,6 +1667,9 @@ public function testQueryThreadsWithoutFilterAndSort()
// Verify the response
$this->assertTrue(array_key_exists("threads", (array)$response));
$this->assertGreaterThanOrEqual(1, count($response["threads"]));

// Cleanup
$testChannel->delete();
}

public function testCreateDraft()
Expand Down
Loading