mirror of
https://github.com/openclaw/openclaw.git
synced 2026-03-27 09:21:35 +07:00
ci: balance shards and reuse pr artifacts
This commit is contained in:
@@ -2,6 +2,7 @@ import { describe, expect, it } from "vitest";
|
||||
import {
|
||||
dedupeFilesPreserveOrder,
|
||||
packFilesByDuration,
|
||||
packFilesByDurationWithBaseLoads,
|
||||
selectMemoryHeavyFiles,
|
||||
selectTimedHeavyFiles,
|
||||
selectUnitHeavyFileGroups,
|
||||
@@ -133,4 +134,21 @@ describe("packFilesByDuration", () => {
|
||||
["src/b.test.ts", "src/c.test.ts"],
|
||||
]);
|
||||
});
|
||||
|
||||
it("accounts for existing shard load when packing new work", () => {
|
||||
const durationByFile = {
|
||||
"src/a.test.ts": 100,
|
||||
"src/b.test.ts": 90,
|
||||
"src/c.test.ts": 20,
|
||||
} satisfies Record<string, number>;
|
||||
|
||||
expect(
|
||||
packFilesByDurationWithBaseLoads(
|
||||
Object.keys(durationByFile),
|
||||
3,
|
||||
(file) => durationByFile[file] ?? 0,
|
||||
[0, 200, 10],
|
||||
),
|
||||
).toEqual([["src/a.test.ts", "src/c.test.ts"], [], ["src/b.test.ts"]]);
|
||||
});
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user