@creative-introvert/tons-of-tests 2.0.0 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. package/README.md +157 -134
  2. package/dist/cjs/Classify.js +5 -0
  3. package/dist/cjs/Classify.js.map +1 -1
  4. package/dist/cjs/Test.js +5 -1
  5. package/dist/cjs/Test.js.map +1 -1
  6. package/dist/cjs/Test.repository.types.js.map +1 -1
  7. package/dist/cjs/internal/Test.js +107 -54
  8. package/dist/cjs/internal/Test.js.map +1 -1
  9. package/dist/cjs/internal/Test.repository.sqlite.js +77 -20
  10. package/dist/cjs/internal/Test.repository.sqlite.js.map +1 -1
  11. package/dist/cjs/internal/stats.js +8 -2
  12. package/dist/cjs/internal/stats.js.map +1 -1
  13. package/dist/cjs/internal/summarize.js +18 -13
  14. package/dist/cjs/internal/summarize.js.map +1 -1
  15. package/dist/dts/Classify.d.ts +4 -0
  16. package/dist/dts/Classify.d.ts.map +1 -1
  17. package/dist/dts/Show.d.ts +3 -3
  18. package/dist/dts/Show.d.ts.map +1 -1
  19. package/dist/dts/Test.d.ts +46 -8
  20. package/dist/dts/Test.d.ts.map +1 -1
  21. package/dist/dts/Test.repository.d.ts +3 -3
  22. package/dist/dts/Test.repository.d.ts.map +1 -1
  23. package/dist/dts/Test.repository.types.d.ts +6 -0
  24. package/dist/dts/Test.repository.types.d.ts.map +1 -1
  25. package/dist/dts/internal/Test.d.ts +15 -10
  26. package/dist/dts/internal/Test.d.ts.map +1 -1
  27. package/dist/dts/internal/Test.repository.sqlite.d.ts +2 -1
  28. package/dist/dts/internal/Test.repository.sqlite.d.ts.map +1 -1
  29. package/dist/dts/internal/stats.d.ts.map +1 -1
  30. package/dist/dts/internal/summarize.d.ts.map +1 -1
  31. package/dist/esm/Classify.js +5 -0
  32. package/dist/esm/Classify.js.map +1 -1
  33. package/dist/esm/Test.js +4 -0
  34. package/dist/esm/Test.js.map +1 -1
  35. package/dist/esm/Test.repository.types.js.map +1 -1
  36. package/dist/esm/internal/Test.js +104 -53
  37. package/dist/esm/internal/Test.js.map +1 -1
  38. package/dist/esm/internal/Test.repository.sqlite.js +77 -20
  39. package/dist/esm/internal/Test.repository.sqlite.js.map +1 -1
  40. package/dist/esm/internal/stats.js +8 -2
  41. package/dist/esm/internal/stats.js.map +1 -1
  42. package/dist/esm/internal/summarize.js +18 -13
  43. package/dist/esm/internal/summarize.js.map +1 -1
  44. package/package.json +1 -1
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.test = exports.runCollectRecord = exports.makeSha256 = exports.diff = exports.all = exports.TestResultSchema = void 0;
6
+ exports.test = exports.runCollectRecord = exports.resultKey = exports.makeSha256 = exports.filterResults = exports.diff = exports.all = exports.TestResultSchema = void 0;
7
7
  var _nodeCrypto = /*#__PURE__*/require("node:crypto");
8
8
  var _effect = /*#__PURE__*/require("effect");
9
9
  var _Classify = /*#__PURE__*/require("../Classify.js");
@@ -16,35 +16,49 @@ exports.makeSha256 = makeSha256;
16
16
  const TestResult = {
17
17
  make: args => {
18
18
  const {
19
+ hashTestCase,
20
+ key,
19
21
  label,
20
22
  input,
21
23
  result,
22
24
  expected
23
25
  } = args;
24
- // Without `ordering`, in case the user decides to re-order test cases,
25
- // which shouldn't change the identity of the test result.
26
- // Without `tags`, as those are just for filtering.
26
+ // Reordering cases or evaluations must not change a result's identity.
27
+ // Tags and timing also stay out of the ID.
27
28
  const id = makeSha256({
29
+ hashTestCase,
30
+ key,
28
31
  label,
29
32
  input,
30
33
  result,
31
34
  expected
32
35
  });
33
- const hashTestCase = makeSha256({
34
- input,
35
- expected
36
- });
37
36
  return {
38
37
  ...args,
39
- id,
40
- hashTestCase
38
+ id
41
39
  };
42
40
  }
43
41
  };
