ci: trigga på master + formatfix inför Gitea Actions
CI / Typecheck, test & build (push) Failing after 2s
CI / Typecheck, test & build (push) Failing after 2s
This commit is contained in:
@@ -1,7 +1,12 @@
|
||||
import { describe, expect, it, beforeEach, afterAll } from "vitest";
|
||||
import { eq, sql } from "drizzle-orm";
|
||||
import { createDatabase, closeDatabase } from "../src/client.js";
|
||||
import { schema, seedReleaseGates, evaluateReleaseGates, summarizeReleaseGates } from "../src/index.js";
|
||||
import {
|
||||
schema,
|
||||
seedReleaseGates,
|
||||
evaluateReleaseGates,
|
||||
summarizeReleaseGates,
|
||||
} from "../src/index.js";
|
||||
import { BUILT_IN_RELEASE_GATES } from "@app/shared-types";
|
||||
|
||||
const { db, pool } = createDatabase();
|
||||
@@ -53,9 +58,27 @@ describe("release gates", () => {
|
||||
const userB = await createTestUser("22222222-2222-2222-2222-222222222222");
|
||||
const now = new Date();
|
||||
await db.insert(schema.productAnalyticsEvents).values([
|
||||
{ eventName: "account_created", userId: userA, occurredAt: now, receivedAt: now, properties: {} },
|
||||
{ eventName: "account_created", userId: userB, occurredAt: now, receivedAt: now, properties: {} },
|
||||
{ eventName: "scan_completed", userId: userA, occurredAt: now, receivedAt: now, properties: {} },
|
||||
{
|
||||
eventName: "account_created",
|
||||
userId: userA,
|
||||
occurredAt: now,
|
||||
receivedAt: now,
|
||||
properties: {},
|
||||
},
|
||||
{
|
||||
eventName: "account_created",
|
||||
userId: userB,
|
||||
occurredAt: now,
|
||||
receivedAt: now,
|
||||
properties: {},
|
||||
},
|
||||
{
|
||||
eventName: "scan_completed",
|
||||
userId: userA,
|
||||
occurredAt: now,
|
||||
receivedAt: now,
|
||||
properties: {},
|
||||
},
|
||||
]);
|
||||
|
||||
const results = await evaluateReleaseGates(db);
|
||||
@@ -80,12 +103,27 @@ describe("release gates", () => {
|
||||
const user = await createTestUser("33333333-3333-3333-3333-333333333333");
|
||||
const now = new Date();
|
||||
await db.insert(schema.productAnalyticsEvents).values([
|
||||
{ eventName: "account_created", userId: user, occurredAt: now, receivedAt: now, properties: {} },
|
||||
{ eventName: "scan_completed", userId: user, occurredAt: now, receivedAt: now, properties: {} },
|
||||
{
|
||||
eventName: "account_created",
|
||||
userId: user,
|
||||
occurredAt: now,
|
||||
receivedAt: now,
|
||||
properties: {},
|
||||
},
|
||||
{
|
||||
eventName: "scan_completed",
|
||||
userId: user,
|
||||
occurredAt: now,
|
||||
receivedAt: now,
|
||||
properties: {},
|
||||
},
|
||||
]);
|
||||
|
||||
await evaluateReleaseGates(db);
|
||||
const [gate] = await db.select().from(schema.releaseGates).where(eq(schema.releaseGates.gateKey, "first_scan_rate"));
|
||||
const [gate] = await db
|
||||
.select()
|
||||
.from(schema.releaseGates)
|
||||
.where(eq(schema.releaseGates.gateKey, "first_scan_rate"));
|
||||
expect(gate?.lastValue).toBeCloseTo(1);
|
||||
expect(gate?.status).toBe("passed");
|
||||
expect(gate?.lastEvaluatedAt).not.toBeNull();
|
||||
|
||||
Reference in New Issue
Block a user