mirror of
https://github.com/appwrite/appwrite.git
synced 2026-05-26 13:51:13 +00:00
chore: usagetest and migrationsbase
This commit is contained in:
@@ -1142,49 +1142,38 @@ class UsageTest extends Scope
|
||||
|
||||
$tries = 0;
|
||||
|
||||
while (true) {
|
||||
try {
|
||||
// Compare new values with old values
|
||||
$response = $this->client->call(
|
||||
Client::METHOD_GET,
|
||||
'/functions/' . $functionId . '/usage?range=30d',
|
||||
$this->getConsoleHeaders()
|
||||
);
|
||||
$this->assertEventually(function () use ($functionId, $functionsMetrics, $projectMetrics) {
|
||||
// Compare new values with old values
|
||||
$response = $this->client->call(
|
||||
Client::METHOD_GET,
|
||||
'/functions/' . $functionId . '/usage?range=30d',
|
||||
$this->getConsoleHeaders()
|
||||
);
|
||||
|
||||
$this->assertEquals(200, $response['headers']['status-code']);
|
||||
$this->assertEquals(19, count($response['body']));
|
||||
$this->assertEquals('30d', $response['body']['range']);
|
||||
$this->assertEquals(200, $response['headers']['status-code']);
|
||||
$this->assertEquals(19, count($response['body']));
|
||||
$this->assertEquals('30d', $response['body']['range']);
|
||||
|
||||
// Check if the new values are greater than the old values
|
||||
$this->assertEquals($functionsMetrics['executionsTotal'] + 1, $response['body']['executionsTotal']);
|
||||
$this->assertGreaterThan($functionsMetrics['executionsTimeTotal'], $response['body']['executionsTimeTotal']);
|
||||
$this->assertGreaterThan($functionsMetrics['executionsMbSecondsTotal'], $response['body']['executionsMbSecondsTotal']);
|
||||
// Check if the new values are greater than the old values
|
||||
$this->assertEquals($functionsMetrics['executionsTotal'] + 1, $response['body']['executionsTotal']);
|
||||
$this->assertGreaterThan($functionsMetrics['executionsTimeTotal'], $response['body']['executionsTimeTotal']);
|
||||
$this->assertGreaterThan($functionsMetrics['executionsMbSecondsTotal'], $response['body']['executionsMbSecondsTotal']);
|
||||
|
||||
$response = $this->client->call(
|
||||
Client::METHOD_GET,
|
||||
'/project/usage',
|
||||
$this->getConsoleHeaders(),
|
||||
[
|
||||
'period' => '1h',
|
||||
'startDate' => self::getToday(),
|
||||
'endDate' => self::getTomorrow(),
|
||||
]
|
||||
);
|
||||
$response = $this->client->call(
|
||||
Client::METHOD_GET,
|
||||
'/project/usage',
|
||||
$this->getConsoleHeaders(),
|
||||
[
|
||||
'period' => '1h',
|
||||
'startDate' => self::getToday(),
|
||||
'endDate' => self::getTomorrow(),
|
||||
]
|
||||
);
|
||||
|
||||
$this->assertEquals(200, $response['headers']['status-code']);
|
||||
$this->assertEquals($projectMetrics['executionsTotal'] + 1, $response['body']['executionsTotal']);
|
||||
$this->assertGreaterThan($projectMetrics['executionsMbSecondsTotal'], $response['body']['executionsMbSecondsTotal']);
|
||||
|
||||
break;
|
||||
} catch (ExpectationFailedException $th) {
|
||||
if ($tries >= 5) {
|
||||
throw $th;
|
||||
} else {
|
||||
$tries++;
|
||||
sleep(5);
|
||||
}
|
||||
}
|
||||
}
|
||||
$this->assertEquals(200, $response['headers']['status-code']);
|
||||
$this->assertEquals($projectMetrics['executionsTotal'] + 1, $response['body']['executionsTotal']);
|
||||
$this->assertGreaterThan($projectMetrics['executionsMbSecondsTotal'], $response['body']['executionsMbSecondsTotal']);
|
||||
});
|
||||
}
|
||||
|
||||
public function tearDown(): void
|
||||
|
||||
@@ -53,8 +53,9 @@ trait MigrationsBase
|
||||
$this->assertNotEmpty($migration['body']);
|
||||
$this->assertNotEmpty($migration['body']['$id']);
|
||||
|
||||
$attempts = 0;
|
||||
while ($attempts < 5) {
|
||||
$migrationResult = [];
|
||||
|
||||
$this->assertEventually(function () use ($migration, &$migrationResult) {
|
||||
$response = $this->client->call(Client::METHOD_GET, '/migrations/' . $migration['body']['$id'], [
|
||||
'content-type' => 'application/json',
|
||||
'x-appwrite-project' => $this->getDestinationProject()['$id'],
|
||||
@@ -66,24 +67,18 @@ trait MigrationsBase
|
||||
$this->assertNotEmpty($response['body']['$id']);
|
||||
|
||||
if ($response['body']['status'] === 'failed') {
|
||||
$this->fail('Migration failed', json_encode($response['body'], JSON_PRETTY_PRINT));
|
||||
$this->fail('Migration failed' . json_encode($response['body'], JSON_PRETTY_PRINT));
|
||||
}
|
||||
|
||||
$this->assertNotEquals('failed', $response['body']['status']);
|
||||
$this->assertEquals('completed', $response['body']['status']);
|
||||
|
||||
if ($response['body']['status'] === 'completed') {
|
||||
return $response['body'];
|
||||
}
|
||||
$migrationResult = $response['body'];
|
||||
|
||||
if ($attempts === 4) {
|
||||
$this->assertEquals('completed', $response['body']['status']);
|
||||
}
|
||||
return true;
|
||||
});
|
||||
|
||||
$attempts++;
|
||||
sleep(5);
|
||||
}
|
||||
|
||||
return [];
|
||||
return $migrationResult;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user