42
+ const resultKey = ({
43
+ hashTestCase,
44
+ key
45
+ }) => JSON.stringify([hashTestCase, key]);
46
+ exports.resultKey = resultKey;
47
+ const defaultClassify = /*#__PURE__*/(0, _Classify2.makeClassify)({
48
+ isEqual: _Classify2.defaultIsEqual
49
+ });
50
+ const defaultEvaluate = (result, expected) => [{
51
+ key: 'result',
52
+ result,
53
+ expected,
54
+ label: defaultClassify(result, expected)
55
+ }];
44
56
  const TestResultSchema = exports.TestResultSchema = /*#__PURE__*/_effect.Schema.Struct({
45
57
  id: _effect.Schema.String,
46
58
  hashTestCase: _effect.Schema.String,
59
+ key: _effect.Schema.String,
47
60
  ordering: _effect.Schema.Int,
61
+ resultOrdering: _effect.Schema.Int,
48
62
  input: _effect.Schema.Unknown,
49
63
  result: _effect.Schema.Unknown,
50
64
  expected: _effect.Schema.Unknown,
@@ -60,32 +74,56 @@ const test = exports.test = /*#__PURE__*/_effect.Effect.fnUntraced(function* ({
60
74
  ordering
61
75
  },
62
76
  program,
63
- classify
77
+ evaluate
64
78
  }) {
79
+ const hashTestCase = makeSha256({
80
+ input,
81
+ expected
82
+ });
65
83
  const t0 = yield* _effect.Clock.currentTimeNanos;
66
84
  const result = yield* program(input);
67
85
  const t1 = yield* _effect.Clock.currentTimeNanos;
68
- return TestResult.make({
86
+ const evaluations = evaluate(result, expected);
87
+ if (evaluations.length === 0) {
88
+ return yield* _effect.Effect.die(new Error('evaluate must return at least one result'));
89
+ }
90
+ const keys = new Set();
91
+ for (const {
92
+ key
93
+ } of evaluations) {
94
+ if (key.length === 0 || keys.has(key)) {
95
+ return yield* _effect.Effect.die(new Error('evaluate must return non-empty keys that are unique within each test case'));
96
+ }
97
+ keys.add(key);
98
+ }
99
+ return evaluations.map((evaluation, resultOrdering) => TestResult.make({
100
+ ...evaluation,
101
+ hashTestCase,
69
102
  ordering,
103
+ resultOrdering,
70
104
  input,
71
- result,
72
- expected,
73
105
  tags: tags ?? [],
74
- label: classify(result, expected),
75
106
  timeMillis: Number(t1 - t0) / 1_000_000
76
- });
107
+ }));
77
108
  });
78
- const all = ({
79
- testCases,
80
- program,
81
- classify = (0, _Classify2.makeClassify)({
82
- isEqual: _Classify2.defaultIsEqual
83
- })
84
- }, {
109
+ const all = (suite, {
85
110
  concurrency
86
111
  } = {
87
112
  concurrency: 1
88
113
  }) => {
114
+ if (suite.evaluate === undefined) {
115
+ return all({
116
+ ...suite,
117
+ evaluate: defaultEvaluate
118
+ }, {
119
+ concurrency
120
+ });
121
+ }
122
+ const {
123
+ testCases,
124
+ program,
125
+ evaluate
126
+ } = suite;
89
127
  const total = _effect.Stream.isStream(testCases) ? undefined : testCases.length;
90
128
  const testCases$ = _effect.Stream.isStream(testCases) ? testCases : _effect.Stream.fromIterable(testCases);
91
129
  return (0, _effect.pipe)(testCases$, _effect.Stream.zipWithIndex, _effect.Stream.map(([testCase, ordering]) => ({
@@ -94,51 +132,55 @@ const all = ({
94
132
  })), _effect.Stream.mapEffect(testCase => test({
95
133
  testCase,
96
134
  program,
97
- classify
135
+ evaluate
98
136
  }), {
99
137
  concurrency,
100
138
  unordered: false
101
- }), _effect.Stream.tap(testResult => {
102
- const i = testResult.ordering + 1;
139
+ }), _effect.Stream.tap(testResults => {
140
+ const i = testResults[0].ordering + 1;
103
141
  const stride = total === undefined ? 10 : Math.max(Math.floor(total * 0.05), 10);
104
142
  const isMilestone = i === 1 || i % stride === 0 || total !== undefined && i === total;
105
143
  if (!isMilestone) return _effect.Effect.void;
106
144
  return _effect.Effect.logDebug(total === undefined ? `progress ${i}` : `progress ${i}/${total}`);
107
- }));
145
+ }), _effect.Stream.flattenIterable);
108
146
  };
109
147
  exports.all = all;
110
148
  const emptyAcc = () => ({
111
- testResultsByTestCaseHash: {},
112
- testCaseHashes: [],
113
- times: [],
149
+ testResultsByKey: {},
150
+ testResultKeys: [],
151
+ timesByTestCaseHash: new Map(),
114
152
  TP: 0,
115
153
  TN: 0,
116
154
  FP: 0,
117
- FN: 0,
118
- timeSum: 0,
119
- timeMin: Number.POSITIVE_INFINITY,
120
- timeMax: Number.NEGATIVE_INFINITY
155
+ FN: 0
121
156
  });
122
- const runCollectRecord = testRun => testResults$ => testResults$.pipe(_effect.Stream.run(
123
- // Each run owns its accumulator, so updates can happen in place.
124
- _effect.Sink.reduce(emptyAcc, (acc, r) => {
125
- acc.testResultsByTestCaseHash[r.hashTestCase] = r;
126
- acc.testCaseHashes.push(r.hashTestCase);
127
- acc.times.push(r.timeMillis);
128
- acc.timeSum += r.timeMillis;
129
- if (r.timeMillis < acc.timeMin) acc.timeMin = r.timeMillis;
130
- if (r.timeMillis > acc.timeMax) acc.timeMax = r.timeMillis;
157
+ const appendResult = (acc, r) => {
158
+ const key = resultKey(r);
159
+ acc.testResultsByKey[key] = r;
160
+ acc.testResultKeys.push(key);
161
+ if (!acc.timesByTestCaseHash.has(r.hashTestCase)) {
162
+ acc.timesByTestCaseHash.set(r.hashTestCase, r.timeMillis);
163
+ }
131
164
  if (r.label === 'TP') acc.TP++;else if (r.label === 'TN') acc.TN++;else if (r.label === 'FP') acc.FP++;else acc.FN++;
132
165
  return acc;
133
- })), _effect.Effect.map(acc => {
134
- const total = acc.testCaseHashes.length;
135
- const hasTimes = acc.times.length > 0;
166
+ };
167
+ const finish = (testRun, acc) => {
168
+ const times = [...acc.timesByTestCaseHash.values()];
169
+ let timeSum = 0;
170
+ let timeMin = Number.POSITIVE_INFINITY;
171
+ let timeMax = Number.NEGATIVE_INFINITY;
172
+ for (const time of times) {
173
+ timeSum += time;
174
+ if (time < timeMin) timeMin = time;
175
+ if (time > timeMax) timeMax = time;
176
+ }
136
177
  const stats = new _Classify.Stats({
137
178
  TP: acc.TP,
138
179
  TN: acc.TN,
139
180
  FP: acc.FP,
140
181
  FN: acc.FN,
141
- total,
182
+ total: acc.testResultKeys.length,
183
+ testCases: acc.timesByTestCaseHash.size,
142
184
  precision: (0, _Classify2.precision)({
143
185
  TP: acc.TP,
144
186
  FP: acc.FP
@@ -147,21 +189,32 @@ _effect.Sink.reduce(emptyAcc, (acc, r) => {
147
189
  TP: acc.TP,
148
190
  FN: acc.FN
149
191
  }),
150
- timeMean: hasTimes ? _effect.Option.some(acc.timeSum / acc.times.length) : _effect.Option.none(),
151
- timeMin: hasTimes ? _effect.Option.some(acc.timeMin) : _effect.Option.none(),
152
- timeMax: hasTimes ? _effect.Option.some(acc.timeMax) : _effect.Option.none(),
153
- timeMedian: (0, _Classify2.median)(acc.times)
192
+ timeMean: times.length > 0 ? _effect.Option.some(timeSum / times.length) : _effect.Option.none(),
193
+ timeMin: times.length > 0 ? _effect.Option.some(timeMin) : _effect.Option.none(),
194
+ timeMax: times.length > 0 ? _effect.Option.some(timeMax) : _effect.Option.none(),
195
+ timeMedian: (0, _Classify2.median)(times)
154
196
  });
155
197
  return {
156
198
  id: testRun.id,
157
199
  name: testRun.name,
158
200
  hash: testRun.hash,
159
- testResultsByTestCaseHash: acc.testResultsByTestCaseHash,
160
- testCaseHashes: acc.testCaseHashes,
201
+ testResultsByKey: acc.testResultsByKey,
202
+ testResultKeys: acc.testResultKeys,
203
+ testCaseHashes: [...acc.timesByTestCaseHash.keys()],
161
204
  stats
162
205
  };
163
- }));
206
+ };
207
+ const runCollectRecord = testRun => testResults$ => testResults$.pipe(_effect.Stream.run(_effect.Sink.reduce(emptyAcc, appendResult)), _effect.Effect.map(acc => finish(testRun, acc)));
164
208
  exports.runCollectRecord = runCollectRecord;
209
+ const filterResults = (testRun, predicate) => {
210
+ const acc = emptyAcc();
211
+ for (const key of testRun.testResultKeys) {
212
+ const result = testRun.testResultsByKey[key];
213
+ if (predicate(result)) appendResult(acc, result);
214
+ }
215
+ return finish(testRun, acc);
216
+ };
217
+ exports.filterResults = filterResults;
165
218
  const diff = ({
166
219
  testRun: {
167
220
  stats
@@ -1 +1 @@
1
- {"version":3,"file":"Test.js","names":["_nodeCrypto","require","_effect","_Classify","_Classify2","makeSha256","input","createHash","update","JSON","stringify","digest","exports","TestResult","make","args","label","result","expected","id","hashTestCase","TestResultSchema","Schema","Struct","String","ordering","Int","Unknown","LabelSchema","tags","Array","timeMillis","Finite","test","Effect","fnUntraced","testCase","program","classify","t0","Clock","currentTimeNanos","t1","Number","all","testCases","makeClassify","isEqual","defaultIsEqual","concurrency","total","Stream","isStream","undefined","length","testCases$","fromIterable","pipe","zipWithIndex","map","mapEffect","unordered","tap","testResult","i","stride","Math","max","floor","isMilestone","void","logDebug","emptyAcc","testResultsByTestCaseHash","testCaseHashes","times","TP","TN","FP","FN","timeSum","timeMin","POSITIVE_INFINITY","timeMax","NEGATIVE_INFINITY","runCollectRecord","testRun","testResults$","run","Sink","reduce","acc","r","push","hasTimes","stats","Stats","precision","recall","timeMean","Option","some","none","timeMedian","median","name","hash","diff","previousTestRun","match","onNone","onSome","previousStats"],"sources":["../../../src/internal/Test.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Test.js","names":["_nodeCrypto","require","_effect","_Classify","_Classify2","makeSha256","input","createHash","update","JSON","stringify","digest","exports","TestResult","make","args","hashTestCase","key","label","result","expected","id","resultKey","defaultClassify","makeClassify","isEqual","defaultIsEqual","defaultEvaluate","TestResultSchema","Schema","Struct","String","ordering","Int","resultOrdering","Unknown","LabelSchema","tags","Array","timeMillis","Finite","test","Effect","fnUntraced","testCase","program","evaluate","t0","Clock","currentTimeNanos","t1","evaluations","length","die","Error","keys","Set","has","add","map","evaluation","Number","all","suite","concurrency","undefined","testCases","total","Stream","isStream","testCases$","fromIterable","pipe","zipWithIndex","mapEffect","unordered","tap","testResults","i","stride","Math","max","floor","isMilestone","void","logDebug","flattenIterable","emptyAcc","testResultsByKey","testResultKeys","timesByTestCaseHash","Map","TP","TN","FP","FN","appendResult","acc","r","push","set","finish","testRun","times","values","timeSum","timeMin","POSITIVE_INFINITY","timeMax","NEGATIVE_INFINITY","time","stats","Stats","size","precision","recall","timeMean","Option","some","none","timeMedian","median","name","hash","testCaseHashes","runCollectRecord","testResults$","run","Sink","reduce","filterResults","predicate","diff","previousTestRun","match","onNone","onSome","previousStats"],"sources":["../../../src/internal/Test.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -27,7 +27,9 @@ const tables = exports.tables = {
27
27
  const TestResultWriteSchema = /*#__PURE__*/_effect.Schema.Struct({
28
28
  id: _effect.Schema.String,
29
29
  hashTestCase: _effect.Schema.String,
30
+ key: _effect.Schema.String,
30
31
  ordering: _effect.Schema.Int,
32
+ resultOrdering: _effect.Schema.Int,
31
33
  input: /*#__PURE__*/_effect.Schema.fromJsonString(_effect.Schema.Unknown),
32
34
  result: /*#__PURE__*/_effect.Schema.fromJsonString(_effect.Schema.Unknown),
33
35
  expected: /*#__PURE__*/_effect.Schema.fromJsonString(_effect.Schema.Unknown),
@@ -49,31 +51,40 @@ const CountSchema = /*#__PURE__*/_effect.Schema.Tuple([_effect.Schema.Struct({
49
51
  const TestRunsReadSchema = /*#__PURE__*/_effect.Schema.Array(_TestRepositoryTypes.TestRun);
50
52
  const TestRunResultsSchema = /*#__PURE__*/_effect.Schema.Array(/*#__PURE__*/_effect.Schema.Struct({
51
53
  testRun: _effect.Schema.Int,
52
- testResult: _effect.Schema.String
54
+ testResult: _effect.Schema.String,
55
+ ordering: _effect.Schema.Int,
56
+ resultOrdering: _effect.Schema.Int,
57
+ timeMillis: _effect.Schema.Finite
58
+ }));
59
+ const TableColumnsSchema = /*#__PURE__*/_effect.Schema.Array(/*#__PURE__*/_effect.Schema.Struct({
60
+ name: _effect.Schema.String
53
61
  }));
54
62
  const makeTestRepository = exports.makeTestRepository = /*#__PURE__*/_effect.Effect.gen(function* () {
55
63
  const sql = yield* SqlClient.SqlClient;
56
64
  yield* sql`PRAGMA auto_vacuum = FULL;`;
57
- yield* sql`
65
+ yield* sql.withTransaction(_effect.Effect.gen(function* () {
66
+ yield* sql`
58
67
  CREATE TABLE IF NOT EXISTS ${sql(tables.testRuns)}(
59
68
  id INTEGER PRIMARY KEY AUTOINCREMENT,
60
69
  name TEXT NOT NULL,
61
70
  hash TEXT
62
71
  );
63
72
  `;
64
- yield* sql`CREATE INDEX IF NOT EXISTS idx_name_hash ON ${sql(tables.testRuns)}(name, hash)`;
65
- // At most one "current" (hash IS NULL) row per suite name. Partial index
66
- // so committed rows are unaffected.
67
- yield* sql`
73
+ yield* sql`CREATE INDEX IF NOT EXISTS idx_name_hash ON ${sql(tables.testRuns)}(name, hash)`;
74
+ // At most one "current" (hash IS NULL) row per suite name. Partial index
75
+ // so committed rows are unaffected.
76
+ yield* sql`
68
77
  CREATE UNIQUE INDEX IF NOT EXISTS idx_current_per_name
69
78
  ON ${sql(tables.testRuns)}(name)
70
79
  WHERE hash IS NULL;
71
80
  `;
72
- yield* sql`
81
+ yield* sql`
73
82
  CREATE TABLE IF NOT EXISTS ${sql(tables.testResults)}(
74
83
  id TEXT PRIMARY KEY,
75
84
  hashTestCase TEXT NOT NULL,
85
+ key TEXT NOT NULL DEFAULT 'result',
76
86
  ordering INTEGER NOT NULL,
87
+ resultOrdering INTEGER NOT NULL DEFAULT 0,
77
88
  input TEXT,
78
89
  result TEXT,
79
90
  expected TEXT,
@@ -82,23 +93,57 @@ const makeTestRepository = exports.makeTestRepository = /*#__PURE__*/_effect.Eff
82
93
  timeMillis INTEGER NOT NULL
83
94
  );
84
95
  `;
85
- yield* sql`
96
+ yield* sql`
86
97
  CREATE TABLE IF NOT EXISTS ${sql(tables.testRunResults)}(
87
98
  testRun INTEGER NOT NULL,
88
99
  testResult TEXT NOT NULL,
100
+ ordering INTEGER NOT NULL,
101
+ resultOrdering INTEGER NOT NULL,
102
+ timeMillis INTEGER NOT NULL,
89
103
  FOREIGN KEY (testRun) REFERENCES ${sql(tables.testRuns)}(id),
90
104
  FOREIGN KEY (testResult) REFERENCES ${sql(tables.testResults)}(id),
91
105
  UNIQUE (testRun, testResult)
92
106
  );
93
107
  `;
94
- // Lookup by the junction's `testResult` column: the existing
95
- // UNIQUE(testRun, testResult) index is keyed on testRun first, so orphan
96
- // cleanup (`... NOT IN (SELECT testResult ...)`) and stream joins
97
- // (`res.id = runres.testResult`) would otherwise full-scan the junction.
98
- yield* sql`CREATE INDEX IF NOT EXISTS idx_trr_testresult ON ${sql(tables.testRunResults)}(testResult)`;
99
- yield* sql`CREATE INDEX IF NOT EXISTS idx_tr_hashtestcase ON ${sql(tables.testResults)}(hashTestCase)`;
100
- // SQLite's default SQLITE_MAX_VARIABLE_NUMBER is 999; testResults has 9
101
- // columns and junction rows 2, so 50 rows stays well under the limit.
108
+ const resultColumns = yield* _effect.Schema.decodeUnknownEffect(TableColumnsSchema)(yield* sql`PRAGMA table_info(${sql(tables.testResults)});`).pipe(_effect.Effect.mapError(_RepositoryError.RepositoryDecodeError.from('migrateTestResults')));
109
+ if (!resultColumns.some(column => column.name === 'key')) {
110
+ yield* sql`
111
+ ALTER TABLE ${sql(tables.testResults)}
112
+ ADD COLUMN key TEXT NOT NULL DEFAULT 'result';
113
+ `;
114
+ }
115
+ if (!resultColumns.some(column => column.name === 'resultOrdering')) {
116
+ yield* sql`
117
+ ALTER TABLE ${sql(tables.testResults)}
118
+ ADD COLUMN resultOrdering INTEGER NOT NULL DEFAULT 0;
119
+ `;
120
+ }
121
+ const runResultColumns = yield* _effect.Schema.decodeUnknownEffect(TableColumnsSchema)(yield* sql`PRAGMA table_info(${sql(tables.testRunResults)});`).pipe(_effect.Effect.mapError(_RepositoryError.RepositoryDecodeError.from('migrateTestRunResults')));
122
+ for (const column of ['ordering', 'resultOrdering', 'timeMillis']) {
123
+ if (runResultColumns.some(existing => existing.name === column)) {
124
+ continue;
125
+ }
126
+ yield* sql`
127
+ ALTER TABLE ${sql(tables.testRunResults)}
128
+ ADD COLUMN ${sql(column)} INTEGER NOT NULL DEFAULT 0;
129
+ `;
130
+ yield* sql`
131
+ UPDATE ${sql(tables.testRunResults)} AS runres
132
+ SET ${sql(column)} = (
133
+ SELECT ${sql(column)} FROM ${sql(tables.testResults)} res
134
+ WHERE res.id = runres.testResult
135
+ );
136
+ `;
137
+ }
138
+ // Lookup by the junction's `testResult` column: the existing
139
+ // UNIQUE(testRun, testResult) index is keyed on testRun first, so orphan
140
+ // cleanup (`... NOT IN (SELECT testResult ...)`) and stream joins
141
+ // (`res.id = runres.testResult`) would otherwise full-scan the junction.
142
+ yield* sql`CREATE INDEX IF NOT EXISTS idx_trr_testresult ON ${sql(tables.testRunResults)}(testResult)`;
143
+ yield* sql`CREATE INDEX IF NOT EXISTS idx_tr_hashtestcase ON ${sql(tables.testResults)}(hashTestCase)`;
144
+ }));
145
+ // With 11 result columns and 5 junction columns, batches of 50 rows stay below
146
+ // SQLite's lowest default limit of 999 bound values per statement.
102
147
  const INSERT_BATCH_SIZE = 50;
103
148
  const insertTestResults = (testResults, testRun) => sql.withTransaction(_effect.Effect.gen(function* () {
104
149
  if (testResults.length === 0) return;
@@ -115,14 +160,20 @@ const makeTestRepository = exports.makeTestRepository = /*#__PURE__*/_effect.Eff
115
160
  // so no correlated subquery.
116
161
  const junction = encoded.map(_ => ({
117
162
  testRun: testRun.id,
118
- testResult: _.id
163
+ testResult: _.id,
164
+ ordering: _.ordering,
165
+ resultOrdering: _.resultOrdering,
166
+ timeMillis: _.timeMillis
119
167
  }));
120
168
  for (let i = 0; i < junction.length; i += INSERT_BATCH_SIZE) {
121
169
  const chunk = junction.slice(i, i + INSERT_BATCH_SIZE);
122
170
  yield* sql`
123
171
  INSERT INTO ${sql(tables.testRunResults)}
124
172
  ${sql.insert(chunk)}
125
- ON CONFLICT(testRun, testResult) DO NOTHING;
173
+ ON CONFLICT(testRun, testResult) DO UPDATE SET
174
+ ordering = excluded.ordering,
175
+ resultOrdering = excluded.resultOrdering,
176
+ timeMillis = excluded.timeMillis;
126
177
  `.pipe(_effect.Effect.mapError(_RepositoryError.RepositoryWriteError.from('insertTestResults')));
127
178
  }
128
179
  })).pipe(_effect.Effect.catchTag('SqlError', e => _effect.Effect.fail(_RepositoryError.RepositoryWriteError.from('insertTestResults')(e))));
@@ -134,7 +185,9 @@ const makeTestRepository = exports.makeTestRepository = /*#__PURE__*/_effect.Eff
134
185
  return _effect.Schema.Struct({
135
186
  id: _effect.Schema.String,
136
187
  hashTestCase: _effect.Schema.String,
188
+ key: _effect.Schema.String,
137
189
  ordering: _effect.Schema.Int,
190
+ resultOrdering: _effect.Schema.Int,
138
191
  input: _effect.Schema.fromJsonString(input),
139
192
  result: _effect.Schema.fromJsonString(result),
140
193
  expected: _effect.Schema.fromJsonString(expected),
@@ -150,11 +203,15 @@ const makeTestRepository = exports.makeTestRepository = /*#__PURE__*/_effect.Eff
150
203
  // before exposing it as a stream.
151
204
  return _effect.Stream.unwrap(_effect.Effect.gen(function* () {
152
205
  const rows = yield* sql`
153
- SELECT res.* FROM ${sql(tables.testResults)} res
206
+ SELECT res.id, res.hashTestCase, res.key,
207
+ runres.ordering, runres.resultOrdering,
208
+ res.input, res.result, res.expected, res.label, res.tags,
209
+ runres.timeMillis
210
+ FROM ${sql(tables.testResults)} res
154
211
  JOIN ${sql(tables.testRunResults)} runres ON res.id = runres.testResult
155
212
  JOIN ${sql(tables.testRuns)} runs ON runs.id = runres.testRun
156
213
  WHERE runs.id = ${testRun.id}
157
- ORDER BY ordering ASC;
214
+ ORDER BY runres.ordering ASC, runres.resultOrdering ASC;
158
215
  `.pipe(_effect.Effect.mapError(_RepositoryError.RepositoryQueryError.fromSql('getTestResultsStream')));
159
216
  const decoded = yield* _effect.Schema.decodeUnknownEffect(RowsSchema)(rows).pipe(_effect.Effect.mapError(_RepositoryError.RepositoryDecodeError.from('getTestResultsStream')));
160
217
  return _effect.Stream.fromIterable(decoded);
@@ -1 +1 @@
1
- {"version":3,"file":"Test.repository.sqlite.js","names":["SqlClient","_interopRequireWildcard","require","_effect","_TestRepository","_TestRepositoryTypes","_RepositoryError","_Classify","_Schema","cache","e","t","__esModule","r","c","a","Object","defineProperty","n","__proto__","default","WeakMap","has","get","set","hasOwnProperty","call","getOwnPropertyDescriptor","tables","exports","testResults","testRuns","testRunResults","TestResultWriteSchema","Schema","Struct","id","String","hashTestCase","ordering","Int","input","fromJsonString","Unknown","result","expected","label","LabelSchema","tags","split","timeMillis","Finite","TestResultsSchema","Array","CountSchema","Tuple","count","pipe","decodeTo","SchemaTransformation","transform","decode","encode","TestRunsReadSchema","TestRun","TestRunResultsSchema","testRun","testResult","makeTestRepository","Effect","gen","sql","INSERT_BATCH_SIZE","insertTestResults","withTransaction","length","encoded","forEach","_","encodeEffect","mapError","RepositoryDecodeError","from","i","chunk","slice","insert","RepositoryWriteError","junction","map","catchTag","fail","insertTestResult","makeTestResultSchema","schemas","getTestResultsStream","RowSchema","RowsSchema","Stream","unwrap","rows","RepositoryQueryError","fromSql","decoded","decodeUnknownEffect","fromIterable","hasResults","fnUntraced","b","getPreviousTestRun","name","p","A","head","getAllTestRuns","results","getAllTestRunResults","getAllTestResults","getLastTestRunHash","runs","Option","flatMap","run","fromNullishOr","hash","getOrCreateCurrentTestRun","currentRaw","current","existing","isSome","value","insertedRaw","inserted","fromOption","TestRunNotCreated","testSuiteName","clearStale","keep","raw","staleTestRuns","ids","in","Console","log","clearUncommitedTestResults","currentTestRun","isNone","commitCurrentTestRun","currentTestRunResults","service"],"sources":["../../../src/internal/Test.repository.sqlite.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Test.repository.sqlite.js","names":["SqlClient","_interopRequireWildcard","require","_effect","_TestRepository","_TestRepositoryTypes","_RepositoryError","_Classify","_Schema","cache","e","t","__esModule","r","c","a","Object","defineProperty","n","__proto__","default","WeakMap","has","get","set","hasOwnProperty","call","getOwnPropertyDescriptor","tables","exports","testResults","testRuns","testRunResults","TestResultWriteSchema","Schema","Struct","id","String","hashTestCase","key","ordering","Int","resultOrdering","input","fromJsonString","Unknown","result","expected","label","LabelSchema","tags","split","timeMillis","Finite","TestResultsSchema","Array","CountSchema","Tuple","count","pipe","decodeTo","SchemaTransformation","transform","decode","encode","TestRunsReadSchema","TestRun","TestRunResultsSchema","testRun","testResult","TableColumnsSchema","name","makeTestRepository","Effect","gen","sql","withTransaction","resultColumns","decodeUnknownEffect","mapError","RepositoryDecodeError","from","some","column","runResultColumns","existing","INSERT_BATCH_SIZE","insertTestResults","length","encoded","forEach","_","encodeEffect","i","chunk","slice","insert","RepositoryWriteError","junction","map","catchTag","fail","insertTestResult","makeTestResultSchema","schemas","getTestResultsStream","RowSchema","RowsSchema","Stream","unwrap","rows","RepositoryQueryError","fromSql","decoded","fromIterable","hasResults","fnUntraced","b","getPreviousTestRun","p","A","head","getAllTestRuns","results","getAllTestRunResults","getAllTestResults","getLastTestRunHash","runs","Option","flatMap","run","fromNullishOr","hash","getOrCreateCurrentTestRun","currentRaw","current","isSome","value","insertedRaw","inserted","fromOption","TestRunNotCreated","testSuiteName","clearStale","keep","raw","staleTestRuns","ids","in","Console","log","clearUncommitedTestResults","currentTestRun","isNone","commitCurrentTestRun","currentTestRunResults","service"],"sources":["../../../src/internal/Test.repository.sqlite.ts"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;AAAA,IAAAA,SAAA,gBAAAC,uBAAA,cAAAC,OAAA;AACA,IAAAC,OAAA,gBAAAD,OAAA;AAWA,IAAAE,eAAA,gBAAAF,OAAA;AACA,IAAAG,oBAAA,gBAAAH,OAAA;AAQA,IAAAI,gBAAA,gBAAAJ,OAAA;AAMA,IAAAK,SAAA,gBAAAL,OAAA;AACA,IAAAM,OAAA,gBAAAN,OAAA;AAAsC,IAAAO,KAAA;AAAA,SAAAR,wBAAAS,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAE,UAAA,SAAAF,CAAA,MAAAG,CAAA,EAAAC,CAAA,EAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,QAAAM,MAAA,CAAAN,CAAA,MAAAA,CAAA,SAAAQ,CAAA,MAAAT,KAAA,yBAAAY,OAAA,KAAAZ,KAAA,OAAAY,OAAA,KAAAZ,KAAA,QAAAA,KAAA,CAAAa,GAAA,CAAAZ,CAAA,UAAAD,KAAA,CAAAc,GAAA,CAAAb,CAAA,GAAAD,KAAA,CAAAe,GAAA,CAAAd,CAAA,EAAAQ,CAAA,UAAAJ,CAAA,IAAAJ,CAAA,gBAAAI,CAAA,OAAAW,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAI,CAAA,OAAAD,CAAA,GAAAE,CAAA,IAAAC,MAAA,CAAAW,wBAAA,CAAAjB,CAAA,EAAAI,CAAA,OAAAD,CAAA,CAAAU,GAAA,IAAAV,CAAA,CAAAW,GAAA,IAAAT,CAAA,CAAAG,CAAA,EAAAJ,CAAA,EAAAD,CAAA,IAAAK,CAAA,CAAAJ,CAAA,IAAAJ,CAAA,CAAAI,CAAA,WAAAI,CAAA;AAE/B,MAAMU,MAAM,GAAAC,OAAA,CAAAD,MAAA,GAAG;EAClBE,WAAW,EAAE,cAAc;EAC3BC,QAAQ,EAAE,WAAW;EACrBC,cAAc,EAAE;CACV;AAEV,MAAMC,qBAAqB,gBACvBC,cAAM,CAACC,MAAM,CAAC;EACVC,EAAE,EAAEF,cAAM,CAACG,MAAM;EACjBC,YAAY,EAAEJ,cAAM,CAACG,MAAM;EAC3BE,GAAG,EAAEL,cAAM,CAACG,MAAM;EAClBG,QAAQ,EAAEN,cAAM,CAACO,GAAG;EACpBC,cAAc,EAAER,cAAM,CAACO,GAAG;EAC1BE,KAAK,eAAET,cAAM,CAACU,cAAc,CAACV,cAAM,CAACW,OAAO,CAAC;EAC5CC,MAAM,eAAEZ,cAAM,CAACU,cAAc,CAACV,cAAM,CAACW,OAAO,CAAC;EAC7CE,QAAQ,eAAEb,cAAM,CAACU,cAAc,CAACV,cAAM,CAACW,OAAO,CAAC;EAC/CG,KAAK,EAAEC,qBAAW;EAClBC,IAAI,eAAE,IAAAC,aAAK,EAAC,GAAG,CAAC;EAChBC,UAAU,EAAElB,cAAM,CAACmB;CACtB,CAAC;AAEN,MAAMC,iBAAiB,gBAAGpB,cAAM,CAACqB,KAAK,CAACtB,qBAAqB,CAAC;AAE7D,MAAMuB,WAAW,gBAAGtB,cAAM,CAACuB,KAAK,CAAC,CAC7BvB,cAAM,CAACC,MAAM,CAAC;EACVuB,KAAK,EAAExB,cAAM,CAACO;CACjB,CAAC,CACL,CAAC,CAACkB,IAAI,cACHzB,cAAM,CAAC0B,QAAQ,CACX1B,cAAM,CAACO,GAAG,eACVoB,4BAAoB,CAACC,SAAS,CAAC;EAC3BC,MAAM,EAAEA,CAAC,CAAC;IAACL;EAAK,CAAC,CAAC,KAAKA,KAAK;EAC5BM,MAAM,EAAEN,KAAK,IAAI,CAAC;IAACA;EAAK,CAAC;CAC5B,CAAC,CACL,CACJ;AAED,MAAMO,kBAAkB,gBAAG/B,cAAM,CAACqB,KAAK,CAACW,4BAAO,CAAC;AAEhD,MAAMC,oBAAoB,gBAAGjC,cAAM,CAACqB,KAAK,cACrCrB,cAAM,CAACC,MAAM,CAAC;EACViC,OAAO,EAAElC,cAAM,CAACO,GAAG;EACnB4B,UAAU,EAAEnC,cAAM,CAACG,MAAM;EACzBG,QAAQ,EAAEN,cAAM,CAACO,GAAG;EACpBC,cAAc,EAAER,cAAM,CAACO,GAAG;EAC1BW,UAAU,EAAElB,cAAM,CAACmB;CACtB,CAAC,CACL;AAED,MAAMiB,kBAAkB,gBAAGpC,cAAM,CAACqB,KAAK,cAACrB,cAAM,CAACC,MAAM,CAAC;EAACoC,IAAI,EAAErC,cAAM,CAACG;AAAM,CAAC,CAAC,CAAC;AAEtE,MAAMmC,kBAAkB,GAAA3C,OAAA,CAAA2C,kBAAA,gBAAGC,cAAM,CAACC,GAAG,CAAC,aAAS;EAClD,MAAMC,GAAG,GAAG,OAAO3E,SAAS,CAACA,SAAS;EAEtC,OAAO2E,GAAG,4BAA4B;EAEtC,OAAOA,GAAG,CAACC,eAAe,CACtBH,cAAM,CAACC,GAAG,CAAC,aAAS;IAChB,OAAOC,GAAG;qCACeA,GAAG,CAAC/C,MAAM,CAACG,QAAQ,CAAC;;;;;KAKpD;IAEO,OAAO4C,GAAG,+CAA+CA,GAAG,CAAC/C,MAAM,CAACG,QAAQ,CAAC,cAAc;IAE3F;IACA;IACA,OAAO4C,GAAG;;aAETA,GAAG,CAAC/C,MAAM,CAACG,QAAQ,CAAC;;KAE5B;IAEO,OAAO4C,GAAG;qCACeA,GAAG,CAAC/C,MAAM,CAACE,WAAW,CAAC;;;;;;;;;;;;;KAavD;IAEO,OAAO6C,GAAG;qCACeA,GAAG,CAAC/C,MAAM,CAACI,cAAc,CAAC;;;;;;+CAMhB2C,GAAG,CAAC/C,MAAM,CAACG,QAAQ,CAAC;kDACjB4C,GAAG,CAAC/C,MAAM,CAACE,WAAW,CAAC;;;KAGpE;IAEO,MAAM+C,aAAa,GAAG,OAAO3C,cAAM,CAAC4C,mBAAmB,CACnDR,kBAAkB,CACrB,CAAC,OAAOK,GAAG,qBAAqBA,GAAG,CAAC/C,MAAM,CAACE,WAAW,CAAC,IAAI,CAAC,CAAC6B,IAAI,CAC9Dc,cAAM,CAACM,QAAQ,CACXC,sCAAqB,CAACC,IAAI,CAAC,oBAAoB,CAAC,CACnD,CACJ;IACD,IAAI,CAACJ,aAAa,CAACK,IAAI,CAACC,MAAM,IAAIA,MAAM,CAACZ,IAAI,KAAK,KAAK,CAAC,EAAE;MACtD,OAAOI,GAAG;0BACAA,GAAG,CAAC/C,MAAM,CAACE,WAAW,CAAC;;SAExC;IACG;IACA,IACI,CAAC+C,aAAa,CAACK,IAAI,CAACC,MAAM,IAAIA,MAAM,CAACZ,IAAI,KAAK,gBAAgB,CAAC,EACjE;MACE,OAAOI,GAAG;0BACAA,GAAG,CAAC/C,MAAM,CAACE,WAAW,CAAC;;SAExC;IACG;IAEA,MAAMsD,gBAAgB,GAAG,OAAOlD,cAAM,CAAC4C,mBAAmB,CACtDR,kBAAkB,CACrB,CACG,OAAOK,GAAG,qBAAqBA,GAAG,CAAC/C,MAAM,CAACI,cAAc,CAAC,IAAI,CAChE,CAAC2B,IAAI,CACFc,cAAM,CAACM,QAAQ,CACXC,sCAAqB,CAACC,IAAI,CAAC,uBAAuB,CAAC,CACtD,CACJ;IACD,KAAK,MAAME,MAAM,IAAI,CAAC,UAAU,EAAE,gBAAgB,EAAE,YAAY,CAAC,EAAE;MAC/D,IACIC,gBAAgB,CAACF,IAAI,CAACG,QAAQ,IAAIA,QAAQ,CAACd,IAAI,KAAKY,MAAM,CAAC,EAC7D;QACE;MACJ;MACA,OAAOR,GAAG;0BACAA,GAAG,CAAC/C,MAAM,CAACI,cAAc,CAAC;yBAC3B2C,GAAG,CAACQ,MAAM,CAAC;SAC3B;MACO,OAAOR,GAAG;qBACLA,GAAG,CAAC/C,MAAM,CAACI,cAAc,CAAC;kBAC7B2C,GAAG,CAACQ,MAAM,CAAC;yBACJR,GAAG,CAACQ,MAAM,CAAC,SAASR,GAAG,CAAC/C,MAAM,CAACE,WAAW,CAAC;;;SAG3D;IACG;IAEA;IACA;IACA;IACA;IACA,OAAO6C,GAAG,oDAAoDA,GAAG,CAAC/C,MAAM,CAACI,cAAc,CAAC,cAAc;IACtG,OAAO2C,GAAG,qDAAqDA,GAAG,CAAC/C,MAAM,CAACE,WAAW,CAAC,gBAAgB;EAC1G,CAAC,CAAC,CACL;EAED;EACA;EACA,MAAMwD,iBAAiB,GAAG,EAAE;EAE5B,MAAMC,iBAAiB,GAAGA,CACtBzD,WAAsC,EACtCsC,OAAgB,KAEhBO,GAAG,CACEC,eAAe,CACZH,cAAM,CAACC,GAAG,CAAC,aAAS;IAChB,IAAI5C,WAAW,CAAC0D,MAAM,KAAK,CAAC,EAAE;IAE9B,MAAMC,OAAO,GAAG,OAAOhB,cAAM,CAACiB,OAAO,CAAC5D,WAAW,EAAE6D,CAAC,IAChDzD,cAAM,CAAC0D,YAAY,CAAC3D,qBAAqB,CAAC,CAAC0D,CAAC,CAAC,CAAChC,IAAI,CAC9Cc,cAAM,CAACM,QAAQ,CACXC,sCAAqB,CAACC,IAAI,CAAC,mBAAmB,CAAC,CAClD,CACJ,CACJ;IAED,KACI,IAAIY,CAAC,GAAG,CAAC,EACTA,CAAC,GAAGJ,OAAO,CAACD,MAAM,EAClBK,CAAC,IAAIP,iBAAiB,EACxB;MACE,MAAMQ,KAAK,GAAGL,OAAO,CAACM,KAAK,CAACF,CAAC,EAAEA,CAAC,GAAGP,iBAAiB,CAAC;MACrD,OAAOX,GAAG;sCACIA,GAAG,CAAC/C,MAAM,CAACE,WAAW,CAAC;0BACnC6C,GAAG,CAACqB,MAAM,CAACF,KAAK,CAAC;;qBAEtB,CAACnC,IAAI,CACEc,cAAM,CAACM,QAAQ,CACXkB,qCAAoB,CAAChB,IAAI,CAAC,mBAAmB,CAAC,CACjD,CACJ;IACL;IAEA;IACA;IACA,MAAMiB,QAAQ,GAAGT,OAAO,CAACU,GAAG,CAACR,CAAC,KAAK;MAC/BvB,OAAO,EAAEA,OAAO,CAAChC,EAAE;MACnBiC,UAAU,EAAEsB,CAAC,CAACvD,EAAE;MAChBI,QAAQ,EAAEmD,CAAC,CAACnD,QAAQ;MACpBE,cAAc,EAAEiD,CAAC,CAACjD,cAAc;MAChCU,UAAU,EAAEuC,CAAC,CAACvC;KACjB,CAAC,CAAC;IACH,KACI,IAAIyC,CAAC,GAAG,CAAC,EACTA,CAAC,GAAGK,QAAQ,CAACV,MAAM,EACnBK,CAAC,IAAIP,iBAAiB,EACxB;MACE,MAAMQ,KAAK,GAAGI,QAAQ,CAACH,KAAK,CAACF,CAAC,EAAEA,CAAC,GAAGP,iBAAiB,CAAC;MACtD,OAAOX,GAAG;sCACIA,GAAG,CAAC/C,MAAM,CAACI,cAAc,CAAC;0BACtC2C,GAAG,CAACqB,MAAM,CAACF,KAAK,CAAC;;;;;qBAKtB,CAACnC,IAAI,CACEc,cAAM,CAACM,QAAQ,CACXkB,qCAAoB,CAAChB,IAAI,CAAC,mBAAmB,CAAC,CACjD,CACJ;IACL;EACJ,CAAC,CAAC,CACL,CACAtB,IAAI,CACDc,cAAM,CAAC2B,QAAQ,CAAC,UAAU,EAAE1F,CAAC,IACzB+D,cAAM,CAAC4B,IAAI,CACPJ,qCAAoB,CAAChB,IAAI,CAAC,mBAAmB,CAAC,CAACvE,CAAC,CAAC,CACpD,CACJ,CACJ;EAET,MAAM4F,gBAAgB,GAAGA,CAACjC,UAAsB,EAAED,OAAgB,KAC9DmB,iBAAiB,CAAC,CAAClB,UAAU,CAAC,EAAED,OAAO,CAAC;EAE5C,MAAMmC,oBAAoB,GACtBC,OAA+C,IACI;IACnD,MAAM7D,KAAK,GAAI6D,OAAO,EAAE7D,KAAK,IAAIT,cAAM,CAACW,OAA2B;IACnE,MAAMC,MAAM,GAAI0D,OAAO,EAAE1D,MAAM,IAAIZ,cAAM,CAACW,OAA2B;IACrE,MAAME,QAAQ,GAAIyD,OAAO,EAAEzD,QAAQ,IAC/Bb,cAAM,CAACW,OAA2B;IAEtC,OAAOX,cAAM,CAACC,MAAM,CAAC;MACjBC,EAAE,EAAEF,cAAM,CAACG,MAAM;MACjBC,YAAY,EAAEJ,cAAM,CAACG,MAAM;MAC3BE,GAAG,EAAEL,cAAM,CAACG,MAAM;MAClBG,QAAQ,EAAEN,cAAM,CAACO,GAAG;MACpBC,cAAc,EAAER,cAAM,CAACO,GAAG;MAC1BE,KAAK,EAAET,cAAM,CAACU,cAAc,CAACD,KAAK,CAAC;MACnCG,MAAM,EAAEZ,cAAM,CAACU,cAAc,CAACE,MAAM,CAAC;MACrCC,QAAQ,EAAEb,cAAM,CAACU,cAAc,CAACG,QAAQ,CAAC;MACzCC,KAAK,EAAEC,qBAAW;MAClBC,IAAI,EAAE,IAAAC,aAAK,EAAC,GAAG,CAAC;MAChBC,UAAU,EAAElB,cAAM,CAACmB;KACtB,CAAC;EACN,CAAC;EAED,MAAMoD,oBAAoB,GAAGA,CACzBrC,OAAgB,EAChBoC,OAAoC,KAIpC;IACA,MAAME,SAAS,GAAGH,oBAAoB,CAACC,OAAO,CAAC;IAC/C,MAAMG,UAAU,GAAGzE,cAAM,CAACqB,KAAK,CAACmD,SAAS,CAAC;IAC1C;IACA;IACA,OAAOE,cAAM,CAACC,MAAM,CAChBpC,cAAM,CAACC,GAAG,CAAC,aAAS;MAChB,MAAMoC,IAAI,GAAG,OAAOnC,GAAG;;;;;2BAKZA,GAAG,CAAC/C,MAAM,CAACE,WAAW,CAAC;2BACvB6C,GAAG,CAAC/C,MAAM,CAACI,cAAc,CAAC;2BAC1B2C,GAAG,CAAC/C,MAAM,CAACG,QAAQ,CAAC;sCACTqC,OAAO,CAAChC,EAAE;;iBAE/B,CAACuB,IAAI,CACFc,cAAM,CAACM,QAAQ,CACXgC,qCAAoB,CAACC,OAAO,CAAC,sBAAsB,CAAC,CACvD,CACJ;MACD,MAAMC,OAAO,GAAG,OAAO/E,cAAM,CAAC4C,mBAAmB,CAAC6B,UAAU,CAAC,CACzDG,IAAI,CACP,CAACnD,IAAI,CACFc,cAAM,CAACM,QAAQ,CACXC,sCAAqB,CAACC,IAAI,CAAC,sBAAsB,CAAC,CACrD,CACJ;MACD,OAAO2B,cAAM,CAACM,YAAY,CAACD,OAAO,CAAC;IACvC,CAAC,CAAC,CACL;EACL,CAAC;EAED,MAAME,UAAU,GAAG1C,cAAM,CAAC2C,UAAU,CAAC,WAAWhD,OAAgB;IAC5D,MAAMiD,CAAC,GAAG,OAAO1C,GAAG;6CACiBA,GAAG,CAAC/C,MAAM,CAACI,cAAc,CAAC;kCACrCoC,OAAO,CAAChC,EAAE;aAC/B,CAACuB,IAAI,CAACc,cAAM,CAACM,QAAQ,CAACgC,qCAAoB,CAACC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC;IACvE,MAAMnG,CAAC,GAAG,OAAOqB,cAAM,CAAC4C,mBAAmB,CAACtB,WAAW,CAAC,CAAC6D,CAAC,CAAC,CAAC1D,IAAI,CAC5Dc,cAAM,CAACM,QAAQ,CAACC,sCAAqB,CAACC,IAAI,CAAC,YAAY,CAAC,CAAC,CAC5D;IACD,OAAOpE,CAAC,GAAG,CAAC;EAChB,CAAC,CAAC;EAEF,MAAMyG,kBAAkB,GAAG7C,cAAM,CAAC2C,UAAU,CAAC,WAAW7C,IAAY;IAChE,MAAM1D,CAAC,GAAG,OAAO8D,GAAG;gCACIA,GAAG,CAAC/C,MAAM,CAACG,QAAQ,CAAC;oDACAwC,IAAI;;;aAG3C,CAACZ,IAAI,CACNc,cAAM,CAACM,QAAQ,CAACgC,qCAAoB,CAACC,OAAO,CAAC,oBAAoB,CAAC,CAAC,CACtE;IACD,MAAMO,CAAC,GAAG,OAAOrF,cAAM,CAAC4C,mBAAmB,CAACb,kBAAkB,CAAC,CAACpD,CAAC,CAAC,CAAC8C,IAAI,CACnEc,cAAM,CAACM,QAAQ,CAACC,sCAAqB,CAACC,IAAI,CAAC,oBAAoB,CAAC,CAAC,CACpE;IACD,OAAOuC,aAAC,CAACC,IAAI,CAACF,CAAC,CAAC;EACpB,CAAC,CAAC;EAEF,MAAMG,cAAc,GAAGjD,cAAM,CAACC,GAAG,CAAC,aAAS;IACvC,MAAMiD,OAAO,GAAG,OAAOhD,GAAG;4BACNA,GAAG,CAAC/C,MAAM,CAACG,QAAQ,CAAC;SACvC,CAAC4B,IAAI,CAACc,cAAM,CAACM,QAAQ,CAACgC,qCAAoB,CAACC,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC;IACvE,OAAO,OAAO9E,cAAM,CAAC4C,mBAAmB,CAACb,kBAAkB,CAAC,CACxD0D,OAAO,CACV,CAAChE,IAAI,CAACc,cAAM,CAACM,QAAQ,CAACC,sCAAqB,CAACC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC;EACzE,CAAC,CAAC;EAEF,MAAM2C,oBAAoB,GAAGnD,cAAM,CAACC,GAAG,CAAC,aAAS;IAC7C,MAAMiD,OAAO,GAAG,OAAOhD,GAAG;4BACNA,GAAG,CAAC/C,MAAM,CAACI,cAAc,CAAC;SAC7C,CAAC2B,IAAI,CACFc,cAAM,CAACM,QAAQ,CACXgC,qCAAoB,CAACC,OAAO,CAAC,sBAAsB,CAAC,CACvD,CACJ;IACD,OAAO,OAAO9E,cAAM,CAAC4C,mBAAmB,CAACX,oBAAoB,CAAC,CAC1DwD,OAAO,CACV,CAAChE,IAAI,CACFc,cAAM,CAACM,QAAQ,CAACC,sCAAqB,CAACC,IAAI,CAAC,sBAAsB,CAAC,CAAC,CACtE;EACL,CAAC,CAAC;EAEF,MAAM4C,iBAAiB,GAAGpD,cAAM,CAACC,GAAG,CAAC,aAAS;IAC1C,MAAMiD,OAAO,GAAG,OAAOhD,GAAG;4BACNA,GAAG,CAAC/C,MAAM,CAACE,WAAW,CAAC;SAC1C,CAAC6B,IAAI,CACFc,cAAM,CAACM,QAAQ,CAACgC,qCAAoB,CAACC,OAAO,CAAC,mBAAmB,CAAC,CAAC,CACrE;IACD,OAAO,OAAO9E,cAAM,CAAC4C,mBAAmB,CAACxB,iBAAiB,CAAC,CACvDqE,OAAO,CACV,CAAChE,IAAI,CACFc,cAAM,CAACM,QAAQ,CAACC,sCAAqB,CAACC,IAAI,CAAC,mBAAmB,CAAC,CAAC,CACnE;EACL,CAAC,CAAC;EAEF,MAAM6C,kBAAkB,GAAGrD,cAAM,CAAC2C,UAAU,CAAC,WAAW7C,IAAY;IAChE,MAAMuC,IAAI,GAAG,OAAOnC,GAAG;;mBAEZA,GAAG,CAAC/C,MAAM,CAACG,QAAQ,CAAC;gDACSwC,IAAI;;;SAG3C,CAACZ,IAAI,CACFc,cAAM,CAACM,QAAQ,CAACgC,qCAAoB,CAACC,OAAO,CAAC,oBAAoB,CAAC,CAAC,CACtE;IACD,MAAMe,IAAI,GAAG,OAAO7F,cAAM,CAAC4C,mBAAmB,CAACb,kBAAkB,CAAC,CAC9D6C,IAAI,CACP,CAACnD,IAAI,CACFc,cAAM,CAACM,QAAQ,CAACC,sCAAqB,CAACC,IAAI,CAAC,oBAAoB,CAAC,CAAC,CACpE;IACD,OAAOuC,aAAC,CAACC,IAAI,CAACM,IAAI,CAAC,CAACpE,IAAI,CACpBqE,cAAM,CAACC,OAAO,CAACC,GAAG,IAAIF,cAAM,CAACG,aAAa,CAACD,GAAG,CAACE,IAAI,CAAC,CAAC,CACxD;EACL,CAAC,CAAC;EAEF,MAAMC,yBAAyB,GAAI9D,IAAY,IAC3CI,GAAG,CACEC,eAAe,CACZH,cAAM,CAACC,GAAG,CAAC,aAAS;IAChB,MAAM4D,UAAU,GAAG,OAAO3D,GAAG;;2BAEtBA,GAAG,CAAC/C,MAAM,CAACG,QAAQ,CAAC;oDACKwC,IAAI;;;iBAGvC,CAACZ,IAAI,CACEc,cAAM,CAACM,QAAQ,CACXgC,qCAAoB,CAACC,OAAO,CACxB,2BAA2B,CAC9B,CACJ,CACJ;IAED,MAAMuB,OAAO,GAAG,OAAOrG,cAAM,CAAC4C,mBAAmB,CAC7Cb,kBAAkB,CACrB,CAACqE,UAAU,CAAC,CAAC3E,IAAI,CACdc,cAAM,CAACM,QAAQ,CACXC,sCAAqB,CAACC,IAAI,CACtB,2BAA2B,CAC9B,CACJ,CACJ;IAED,MAAMI,QAAQ,GAAGmC,aAAC,CAACC,IAAI,CAACc,OAAO,CAAC;IAChC,IAAIP,cAAM,CAACQ,MAAM,CAACnD,QAAQ,CAAC,EAAE;MACzB,OAAOA,QAAQ,CAACoD,KAAK;IACzB;IAEA,MAAMC,WAAW,GAAG,OAAO/D,GAAG;kCAChBA,GAAG,CAAC/C,MAAM,CAACG,QAAQ,CAAC;sBAChC4C,GAAG,CAACqB,MAAM,CAAC;MAACzB;IAAI,CAAC,CAAC;;iBAEvB,CAACZ,IAAI,CACEc,cAAM,CAACM,QAAQ,CACXkB,qCAAoB,CAAChB,IAAI,CACrB,2BAA2B,CAC9B,CACJ,CACJ;IAED,MAAM0D,QAAQ,GAAG,OAAOzG,cAAM,CAAC4C,mBAAmB,CAC9Cb,kBAAkB,CACrB,CAACyE,WAAW,CAAC,CAAC/E,IAAI,CACfc,cAAM,CAACM,QAAQ,CACXC,sCAAqB,CAACC,IAAI,CACtB,2BAA2B,CAC9B,CACJ,CACJ;IAED,OAAO,OAAOR,cAAM,CAACmE,UAAU,CAACpB,aAAC,CAACC,IAAI,CAACkB,QAAQ,CAAC,CAAC,CAAChF,IAAI,CAClDc,cAAM,CAACM,QAAQ,CACX,MAAM,IAAI8D,kCAAiB,CAAC;MAACC,aAAa,EAAEvE;IAAI,CAAC,CAAC,CACrD,CACJ;EACL,CAAC,CAAC,CACL,CACAZ,IAAI,CACDc,cAAM,CAAC2B,QAAQ,CAAC,UAAU,EAAE1F,CAAC,IACzB+D,cAAM,CAAC4B,IAAI,CACPU,qCAAoB,CAACC,OAAO,CACxB,2BAA2B,CAC9B,CAACtG,CAAC,CAAC,CACP,CACJ,CACJ;EAET,MAAMqI,UAAU,GAAGA,CAAC;IAACxE,IAAI;IAAEyE,IAAI,GAAG;EAAC,CAAgC,KAC/DrE,GAAG,CACEC,eAAe,CACZH,cAAM,CAACC,GAAG,CAAC,aAAS;IAChB,MAAMuE,GAAG,GAAG,OAAOtE,GAAG;;2BAEfA,GAAG,CAAC/C,MAAM,CAACG,QAAQ,CAAC;wDACSwC,IAAI;;sCAEtByE,IAAI;iBACzB,CAACrF,IAAI,CACEc,cAAM,CAACM,QAAQ,CACXgC,qCAAoB,CAACC,OAAO,CAAC,YAAY,CAAC,CAC7C,CACJ;IAED,MAAMkC,aAAa,GAAG,OAAOhH,cAAM,CAAC4C,mBAAmB,CACnDb,kBAAkB,CACrB,CAACgF,GAAG,CAAC,CAACtF,IAAI,CACPc,cAAM,CAACM,QAAQ,CACXC,sCAAqB,CAACC,IAAI,CAAC,YAAY,CAAC,CAC3C,CACJ;IAED,IAAIiE,aAAa,CAAC1D,MAAM,KAAK,CAAC,EAAE;MAC5B;IACJ;IAEA,MAAM2D,GAAG,GAAGD,aAAa,CAAC/C,GAAG,CAACtF,CAAC,IAAIA,CAAC,CAACuB,EAAE,CAAC;IAExC,OAAOuC,GAAG;kCACIA,GAAG,CAAC/C,MAAM,CAACI,cAAc,CAAC;uCACrB2C,GAAG,CAACyE,EAAE,CAACD,GAAG,CAAC;iBACjC,CAACxF,IAAI,CACEc,cAAM,CAACM,QAAQ,CACXkB,qCAAoB,CAAChB,IAAI,CAAC,YAAY,CAAC,CAC1C,CACJ;IAED,OAAON,GAAG;kCACIA,GAAG,CAAC/C,MAAM,CAACG,QAAQ,CAAC;kCACpB4C,GAAG,CAACyE,EAAE,CAACD,GAAG,CAAC;iBAC5B,CAACxF,IAAI,CACEc,cAAM,CAACM,QAAQ,CACXkB,qCAAoB,CAAChB,IAAI,CAAC,YAAY,CAAC,CAC1C,CACJ;IAED,OAAON,GAAG;kCACIA,GAAG,CAAC/C,MAAM,CAACE,WAAW,CAAC;;0DAEC6C,GAAG,CAAC/C,MAAM,CAACI,cAAc,CAAC;;iBAEnE,CAAC2B,IAAI,CACEc,cAAM,CAACM,QAAQ,CACXkB,qCAAoB,CAAChB,IAAI,CAAC,YAAY,CAAC,CAC1C,CACJ;IAED,OAAOoE,eAAO,CAACC,GAAG,CAAC,0BAA0B,CAAC;EAClD,CAAC,CAAC,CACL,CACA3F,IAAI,CACDc,cAAM,CAAC2B,QAAQ,CAAC,UAAU,EAAE1F,CAAC,IACzB+D,cAAM,CAAC4B,IAAI,CAACJ,qCAAoB,CAAChB,IAAI,CAAC,YAAY,CAAC,CAACvE,CAAC,CAAC,CAAC,CAC1D,CACJ;EAET,MAAM6I,0BAA0B,GAAGA,CAAC;IAAChF;EAAI,CAAiB,KACtDI,GAAG,CACEC,eAAe,CACZH,cAAM,CAACC,GAAG,CAAC,aAAS;IAChB,MAAM4D,UAAU,GAAG,OAAO3D,GAAG;;2BAEtBA,GAAG,CAAC/C,MAAM,CAACG,QAAQ,CAAC;oDACKwC,IAAI;;;iBAGvC,CAACZ,IAAI,CACEc,cAAM,CAACM,QAAQ,CACXgC,qCAAoB,CAACC,OAAO,CACxB,4BAA4B,CAC/B,CACJ,CACJ;IAED,MAAMuB,OAAO,GAAG,OAAOrG,cAAM,CAAC4C,mBAAmB,CAC7Cb,kBAAkB,CACrB,CAACqE,UAAU,CAAC,CAAC3E,IAAI,CACdc,cAAM,CAACM,QAAQ,CACXC,sCAAqB,CAACC,IAAI,CACtB,4BAA4B,CAC/B,CACJ,CACJ;IAED,MAAMuE,cAAc,GAAGhC,aAAC,CAACC,IAAI,CAACc,OAAO,CAAC;IACtC,IAAIP,cAAM,CAACyB,MAAM,CAACD,cAAc,CAAC,EAAE;MAC/B;IACJ;IAEA,OAAO7E,GAAG;kCACIA,GAAG,CAAC/C,MAAM,CAACI,cAAc,CAAC;sCACtBwH,cAAc,CAACf,KAAK,CAACrG,EAAE;iBAC5C,CAACuB,IAAI,CACEc,cAAM,CAACM,QAAQ,CACXkB,qCAAoB,CAAChB,IAAI,CACrB,4BAA4B,CAC/B,CACJ,CACJ;IAED,OAAON,GAAG;kCACIA,GAAG,CAAC/C,MAAM,CAACE,WAAW,CAAC;;0DAEC6C,GAAG,CAAC/C,MAAM,CAACI,cAAc,CAAC;;iBAEnE,CAAC2B,IAAI,CACEc,cAAM,CAACM,QAAQ,CACXkB,qCAAoB,CAAChB,IAAI,CACrB,4BAA4B,CAC/B,CACJ,CACJ;EACL,CAAC,CAAC,CACL,CACAtB,IAAI,CACDc,cAAM,CAAC2B,QAAQ,CAAC,UAAU,EAAE1F,CAAC,IACzB+D,cAAM,CAAC4B,IAAI,CACPJ,qCAAoB,CAAChB,IAAI,CAAC,4BAA4B,CAAC,CACnDvE,CAAC,CACJ,CACJ,CACJ,CACJ;EAET,MAAMgJ,oBAAoB,GAAGjF,cAAM,CAAC2C,UAAU,CAAC,WAAW;IACtD7C,IAAI;IACJ6D;EAAI,CAIP;IACG,MAAMuB,qBAAqB,GAAG,OAAOzH,cAAM,CAAC4C,mBAAmB,CAC3DtB,WAAW,CACd,CACG,OAAOmB,GAAG;iDAC2BA,GAAG,CAAC/C,MAAM,CAACI,cAAc,CAAC;;;+BAG5C2C,GAAG,CAAC/C,MAAM,CAACG,QAAQ,CAAC;wDACKwC,IAAI;;iBAE3C,CAACZ,IAAI,CACNc,cAAM,CAACM,QAAQ,CACXgC,qCAAoB,CAACC,OAAO,CAAC,sBAAsB,CAAC,CACvD,CACJ,CACJ,CAACrD,IAAI,CACFc,cAAM,CAACM,QAAQ,CAACC,sCAAqB,CAACC,IAAI,CAAC,sBAAsB,CAAC,CAAC,CACtE;IAED,IAAI0E,qBAAqB,KAAK,CAAC,EAAE;MAC7B,OAAON,eAAO,CAACC,GAAG,CACd,iDAAiD,CACpD;MACD;IACJ;IAEA,OAAO3E,GAAG;yBACOA,GAAG,CAAC/C,MAAM,CAACG,QAAQ,CAAC;6BAChBqG,IAAI;;;2BAGNzD,GAAG,CAAC/C,MAAM,CAACG,QAAQ,CAAC;oDACKwC,IAAI;;aAE3C,CAACZ,IAAI,CACNc,cAAM,CAACM,QAAQ,CAACkB,qCAAoB,CAAChB,IAAI,CAAC,sBAAsB,CAAC,CAAC,CACrE;IAED,OAAON,GAAG;8BACYA,GAAG,CAAC/C,MAAM,CAACG,QAAQ,CAAC;kBAChC4C,GAAG,CAACqB,MAAM,CAAC;MAACzB;IAAI,CAAC,CAAC;aACvB,CAACZ,IAAI,CACNc,cAAM,CAACM,QAAQ,CAACkB,qCAAoB,CAAChB,IAAI,CAAC,sBAAsB,CAAC,CAAC,CACrE;IAED,OAAOoE,eAAO,CAACC,GAAG,CAAC,oBAAoB,CAAC;EAC5C,CAAC,CAAC;EAEF,MAAMM,OAAO,GAAwB;IACjCb,UAAU;IACVQ,0BAA0B;IAC1BG,oBAAoB;IACpB7B,iBAAiB;IACjBH,cAAc;IACdW,yBAAyB;IACzBP,kBAAkB;IAClBR,kBAAkB;IAClBb,oBAAoB;IACpBU,UAAU;IACVb,gBAAgB;IAChBf,iBAAiB;IACjBqC;GACH;EAED,OAAOgC,OAAO;AAClB,CAAC,CAAC","ignoreList":[]}
@@ -10,8 +10,14 @@ var _common = /*#__PURE__*/require("./common.js");
10
10
  var _DisplayConfig = /*#__PURE__*/require("./DisplayConfig.js");
11
11
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
12
12
  const columns = [{
13
+ name: 'testCases',
14
+ label: 'cases',
15
+ make: ({
16
+ stats
17
+ }) => [stats.testCases.toString()]
18
+ }, {
13
19
  name: 'total',
14
- label: '∑',
20
+ label: 'results',
15
21
  make: ({
16
22
  stats
17
23
  }) => [stats.total.toString()]
@@ -91,7 +97,7 @@ const columns = [{
91
97
  const showStats = ({
92
98
  testRun,
93
99
  displayConfig,
94
- selectColumns = ['total', 'TP', 'TN', 'FP', 'FN', 'precision', 'recall', 'timeMean', 'timeMedian']
100
+ selectColumns = ['testCases', 'total', 'TP', 'TN', 'FP', 'FN', 'precision', 'recall', 'timeMean', 'timeMedian']
95
101
  }) => {
96
102
  const cfg = {
97
103
  ...(0, _DisplayConfig.makeDefault)(),
@@ -1 +1 @@
1
- {"version":3,"file":"stats.js","names":["_ansiColors","_interopRequireDefault","require","_effect","_common","_DisplayConfig","e","__esModule","default","columns","name","label","make","stats","total","toString","colorPositive","TP","TN","colorNegative","FP","FN","precision","toFixed","recall","timeMin","pipe","Option","match","onSome","n","onNone","timeMax","timeMean","timeMedian","showStats","testRun","displayConfig","selectColumns","cfg","makeDefault","_columns","filter","c","includes","row","map","columnWidths","m","i","Math","max","length","s","colors","unstyle","header","showHeader","showTitle","bold","showBorder","height","showRow","exports"],"sources":["../../../src/internal/stats.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"stats.js","names":["_ansiColors","_interopRequireDefault","require","_effect","_common","_DisplayConfig","e","__esModule","default","columns","name","label","make","stats","testCases","toString","total","colorPositive","TP","TN","colorNegative","FP","FN","precision","toFixed","recall","timeMin","pipe","Option","match","onSome","n","onNone","timeMax","timeMean","timeMedian","showStats","testRun","displayConfig","selectColumns","cfg","makeDefault","_columns","filter","c","includes","row","map","columnWidths","m","i","Math","max","length","s","colors","unstyle","header","showHeader","showTitle","bold","showBorder","height","showRow","exports"],"sources":["../../../src/internal/stats.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}