@creative-introvert/tons-of-tests 1.1.1 → 2.0.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.
- package/README.md +62 -1
- package/dist/cjs/Classify.js +13 -31
- package/dist/cjs/Classify.js.map +1 -1
- package/dist/cjs/DisplayConfig.js +2 -20
- package/dist/cjs/DisplayConfig.js.map +1 -1
- package/dist/cjs/RepositoryError.js +4 -5
- package/dist/cjs/RepositoryError.js.map +1 -1
- package/dist/cjs/Test.js +2 -20
- package/dist/cjs/Test.js.map +1 -1
- package/dist/cjs/Test.repository.js +3 -21
- package/dist/cjs/Test.repository.js.map +1 -1
- package/dist/cjs/Test.repository.types.js.map +1 -1
- package/dist/cjs/index.js +2 -20
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/internal/Classify.js +2 -2
- package/dist/cjs/internal/Classify.js.map +1 -1
- package/dist/cjs/internal/Test.js +43 -53
- package/dist/cjs/internal/Test.js.map +1 -1
- package/dist/cjs/internal/Test.repository.sqlite.js +41 -59
- package/dist/cjs/internal/Test.repository.sqlite.js.map +1 -1
- package/dist/cjs/internal/common.js +1 -5
- package/dist/cjs/internal/common.js.map +1 -1
- package/dist/cjs/internal/diff.js +1 -5
- package/dist/cjs/internal/diff.js.map +1 -1
- package/dist/cjs/internal/format-diff.js +2 -6
- package/dist/cjs/internal/format-diff.js.map +1 -1
- package/dist/cjs/internal/lib/Schema.js +3 -3
- package/dist/cjs/internal/lib/Schema.js.map +1 -1
- package/dist/cjs/internal/lib/jsondiffpatch/contexts/diff.js +1 -5
- package/dist/cjs/internal/lib/jsondiffpatch/contexts/diff.js.map +1 -1
- package/dist/cjs/internal/lib/jsondiffpatch/contexts/patch.js +1 -5
- package/dist/cjs/internal/lib/jsondiffpatch/contexts/patch.js.map +1 -1
- package/dist/cjs/internal/lib/jsondiffpatch/contexts/reverse.js +1 -5
- package/dist/cjs/internal/lib/jsondiffpatch/contexts/reverse.js.map +1 -1
- package/dist/cjs/internal/lib/jsondiffpatch/diffpatcher.js +3 -25
- package/dist/cjs/internal/lib/jsondiffpatch/diffpatcher.js.map +1 -1
- package/dist/cjs/internal/lib/jsondiffpatch/filters/arrays.js +1 -5
- package/dist/cjs/internal/lib/jsondiffpatch/filters/arrays.js.map +1 -1
- package/dist/cjs/internal/lib/jsondiffpatch/filters/nested.js +1 -5
- package/dist/cjs/internal/lib/jsondiffpatch/filters/nested.js.map +1 -1
- package/dist/cjs/internal/lib/jsondiffpatch/formatters/annotated.js +1 -5
- package/dist/cjs/internal/lib/jsondiffpatch/formatters/annotated.js.map +1 -1
- package/dist/cjs/internal/lib/jsondiffpatch/formatters/html.js +1 -5
- package/dist/cjs/internal/lib/jsondiffpatch/formatters/html.js.map +1 -1
- package/dist/cjs/internal/lib/jsondiffpatch/formatters/jsonpatch.js +1 -5
- package/dist/cjs/internal/lib/jsondiffpatch/formatters/jsonpatch.js.map +1 -1
- package/dist/cjs/internal/lib/jsondiffpatch/index.js +1 -5
- package/dist/cjs/internal/lib/jsondiffpatch/index.js.map +1 -1
- package/dist/cjs/internal/lib/jsondiffpatch/with-text-diffs.js +1 -5
- package/dist/cjs/internal/lib/jsondiffpatch/with-text-diffs.js.map +1 -1
- package/dist/cjs/internal/pack.js +28 -50
- package/dist/cjs/internal/pack.js.map +1 -1
- package/dist/cjs/internal/stats.js +1 -5
- package/dist/cjs/internal/stats.js.map +1 -1
- package/dist/cjs/internal/summarize.js +1 -5
- package/dist/cjs/internal/summarize.js.map +1 -1
- package/dist/cjs/package.json +1 -0
- package/dist/dts/Classify.d.ts +20 -57
- package/dist/dts/Classify.d.ts.map +1 -1
- package/dist/dts/DisplayConfig.d.ts +2 -1
- package/dist/dts/DisplayConfig.d.ts.map +1 -1
- package/dist/dts/RepositoryError.d.ts +21 -22
- package/dist/dts/RepositoryError.d.ts.map +1 -1
- package/dist/dts/Test.d.ts +10 -17
- package/dist/dts/Test.d.ts.map +1 -1
- package/dist/dts/Test.repository.d.ts +4 -4
- package/dist/dts/Test.repository.d.ts.map +1 -1
- package/dist/dts/Test.repository.types.d.ts +10 -20
- package/dist/dts/Test.repository.types.d.ts.map +1 -1
- package/dist/dts/internal/Classify.d.ts +1 -1
- package/dist/dts/internal/Classify.d.ts.map +1 -1
- package/dist/dts/internal/Test.d.ts +13 -6
- package/dist/dts/internal/Test.d.ts.map +1 -1
- package/dist/dts/internal/Test.repository.sqlite.d.ts +2 -2
- package/dist/dts/internal/Test.repository.sqlite.d.ts.map +1 -1
- package/dist/dts/internal/lib/Schema.d.ts +2 -2
- package/dist/dts/internal/lib/Schema.d.ts.map +1 -1
- package/dist/dts/internal/lib/jsondiffpatch/filters/lcs.d.ts +2 -1
- package/dist/dts/internal/lib/jsondiffpatch/filters/lcs.d.ts.map +1 -1
- package/dist/dts/internal/pack.d.ts.map +1 -1
- package/dist/esm/Classify.js +23 -50
- package/dist/esm/Classify.js.map +1 -1
- package/dist/esm/DisplayConfig.js +2 -28
- package/dist/esm/DisplayConfig.js.map +1 -1
- package/dist/esm/RepositoryError.js +13 -24
- package/dist/esm/RepositoryError.js.map +1 -1
- package/dist/esm/Show.js +3 -26
- package/dist/esm/Show.js.map +1 -1
- package/dist/esm/Test.js +5 -31
- package/dist/esm/Test.js.map +1 -1
- package/dist/esm/Test.repository.js +8 -41
- package/dist/esm/Test.repository.js.map +1 -1
- package/dist/esm/Test.repository.types.js +5 -12
- package/dist/esm/Test.repository.types.js.map +1 -1
- package/dist/esm/index.js +7 -45
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/internal/Classify.js +16 -31
- package/dist/esm/internal/Classify.js.map +1 -1
- package/dist/esm/internal/DisplayConfig.js +1 -8
- package/dist/esm/internal/DisplayConfig.js.map +1 -1
- package/dist/esm/internal/Test.js +72 -92
- package/dist/esm/internal/Test.js.map +1 -1
- package/dist/esm/internal/Test.repository.sqlite.js +111 -142
- package/dist/esm/internal/Test.repository.sqlite.js.map +1 -1
- package/dist/esm/internal/common.js +15 -28
- package/dist/esm/internal/common.js.map +1 -1
- package/dist/esm/internal/diff.js +18 -30
- package/dist/esm/internal/diff.js.map +1 -1
- package/dist/esm/internal/format-diff.js +9 -22
- package/dist/esm/internal/format-diff.js.map +1 -1
- package/dist/esm/internal/lib/Schema.js +4 -11
- package/dist/esm/internal/lib/Schema.js.map +1 -1
- package/dist/esm/internal/lib/jsondiffpatch/clone.js +1 -7
- package/dist/esm/internal/lib/jsondiffpatch/clone.js.map +1 -1
- package/dist/esm/internal/lib/jsondiffpatch/contexts/context.js +1 -8
- package/dist/esm/internal/lib/jsondiffpatch/contexts/context.js.map +1 -1
- package/dist/esm/internal/lib/jsondiffpatch/contexts/diff.js +5 -16
- package/dist/esm/internal/lib/jsondiffpatch/contexts/diff.js.map +1 -1
- package/dist/esm/internal/lib/jsondiffpatch/contexts/patch.js +3 -14
- package/dist/esm/internal/lib/jsondiffpatch/contexts/patch.js.map +1 -1
- package/dist/esm/internal/lib/jsondiffpatch/contexts/reverse.js +3 -14
- package/dist/esm/internal/lib/jsondiffpatch/contexts/reverse.js.map +1 -1
- package/dist/esm/internal/lib/jsondiffpatch/date-reviver.js +1 -7
- package/dist/esm/internal/lib/jsondiffpatch/date-reviver.js.map +1 -1
- package/dist/esm/internal/lib/jsondiffpatch/diffpatcher.js +20 -51
- package/dist/esm/internal/lib/jsondiffpatch/diffpatcher.js.map +1 -1
- package/dist/esm/internal/lib/jsondiffpatch/filters/arrays.js +16 -28
- package/dist/esm/internal/lib/jsondiffpatch/filters/arrays.js.map +1 -1
- package/dist/esm/internal/lib/jsondiffpatch/filters/dates.js +1 -7
- package/dist/esm/internal/lib/jsondiffpatch/filters/dates.js.map +1 -1
- package/dist/esm/internal/lib/jsondiffpatch/filters/lcs.js +1 -7
- package/dist/esm/internal/lib/jsondiffpatch/filters/lcs.js.map +1 -1
- package/dist/esm/internal/lib/jsondiffpatch/filters/nested.js +13 -27
- package/dist/esm/internal/lib/jsondiffpatch/filters/nested.js.map +1 -1
- package/dist/esm/internal/lib/jsondiffpatch/filters/texts.js +3 -9
- package/dist/esm/internal/lib/jsondiffpatch/filters/texts.js.map +1 -1
- package/dist/esm/internal/lib/jsondiffpatch/filters/trivial.js +3 -9
- package/dist/esm/internal/lib/jsondiffpatch/filters/trivial.js.map +1 -1
- package/dist/esm/internal/lib/jsondiffpatch/formatters/annotated.js +4 -16
- package/dist/esm/internal/lib/jsondiffpatch/formatters/annotated.js.map +1 -1
- package/dist/esm/internal/lib/jsondiffpatch/formatters/base.js +1 -7
- package/dist/esm/internal/lib/jsondiffpatch/formatters/base.js.map +1 -1
- package/dist/esm/internal/lib/jsondiffpatch/formatters/html.js +6 -21
- package/dist/esm/internal/lib/jsondiffpatch/formatters/html.js.map +1 -1
- package/dist/esm/internal/lib/jsondiffpatch/formatters/jsonpatch.js +6 -20
- package/dist/esm/internal/lib/jsondiffpatch/formatters/jsonpatch.js.map +1 -1
- package/dist/esm/internal/lib/jsondiffpatch/index.js +15 -42
- package/dist/esm/internal/lib/jsondiffpatch/index.js.map +1 -1
- package/dist/esm/internal/lib/jsondiffpatch/pipe.js +1 -7
- package/dist/esm/internal/lib/jsondiffpatch/pipe.js.map +1 -1
- package/dist/esm/internal/lib/jsondiffpatch/processor.js +1 -7
- package/dist/esm/internal/lib/jsondiffpatch/processor.js.map +1 -1
- package/dist/esm/internal/lib/jsondiffpatch/types.js +1 -6
- package/dist/esm/internal/lib/jsondiffpatch/with-text-diffs.js +22 -49
- package/dist/esm/internal/lib/jsondiffpatch/with-text-diffs.js.map +1 -1
- package/dist/esm/internal/pack.js +26 -55
- package/dist/esm/internal/pack.js.map +1 -1
- package/dist/esm/internal/stats.js +21 -33
- package/dist/esm/internal/stats.js.map +1 -1
- package/dist/esm/internal/summarize.js +29 -37
- package/dist/esm/internal/summarize.js.map +1 -1
- package/package.json +11 -9
- package/dist/cjs/Error.js +0 -10
- package/dist/cjs/Error.js.map +0 -1
- package/dist/cjs/internal/Classify.spec.js +0 -223
- package/dist/cjs/internal/Classify.spec.js.map +0 -1
- package/dist/cjs/internal/Test.repository.sqlite.spec.js +0 -294
- package/dist/cjs/internal/Test.repository.sqlite.spec.js.map +0 -1
- package/dist/cjs/internal/Test.spec.js +0 -205
- package/dist/cjs/internal/Test.spec.js.map +0 -1
- package/dist/cjs/internal/format-diff.spec.js +0 -103
- package/dist/cjs/internal/format-diff.spec.js.map +0 -1
- package/dist/cjs/pack.js +0 -28
- package/dist/cjs/pack.js.map +0 -1
- package/dist/dts/Error.d.ts +0 -10
- package/dist/dts/Error.d.ts.map +0 -1
- package/dist/dts/internal/Classify.spec.d.ts +0 -2
- package/dist/dts/internal/Classify.spec.d.ts.map +0 -1
- package/dist/dts/internal/Test.repository.sqlite.spec.d.ts +0 -2
- package/dist/dts/internal/Test.repository.sqlite.spec.d.ts.map +0 -1
- package/dist/dts/internal/Test.spec.d.ts +0 -2
- package/dist/dts/internal/Test.spec.d.ts.map +0 -1
- package/dist/dts/internal/format-diff.spec.d.ts +0 -2
- package/dist/dts/internal/format-diff.spec.d.ts.map +0 -1
- package/dist/dts/pack.d.ts +0 -2
- package/dist/dts/pack.d.ts.map +0 -1
- package/dist/esm/Error.js +0 -10
- package/dist/esm/Error.js.map +0 -1
- package/dist/esm/internal/Classify.spec.js +0 -223
- package/dist/esm/internal/Classify.spec.js.map +0 -1
- package/dist/esm/internal/Test.repository.sqlite.spec.js +0 -294
- package/dist/esm/internal/Test.repository.sqlite.spec.js.map +0 -1
- package/dist/esm/internal/Test.spec.js +0 -205
- package/dist/esm/internal/Test.spec.js.map +0 -1
- package/dist/esm/internal/format-diff.spec.js +0 -103
- package/dist/esm/internal/format-diff.spec.js.map +0 -1
- package/dist/esm/pack.js +0 -28
- package/dist/esm/pack.js.map +0 -1
|
@@ -1,75 +1,44 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
}
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
}
|
|
11
|
-
});
|
|
12
|
-
exports.tables = exports.makeTestRepository = void 0;
|
|
13
|
-
var SqlClient = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("@effect/sql/SqlClient"));
|
|
14
|
-
var _effect = /*#__PURE__*/require("effect");
|
|
15
|
-
var _TestRepository = /*#__PURE__*/require("../Test.repository.js");
|
|
16
|
-
var _TestRepositoryTypes = /*#__PURE__*/require("../Test.repository.types.js");
|
|
17
|
-
var _RepositoryError = /*#__PURE__*/require("../RepositoryError.js");
|
|
18
|
-
var _Classify = /*#__PURE__*/require("./Classify.js");
|
|
19
|
-
var _Schema = /*#__PURE__*/require("./lib/Schema.js");
|
|
20
|
-
function _interopRequireWildcard(e, t) {
|
|
21
|
-
if ("function" == typeof WeakMap) var r = new WeakMap(),
|
|
22
|
-
n = new WeakMap();
|
|
23
|
-
return (_interopRequireWildcard = function (e, t) {
|
|
24
|
-
if (!t && e && e.__esModule) return e;
|
|
25
|
-
var o,
|
|
26
|
-
i,
|
|
27
|
-
f = {
|
|
28
|
-
__proto__: null,
|
|
29
|
-
default: e
|
|
30
|
-
};
|
|
31
|
-
if (null === e || "object" != typeof e && "function" != typeof e) return f;
|
|
32
|
-
if (o = t ? n : r) {
|
|
33
|
-
if (o.has(e)) return o.get(e);
|
|
34
|
-
o.set(e, f);
|
|
35
|
-
}
|
|
36
|
-
for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]);
|
|
37
|
-
return f;
|
|
38
|
-
})(e, t);
|
|
39
|
-
}
|
|
40
|
-
const tables = exports.tables = {
|
|
1
|
+
import * as SqlClient from 'effect/sql/SqlClient';
|
|
2
|
+
import { Array as A, Console, Effect, Option, Schema, SchemaTransformation, Stream } from 'effect';
|
|
3
|
+
import { TestRepository } from '../Test.repository.js';
|
|
4
|
+
import { TestRun } from '../Test.repository.types.js';
|
|
5
|
+
export { TestRepository };
|
|
6
|
+
import { RepositoryDecodeError, RepositoryQueryError, RepositoryWriteError, TestRunNotCreated } from '../RepositoryError.js';
|
|
7
|
+
import { LabelSchema } from './Classify.js';
|
|
8
|
+
import { split } from './lib/Schema.js';
|
|
9
|
+
export const tables = {
|
|
41
10
|
testResults: 'test-results',
|
|
42
11
|
testRuns: 'test-runs',
|
|
43
12
|
testRunResults: 'test-run-results'
|
|
44
13
|
};
|
|
45
|
-
const TestResultWriteSchema = /*#__PURE__*/
|
|
46
|
-
id:
|
|
47
|
-
hashTestCase:
|
|
48
|
-
ordering:
|
|
49
|
-
input: /*#__PURE__*/
|
|
50
|
-
result: /*#__PURE__*/
|
|
51
|
-
expected: /*#__PURE__*/
|
|
52
|
-
label:
|
|
53
|
-
tags: /*#__PURE__*/
|
|
54
|
-
timeMillis:
|
|
14
|
+
const TestResultWriteSchema = /*#__PURE__*/Schema.Struct({
|
|
15
|
+
id: Schema.String,
|
|
16
|
+
hashTestCase: Schema.String,
|
|
17
|
+
ordering: Schema.Int,
|
|
18
|
+
input: /*#__PURE__*/Schema.fromJsonString(Schema.Unknown),
|
|
19
|
+
result: /*#__PURE__*/Schema.fromJsonString(Schema.Unknown),
|
|
20
|
+
expected: /*#__PURE__*/Schema.fromJsonString(Schema.Unknown),
|
|
21
|
+
label: LabelSchema,
|
|
22
|
+
tags: /*#__PURE__*/split(','),
|
|
23
|
+
timeMillis: Schema.Finite
|
|
55
24
|
});
|
|
56
|
-
const TestResultsSchema = /*#__PURE__*/
|
|
57
|
-
const CountSchema = /*#__PURE__*/
|
|
58
|
-
count:
|
|
59
|
-
})).pipe(/*#__PURE__*/
|
|
25
|
+
const TestResultsSchema = /*#__PURE__*/Schema.Array(TestResultWriteSchema);
|
|
26
|
+
const CountSchema = /*#__PURE__*/Schema.Tuple([Schema.Struct({
|
|
27
|
+
count: Schema.Int
|
|
28
|
+
})]).pipe(/*#__PURE__*/Schema.decodeTo(Schema.Int, /*#__PURE__*/SchemaTransformation.transform({
|
|
60
29
|
decode: ([{
|
|
61
30
|
count
|
|
62
31
|
}]) => count,
|
|
63
32
|
encode: count => [{
|
|
64
33
|
count
|
|
65
34
|
}]
|
|
35
|
+
})));
|
|
36
|
+
const TestRunsReadSchema = /*#__PURE__*/Schema.Array(TestRun);
|
|
37
|
+
const TestRunResultsSchema = /*#__PURE__*/Schema.Array(/*#__PURE__*/Schema.Struct({
|
|
38
|
+
testRun: Schema.Int,
|
|
39
|
+
testResult: Schema.String
|
|
66
40
|
}));
|
|
67
|
-
const
|
|
68
|
-
const TestRunResultsSchema = /*#__PURE__*/_effect.Schema.Array(/*#__PURE__*/_effect.Schema.Struct({
|
|
69
|
-
testRun: _effect.Schema.Int,
|
|
70
|
-
testResult: _effect.Schema.String
|
|
71
|
-
}));
|
|
72
|
-
const makeTestRepository = exports.makeTestRepository = /*#__PURE__*/_effect.Effect.gen(function* () {
|
|
41
|
+
export const makeTestRepository = /*#__PURE__*/Effect.gen(function* () {
|
|
73
42
|
const sql = yield* SqlClient.SqlClient;
|
|
74
43
|
yield* sql`PRAGMA auto_vacuum = FULL;`;
|
|
75
44
|
yield* sql`
|
|
@@ -118,16 +87,16 @@ const makeTestRepository = exports.makeTestRepository = /*#__PURE__*/_effect.Eff
|
|
|
118
87
|
// SQLite's default SQLITE_MAX_VARIABLE_NUMBER is 999; testResults has 9
|
|
119
88
|
// columns and junction rows 2, so 50 rows stays well under the limit.
|
|
120
89
|
const INSERT_BATCH_SIZE = 50;
|
|
121
|
-
const insertTestResults = (testResults, testRun) => sql.withTransaction(
|
|
90
|
+
const insertTestResults = (testResults, testRun) => sql.withTransaction(Effect.gen(function* () {
|
|
122
91
|
if (testResults.length === 0) return;
|
|
123
|
-
const encoded = yield*
|
|
92
|
+
const encoded = yield* Effect.forEach(testResults, _ => Schema.encodeEffect(TestResultWriteSchema)(_).pipe(Effect.mapError(RepositoryDecodeError.from('insertTestResults'))));
|
|
124
93
|
for (let i = 0; i < encoded.length; i += INSERT_BATCH_SIZE) {
|
|
125
94
|
const chunk = encoded.slice(i, i + INSERT_BATCH_SIZE);
|
|
126
95
|
yield* sql`
|
|
127
96
|
INSERT INTO ${sql(tables.testResults)}
|
|
128
97
|
${sql.insert(chunk)}
|
|
129
98
|
ON CONFLICT(id) DO NOTHING;
|
|
130
|
-
`.pipe(
|
|
99
|
+
`.pipe(Effect.mapError(RepositoryWriteError.from('insertTestResults')));
|
|
131
100
|
}
|
|
132
101
|
// Junction rows reference the resolved testRun.id directly,
|
|
133
102
|
// so no correlated subquery.
|
|
@@ -141,98 +110,101 @@ const makeTestRepository = exports.makeTestRepository = /*#__PURE__*/_effect.Eff
|
|
|
141
110
|
INSERT INTO ${sql(tables.testRunResults)}
|
|
142
111
|
${sql.insert(chunk)}
|
|
143
112
|
ON CONFLICT(testRun, testResult) DO NOTHING;
|
|
144
|
-
`.pipe(
|
|
113
|
+
`.pipe(Effect.mapError(RepositoryWriteError.from('insertTestResults')));
|
|
145
114
|
}
|
|
146
|
-
})).pipe(
|
|
115
|
+
})).pipe(Effect.catchTag('SqlError', e => Effect.fail(RepositoryWriteError.from('insertTestResults')(e))));
|
|
147
116
|
const insertTestResult = (testResult, testRun) => insertTestResults([testResult], testRun);
|
|
148
117
|
const makeTestResultSchema = schemas => {
|
|
149
|
-
const input = schemas?.input ??
|
|
150
|
-
const result = schemas?.result ??
|
|
151
|
-
const expected = schemas?.expected ??
|
|
152
|
-
return
|
|
153
|
-
id:
|
|
154
|
-
hashTestCase:
|
|
155
|
-
ordering:
|
|
156
|
-
input:
|
|
157
|
-
result:
|
|
158
|
-
expected:
|
|
159
|
-
label:
|
|
160
|
-
tags:
|
|
161
|
-
timeMillis:
|
|
118
|
+
const input = schemas?.input ?? Schema.Unknown;
|
|
119
|
+
const result = schemas?.result ?? Schema.Unknown;
|
|
120
|
+
const expected = schemas?.expected ?? Schema.Unknown;
|
|
121
|
+
return Schema.Struct({
|
|
122
|
+
id: Schema.String,
|
|
123
|
+
hashTestCase: Schema.String,
|
|
124
|
+
ordering: Schema.Int,
|
|
125
|
+
input: Schema.fromJsonString(input),
|
|
126
|
+
result: Schema.fromJsonString(result),
|
|
127
|
+
expected: Schema.fromJsonString(expected),
|
|
128
|
+
label: LabelSchema,
|
|
129
|
+
tags: split(','),
|
|
130
|
+
timeMillis: Schema.Finite
|
|
162
131
|
});
|
|
163
132
|
};
|
|
164
133
|
const getTestResultsStream = (testRun, schemas) => {
|
|
165
134
|
const RowSchema = makeTestResultSchema(schemas);
|
|
166
|
-
const RowsSchema =
|
|
167
|
-
//
|
|
168
|
-
//
|
|
169
|
-
|
|
170
|
-
return _effect.Stream.unwrap(_effect.Effect.gen(function* () {
|
|
135
|
+
const RowsSchema = Schema.Array(RowSchema);
|
|
136
|
+
// The SQLite driver returns rows in one batch. Decode that batch once
|
|
137
|
+
// before exposing it as a stream.
|
|
138
|
+
return Stream.unwrap(Effect.gen(function* () {
|
|
171
139
|
const rows = yield* sql`
|
|
172
140
|
SELECT res.* FROM ${sql(tables.testResults)} res
|
|
173
141
|
JOIN ${sql(tables.testRunResults)} runres ON res.id = runres.testResult
|
|
174
142
|
JOIN ${sql(tables.testRuns)} runs ON runs.id = runres.testRun
|
|
175
143
|
WHERE runs.id = ${testRun.id}
|
|
176
144
|
ORDER BY ordering ASC;
|
|
177
|
-
`.pipe(
|
|
178
|
-
const decoded = yield*
|
|
179
|
-
return
|
|
145
|
+
`.pipe(Effect.mapError(RepositoryQueryError.fromSql('getTestResultsStream')));
|
|
146
|
+
const decoded = yield* Schema.decodeUnknownEffect(RowsSchema)(rows).pipe(Effect.mapError(RepositoryDecodeError.from('getTestResultsStream')));
|
|
147
|
+
return Stream.fromIterable(decoded);
|
|
180
148
|
}));
|
|
181
149
|
};
|
|
182
|
-
const hasResults =
|
|
150
|
+
const hasResults = Effect.fnUntraced(function* (testRun) {
|
|
183
151
|
const b = yield* sql`
|
|
184
152
|
SELECT COUNT(*) count FROM ${sql(tables.testRunResults)}
|
|
185
153
|
WHERE testRun = ${testRun.id};
|
|
186
|
-
`.pipe(
|
|
187
|
-
const r = yield*
|
|
154
|
+
`.pipe(Effect.mapError(RepositoryQueryError.fromSql('hasResults')));
|
|
155
|
+
const r = yield* Schema.decodeUnknownEffect(CountSchema)(b).pipe(Effect.mapError(RepositoryDecodeError.from('hasResults')));
|
|
188
156
|
return r > 0;
|
|
189
157
|
});
|
|
190
|
-
const getPreviousTestRun =
|
|
158
|
+
const getPreviousTestRun = Effect.fnUntraced(function* (name) {
|
|
191
159
|
const r = yield* sql`
|
|
192
160
|
SELECT * FROM ${sql(tables.testRuns)}
|
|
193
161
|
WHERE hash IS NOT NULL AND name = ${name}
|
|
194
162
|
ORDER BY id DESC
|
|
195
163
|
LIMIT 1;
|
|
196
|
-
`.pipe(
|
|
197
|
-
const p = yield*
|
|
198
|
-
return
|
|
164
|
+
`.pipe(Effect.mapError(RepositoryQueryError.fromSql('getPreviousTestRun')));
|
|
165
|
+
const p = yield* Schema.decodeUnknownEffect(TestRunsReadSchema)(r).pipe(Effect.mapError(RepositoryDecodeError.from('getPreviousTestRun')));
|
|
166
|
+
return A.head(p);
|
|
199
167
|
});
|
|
200
|
-
const getAllTestRuns =
|
|
168
|
+
const getAllTestRuns = Effect.gen(function* () {
|
|
201
169
|
const results = yield* sql`
|
|
202
170
|
SELECT * from ${sql(tables.testRuns)};
|
|
203
|
-
`.pipe(
|
|
204
|
-
return yield*
|
|
171
|
+
`.pipe(Effect.mapError(RepositoryQueryError.fromSql('getAllTestRuns')));
|
|
172
|
+
return yield* Schema.decodeUnknownEffect(TestRunsReadSchema)(results).pipe(Effect.mapError(RepositoryDecodeError.from('getAllTestRuns')));
|
|
205
173
|
});
|
|
206
|
-
const getAllTestRunResults =
|
|
174
|
+
const getAllTestRunResults = Effect.gen(function* () {
|
|
207
175
|
const results = yield* sql`
|
|
208
176
|
SELECT * from ${sql(tables.testRunResults)};
|
|
209
|
-
`.pipe(
|
|
210
|
-
return yield*
|
|
177
|
+
`.pipe(Effect.mapError(RepositoryQueryError.fromSql('getAllTestRunResults')));
|
|
178
|
+
return yield* Schema.decodeUnknownEffect(TestRunResultsSchema)(results).pipe(Effect.mapError(RepositoryDecodeError.from('getAllTestRunResults')));
|
|
211
179
|
});
|
|
212
|
-
const getAllTestResults =
|
|
180
|
+
const getAllTestResults = Effect.gen(function* () {
|
|
213
181
|
const results = yield* sql`
|
|
214
182
|
SELECT * from ${sql(tables.testResults)};
|
|
215
|
-
`.pipe(
|
|
216
|
-
return yield*
|
|
183
|
+
`.pipe(Effect.mapError(RepositoryQueryError.fromSql('getAllTestResults')));
|
|
184
|
+
return yield* Schema.decodeUnknownEffect(TestResultsSchema)(results).pipe(Effect.mapError(RepositoryDecodeError.from('getAllTestResults')));
|
|
217
185
|
});
|
|
218
|
-
const getLastTestRunHash = name
|
|
186
|
+
const getLastTestRunHash = Effect.fnUntraced(function* (name) {
|
|
187
|
+
const rows = yield* sql`
|
|
219
188
|
SELECT *
|
|
220
189
|
FROM ${sql(tables.testRuns)}
|
|
221
190
|
WHERE hash IS NOT NULL AND name = ${name}
|
|
222
191
|
ORDER BY id DESC
|
|
223
192
|
LIMIT 1;
|
|
224
|
-
`.pipe(
|
|
225
|
-
|
|
193
|
+
`.pipe(Effect.mapError(RepositoryQueryError.fromSql('getLastTestRunHash')));
|
|
194
|
+
const runs = yield* Schema.decodeUnknownEffect(TestRunsReadSchema)(rows).pipe(Effect.mapError(RepositoryDecodeError.from('getLastTestRunHash')));
|
|
195
|
+
return A.head(runs).pipe(Option.flatMap(run => Option.fromNullishOr(run.hash)));
|
|
196
|
+
});
|
|
197
|
+
const getOrCreateCurrentTestRun = name => sql.withTransaction(Effect.gen(function* () {
|
|
226
198
|
const currentRaw = yield* sql`
|
|
227
199
|
SELECT *
|
|
228
200
|
FROM ${sql(tables.testRuns)}
|
|
229
201
|
WHERE hash IS NULL AND name = ${name}
|
|
230
202
|
ORDER BY id DESC
|
|
231
203
|
LIMIT 1;
|
|
232
|
-
`.pipe(
|
|
233
|
-
const current = yield*
|
|
234
|
-
const existing =
|
|
235
|
-
if (
|
|
204
|
+
`.pipe(Effect.mapError(RepositoryQueryError.fromSql('getOrCreateCurrentTestRun')));
|
|
205
|
+
const current = yield* Schema.decodeUnknownEffect(TestRunsReadSchema)(currentRaw).pipe(Effect.mapError(RepositoryDecodeError.from('getOrCreateCurrentTestRun')));
|
|
206
|
+
const existing = A.head(current);
|
|
207
|
+
if (Option.isSome(existing)) {
|
|
236
208
|
return existing.value;
|
|
237
209
|
}
|
|
238
210
|
const insertedRaw = yield* sql`
|
|
@@ -241,27 +213,24 @@ const makeTestRepository = exports.makeTestRepository = /*#__PURE__*/_effect.Eff
|
|
|
241
213
|
name
|
|
242
214
|
})}
|
|
243
215
|
RETURNING *;
|
|
244
|
-
`.pipe(
|
|
245
|
-
const inserted = yield*
|
|
246
|
-
return yield*
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
onSome: _effect.Effect.succeed
|
|
251
|
-
}));
|
|
252
|
-
})).pipe(_effect.Effect.catchTag('SqlError', e => _effect.Effect.fail(_RepositoryError.RepositoryQueryError.fromSql('getOrCreateCurrentTestRun')(e))));
|
|
216
|
+
`.pipe(Effect.mapError(RepositoryWriteError.from('getOrCreateCurrentTestRun')));
|
|
217
|
+
const inserted = yield* Schema.decodeUnknownEffect(TestRunsReadSchema)(insertedRaw).pipe(Effect.mapError(RepositoryDecodeError.from('getOrCreateCurrentTestRun')));
|
|
218
|
+
return yield* Effect.fromOption(A.head(inserted)).pipe(Effect.mapError(() => new TestRunNotCreated({
|
|
219
|
+
testSuiteName: name
|
|
220
|
+
})));
|
|
221
|
+
})).pipe(Effect.catchTag('SqlError', e => Effect.fail(RepositoryQueryError.fromSql('getOrCreateCurrentTestRun')(e))));
|
|
253
222
|
const clearStale = ({
|
|
254
223
|
name,
|
|
255
224
|
keep = 1
|
|
256
|
-
}) => sql.withTransaction(
|
|
225
|
+
}) => sql.withTransaction(Effect.gen(function* () {
|
|
257
226
|
const raw = yield* sql`
|
|
258
227
|
SELECT *
|
|
259
228
|
FROM ${sql(tables.testRuns)}
|
|
260
229
|
WHERE hash IS NOT NULL AND name = ${name}
|
|
261
230
|
ORDER BY id DESC
|
|
262
231
|
LIMIT -1 OFFSET ${keep};
|
|
263
|
-
`.pipe(
|
|
264
|
-
const staleTestRuns = yield*
|
|
232
|
+
`.pipe(Effect.mapError(RepositoryQueryError.fromSql('clearStale')));
|
|
233
|
+
const staleTestRuns = yield* Schema.decodeUnknownEffect(TestRunsReadSchema)(raw).pipe(Effect.mapError(RepositoryDecodeError.from('clearStale')));
|
|
265
234
|
if (staleTestRuns.length === 0) {
|
|
266
235
|
return;
|
|
267
236
|
}
|
|
@@ -269,59 +238,59 @@ const makeTestRepository = exports.makeTestRepository = /*#__PURE__*/_effect.Eff
|
|
|
269
238
|
yield* sql`
|
|
270
239
|
DELETE FROM ${sql(tables.testRunResults)}
|
|
271
240
|
WHERE testRun IN ${sql.in(ids)};
|
|
272
|
-
`.pipe(
|
|
241
|
+
`.pipe(Effect.mapError(RepositoryWriteError.from('clearStale')));
|
|
273
242
|
yield* sql`
|
|
274
243
|
DELETE FROM ${sql(tables.testRuns)}
|
|
275
244
|
WHERE id IN ${sql.in(ids)};
|
|
276
|
-
`.pipe(
|
|
245
|
+
`.pipe(Effect.mapError(RepositoryWriteError.from('clearStale')));
|
|
277
246
|
yield* sql`
|
|
278
247
|
DELETE FROM ${sql(tables.testResults)}
|
|
279
248
|
WHERE id NOT IN (
|
|
280
249
|
SELECT DISTINCT testResult FROM ${sql(tables.testRunResults)}
|
|
281
250
|
);
|
|
282
|
-
`.pipe(
|
|
283
|
-
yield*
|
|
284
|
-
})).pipe(
|
|
251
|
+
`.pipe(Effect.mapError(RepositoryWriteError.from('clearStale')));
|
|
252
|
+
yield* Console.log('Cleared stale test runs.');
|
|
253
|
+
})).pipe(Effect.catchTag('SqlError', e => Effect.fail(RepositoryWriteError.from('clearStale')(e))));
|
|
285
254
|
const clearUncommitedTestResults = ({
|
|
286
255
|
name
|
|
287
|
-
}) => sql.withTransaction(
|
|
256
|
+
}) => sql.withTransaction(Effect.gen(function* () {
|
|
288
257
|
const currentRaw = yield* sql`
|
|
289
258
|
SELECT *
|
|
290
259
|
FROM ${sql(tables.testRuns)}
|
|
291
260
|
WHERE hash IS NULL AND name = ${name}
|
|
292
261
|
ORDER BY id DESC
|
|
293
262
|
LIMIT 1;
|
|
294
|
-
`.pipe(
|
|
295
|
-
const current = yield*
|
|
296
|
-
const currentTestRun =
|
|
297
|
-
if (
|
|
263
|
+
`.pipe(Effect.mapError(RepositoryQueryError.fromSql('clearUncommitedTestResults')));
|
|
264
|
+
const current = yield* Schema.decodeUnknownEffect(TestRunsReadSchema)(currentRaw).pipe(Effect.mapError(RepositoryDecodeError.from('clearUncommitedTestResults')));
|
|
265
|
+
const currentTestRun = A.head(current);
|
|
266
|
+
if (Option.isNone(currentTestRun)) {
|
|
298
267
|
return;
|
|
299
268
|
}
|
|
300
269
|
yield* sql`
|
|
301
270
|
DELETE FROM ${sql(tables.testRunResults)}
|
|
302
271
|
WHERE testRun = ${currentTestRun.value.id};
|
|
303
|
-
`.pipe(
|
|
272
|
+
`.pipe(Effect.mapError(RepositoryWriteError.from('clearUncommitedTestResults')));
|
|
304
273
|
yield* sql`
|
|
305
274
|
DELETE FROM ${sql(tables.testResults)}
|
|
306
275
|
WHERE id NOT IN (
|
|
307
276
|
SELECT DISTINCT testResult FROM ${sql(tables.testRunResults)}
|
|
308
277
|
);
|
|
309
|
-
`.pipe(
|
|
310
|
-
})).pipe(
|
|
311
|
-
const commitCurrentTestRun = ({
|
|
278
|
+
`.pipe(Effect.mapError(RepositoryWriteError.from('clearUncommitedTestResults')));
|
|
279
|
+
})).pipe(Effect.catchTag('SqlError', e => Effect.fail(RepositoryWriteError.from('clearUncommitedTestResults')(e))));
|
|
280
|
+
const commitCurrentTestRun = Effect.fnUntraced(function* ({
|
|
312
281
|
name,
|
|
313
282
|
hash
|
|
314
|
-
})
|
|
315
|
-
const currentTestRunResults = yield*
|
|
283
|
+
}) {
|
|
284
|
+
const currentTestRunResults = yield* Schema.decodeUnknownEffect(CountSchema)(yield* sql`
|
|
316
285
|
SELECT COUNT(*) count FROM ${sql(tables.testRunResults)}
|
|
317
286
|
WHERE testRun = (
|
|
318
287
|
SELECT id
|
|
319
288
|
FROM ${sql(tables.testRuns)}
|
|
320
289
|
WHERE hash IS NULL AND name = ${name}
|
|
321
290
|
);
|
|
322
|
-
`.pipe(
|
|
291
|
+
`.pipe(Effect.mapError(RepositoryQueryError.fromSql('commitCurrentTestRun')))).pipe(Effect.mapError(RepositoryDecodeError.from('commitCurrentTestRun')));
|
|
323
292
|
if (currentTestRunResults === 0) {
|
|
324
|
-
yield*
|
|
293
|
+
yield* Console.log('Current run has no test results, not commiting.');
|
|
325
294
|
return;
|
|
326
295
|
}
|
|
327
296
|
yield* sql`
|
|
@@ -332,14 +301,14 @@ const makeTestRepository = exports.makeTestRepository = /*#__PURE__*/_effect.Eff
|
|
|
332
301
|
FROM ${sql(tables.testRuns)}
|
|
333
302
|
WHERE hash IS NULL AND name = ${name}
|
|
334
303
|
);
|
|
335
|
-
`.pipe(
|
|
304
|
+
`.pipe(Effect.mapError(RepositoryWriteError.from('commitCurrentTestRun')));
|
|
336
305
|
yield* sql`
|
|
337
306
|
INSERT INTO ${sql(tables.testRuns)}
|
|
338
307
|
${sql.insert({
|
|
339
308
|
name
|
|
340
309
|
})};
|
|
341
|
-
`.pipe(
|
|
342
|
-
yield*
|
|
310
|
+
`.pipe(Effect.mapError(RepositoryWriteError.from('commitCurrentTestRun')));
|
|
311
|
+
yield* Console.log('Commited test run.');
|
|
343
312
|
});
|
|
344
313
|
const service = {
|
|
345
314
|
clearStale,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Test.repository.sqlite.js","names":["SqlClient","_interopRequireWildcard","require","_effect","_TestRepository","_TestRepositoryTypes","_RepositoryError","_Classify","_Schema","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","tables","exports","testResults","testRuns","testRunResults","TestResultWriteSchema","Schema","Struct","id","String","hashTestCase","ordering","Int","input","parseJson","Unknown","result","expected","label","LabelSchema","tags","split","timeMillis","Number","TestResultsSchema","Array","CountSchema","Tuple","count","pipe","transform","decode","encode","TestRunsReadSchema","TestRun","TestRunResultsSchema","testRun","testResult","makeTestRepository","Effect","gen","sql","INSERT_BATCH_SIZE","insertTestResults","withTransaction","length","encoded","forEach","_","mapError","RepositoryDecodeError","from","chunk","slice","insert","RepositoryWriteError","junction","map","catchTag","fail","insertTestResult","makeTestResultSchema","schemas","getTestResultsStream","RowSchema","RowsSchema","Stream","unwrap","rows","RepositoryQueryError","fromSql","decoded","decodeUnknown","fromIterable","hasResults","b","getPreviousTestRun","name","p","head","getAllTestRuns","results","getAllTestRunResults","getAllTestResults","getLastTestRunHash","flow","Option","flatMap","fromNullable","hash","getOrCreateCurrentTestRun","currentRaw","current","existing","isSome","value","insertedRaw","inserted","match","onNone","TestRunNotCreated","onSome","succeed","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","Array","A","Console","Effect","Option","Schema","SchemaTransformation","Stream","TestRepository","TestRun","RepositoryDecodeError","RepositoryQueryError","RepositoryWriteError","TestRunNotCreated","LabelSchema","split","tables","testResults","testRuns","testRunResults","TestResultWriteSchema","Struct","id","String","hashTestCase","ordering","Int","input","fromJsonString","Unknown","result","expected","label","tags","timeMillis","Finite","TestResultsSchema","CountSchema","Tuple","count","pipe","decodeTo","transform","decode","encode","TestRunsReadSchema","TestRunResultsSchema","testRun","testResult","makeTestRepository","gen","sql","INSERT_BATCH_SIZE","insertTestResults","withTransaction","length","encoded","forEach","_","encodeEffect","mapError","from","i","chunk","slice","insert","junction","map","catchTag","e","fail","insertTestResult","makeTestResultSchema","schemas","getTestResultsStream","RowSchema","RowsSchema","unwrap","rows","fromSql","decoded","decodeUnknownEffect","fromIterable","hasResults","fnUntraced","b","r","getPreviousTestRun","name","p","head","getAllTestRuns","results","getAllTestRunResults","getAllTestResults","getLastTestRunHash","runs","flatMap","run","fromNullishOr","hash","getOrCreateCurrentTestRun","currentRaw","current","existing","isSome","value","insertedRaw","inserted","fromOption","testSuiteName","clearStale","keep","raw","staleTestRuns","ids","in","log","clearUncommitedTestResults","currentTestRun","isNone","commitCurrentTestRun","currentTestRunResults","service"],"sources":["../../../src/internal/Test.repository.sqlite.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -1,13 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.showTitle = exports.showRow = exports.showHeader = exports.showBorder = exports.colorPositive = exports.colorNegative = void 0;
|
|
7
|
-
var _ansiColors = /*#__PURE__*/_interopRequireDefault(/*#__PURE__*/require("ansi-colors"));
|
|
8
|
-
var _Number = /*#__PURE__*/require("effect/Number");
|
|
9
|
-
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
10
|
-
const showBorder = (cfg, columnWidths, position) => {
|
|
1
|
+
import colors from 'ansi-colors';
|
|
2
|
+
import { sum } from 'effect/Number';
|
|
3
|
+
export const showBorder = (cfg, columnWidths, position) => {
|
|
11
4
|
const l = {
|
|
12
5
|
'top-title': cfg.cornerTopLeft,
|
|
13
6
|
top: cfg.cornerTopLeft,
|
|
@@ -29,38 +22,32 @@ const showBorder = (cfg, columnWidths, position) => {
|
|
|
29
22
|
'bottom-title': cfg.cornerTop,
|
|
30
23
|
bottom: cfg.cornerBottom
|
|
31
24
|
};
|
|
32
|
-
return `${
|
|
25
|
+
return `${colors.gray(l[position] + columnWidths.reduce((s, w, i, xs) => s + (i < xs.length - 1 ? cfg.horizontal.repeat(w + cfg.columnPadding) + m[position] : cfg.horizontal.repeat(w + cfg.columnPadding)), '') + r[position])}\n`;
|
|
33
26
|
};
|
|
34
|
-
|
|
35
|
-
const showHeader = (cfg, columnWidths, columns) => {
|
|
27
|
+
export const showHeader = (cfg, columnWidths, columns) => {
|
|
36
28
|
return `${columns.map(({
|
|
37
29
|
label
|
|
38
|
-
}, i) => `${
|
|
30
|
+
}, i) => `${colors.gray(cfg.vertical)} ${colors.dim(label.padEnd(columnWidths[i]))} `).join('') + colors.gray(cfg.vertical)}\n`;
|
|
39
31
|
};
|
|
40
|
-
|
|
41
|
-
const
|
|
42
|
-
|
|
43
|
-
return `${showBorder(cfg, columnWidths, 'top-title') + _ansiColors.default.gray(cfg.vertical) + title.padStart(title.length + 1).padEnd(diff + columnWidths.reduce(_Number.sum) + columnWidths.length * 3 - 1) + _ansiColors.default.gray(cfg.vertical)}\n${showBorder(cfg, columnWidths, 'bottom-title')}`;
|
|
32
|
+
export const showTitle = (cfg, columnWidths, title) => {
|
|
33
|
+
const diff = title.length - colors.stripColor(title).length;
|
|
34
|
+
return `${showBorder(cfg, columnWidths, 'top-title') + colors.gray(cfg.vertical) + title.padStart(title.length + 1).padEnd(diff + columnWidths.reduce(sum) + columnWidths.length * 3 - 1) + colors.gray(cfg.vertical)}\n${showBorder(cfg, columnWidths, 'bottom-title')}`;
|
|
44
35
|
};
|
|
45
|
-
|
|
46
|
-
const showRow = (cfg, row, columnWidths, height) => {
|
|
36
|
+
export const showRow = (cfg, row, columnWidths, height) => {
|
|
47
37
|
let s = '';
|
|
48
38
|
for (let j = 0; j < height; j++) {
|
|
49
39
|
for (let columnIndex = 0; columnIndex < row.length; columnIndex++) {
|
|
50
40
|
const [_key, values] = row[columnIndex];
|
|
51
41
|
const x = values[j];
|
|
52
|
-
const u =
|
|
42
|
+
const u = colors.stripColor(x);
|
|
53
43
|
const w = columnWidths[columnIndex];
|
|
54
44
|
const n = w + x.length - u.length;
|
|
55
|
-
s += `${
|
|
45
|
+
s += `${colors.gray(cfg.vertical)} ${x.padEnd(n)} `;
|
|
56
46
|
}
|
|
57
|
-
s += `${
|
|
47
|
+
s += `${colors.gray(cfg.vertical)}\n`;
|
|
58
48
|
}
|
|
59
49
|
return s;
|
|
60
50
|
};
|
|
61
|
-
|
|
62
|
-
const
|
|
63
|
-
exports.colorPositive = colorPositive;
|
|
64
|
-
const colorNegative = n => n > 0 ? _ansiColors.default.red : n < 0 ? _ansiColors.default.green : _ansiColors.default.white;
|
|
65
|
-
exports.colorNegative = colorNegative;
|
|
51
|
+
export const colorPositive = n => n < 0 ? colors.red : n > 0 ? colors.green : colors.white;
|
|
52
|
+
export const colorNegative = n => n > 0 ? colors.red : n < 0 ? colors.green : colors.white;
|
|
66
53
|
//# sourceMappingURL=common.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"common.js","names":["
|
|
1
|
+
{"version":3,"file":"common.js","names":["colors","sum","showBorder","cfg","columnWidths","position","l","cornerTopLeft","top","middle","cornerLeft","bottom","cornerBottomLeft","r","cornerTopRight","cornerRight","cornerBottomRight","m","horizontal","cornerTop","corner","cornerBottom","gray","reduce","s","w","i","xs","length","repeat","columnPadding","showHeader","columns","map","label","vertical","dim","padEnd","join","showTitle","title","diff","stripColor","padStart","showRow","row","height","j","columnIndex","_key","values","x","u","n","colorPositive","red","green","white","colorNegative"],"sources":["../../../src/internal/common.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|