Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 | 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x | import { integer, sqliteTable, text } from 'drizzle-orm/sqlite-core'
/**
* Smoke test results table
*
* Stores results from automated smoke tests run via CronJob.
* Used by Gatus to determine if the application is functioning correctly.
*/
export const smokeTestRuns = sqliteTable('smoke_test_runs', {
/**
* Unique identifier for the test run
*/
id: text('id').primaryKey(),
/**
* When the test run started
*/
startedAt: integer('started_at', { mode: 'timestamp' }).notNull(),
/**
* When the test run completed (null if still running)
*/
completedAt: integer('completed_at', { mode: 'timestamp' }),
/**
* Current status of the test run
*/
status: text('status', {
enum: ['running', 'passed', 'failed', 'error'],
}).notNull(),
/**
* Total number of tests executed
*/
totalTests: integer('total_tests'),
/**
* Number of tests that passed
*/
passedTests: integer('passed_tests'),
/**
* Number of tests that failed
*/
failedTests: integer('failed_tests'),
/**
* Total duration of the test run in milliseconds
*/
durationMs: integer('duration_ms'),
/**
* JSON-serialized detailed test results
*/
resultsJson: text('results_json'),
/**
* Error message if the run failed with an error
*/
errorMessage: text('error_message'),
})
export type SmokeTestRun = typeof smokeTestRuns.$inferSelect
export type NewSmokeTestRun = typeof smokeTestRuns.$inferInsert
|