@proteinjs/db-driver-spanner 1.14.1 → 1.14.3

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 (38) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/dist/generated/index.js +1 -1
  3. package/dist/generated/index.js.map +1 -1
  4. package/dist/generated/test/index.js +1 -1
  5. package/dist/generated/test/index.js.map +1 -1
  6. package/dist/src/SpannerDriver.d.ts.map +1 -1
  7. package/dist/src/SpannerDriver.js +6 -25
  8. package/dist/src/SpannerDriver.js.map +1 -1
  9. package/dist/test/MigrationRunner.test.d.ts +2 -0
  10. package/dist/test/MigrationRunner.test.d.ts.map +1 -0
  11. package/dist/test/MigrationRunner.test.js +172 -0
  12. package/dist/test/MigrationRunner.test.js.map +1 -0
  13. package/dist/test/ServiceUpdateVerbs.test.d.ts.map +1 -1
  14. package/dist/test/ServiceUpdateVerbs.test.js +14 -6
  15. package/dist/test/ServiceUpdateVerbs.test.js.map +1 -1
  16. package/dist/test/SessionPoolExhaustion.test.d.ts.map +1 -1
  17. package/dist/test/SessionPoolExhaustion.test.js +15 -3
  18. package/dist/test/SessionPoolExhaustion.test.js.map +1 -1
  19. package/dist/test/SessionRecordTableQuery.test.d.ts.map +1 -1
  20. package/dist/test/SessionRecordTableQuery.test.js +13 -6
  21. package/dist/test/SessionRecordTableQuery.test.js.map +1 -1
  22. package/dist/test/TransactionSafety.test.d.ts.map +1 -1
  23. package/dist/test/TransactionSafety.test.js +15 -3
  24. package/dist/test/TransactionSafety.test.js.map +1 -1
  25. package/dist/test/util/SpannerEmulatorProvisioner.d.ts.map +1 -1
  26. package/dist/test/util/SpannerEmulatorProvisioner.js +17 -6
  27. package/dist/test/util/SpannerEmulatorProvisioner.js.map +1 -1
  28. package/generated/index.ts +9 -6
  29. package/generated/test/index.ts +11 -8
  30. package/package.json +6 -7
  31. package/src/SpannerDriver.ts +9 -23
  32. package/test/MigrationRunner.test.ts +88 -0
  33. package/test/ServiceUpdateVerbs.test.ts +6 -0
  34. package/test/SessionPoolExhaustion.test.ts +18 -3
  35. package/test/SessionRecordTableQuery.test.ts +5 -0
  36. package/test/TransactionSafety.test.ts +18 -3
  37. package/test/util/SpannerEmulatorProvisioner.ts +10 -1
  38. package/LICENSE +0 -21
@@ -0,0 +1,172 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __generator = (this && this.__generator) || function (thisArg, body) {
12
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
+ function verb(n) { return function (v) { return step([n, v]); }; }
15
+ function step(op) {
16
+ if (f) throw new TypeError("Generator is already executing.");
17
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
18
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
+ if (y = 0, t) op = [op[0] & 2, t.value];
20
+ switch (op[0]) {
21
+ case 0: case 1: t = op; break;
22
+ case 4: _.label++; return { value: op[1], done: false };
23
+ case 5: _.label++; y = op[1]; op = [0]; continue;
24
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
+ default:
26
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
+ if (t[2]) _.ops.pop();
31
+ _.trys.pop(); continue;
32
+ }
33
+ op = body.call(thisArg, _);
34
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
+ }
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ var db_driver_spanner_1 = require("@proteinjs/db-driver-spanner");
40
+ var db_1 = require("@proteinjs/db");
41
+ var test_1 = require("@proteinjs/db/test");
42
+ var getDropTestTable_1 = require("./util/getDropTestTable");
43
+ var SpannerEmulatorProvisioner_1 = require("./util/SpannerEmulatorProvisioner");
44
+ require("../generated/test/index");
45
+ /**
46
+ * MigrationRunner over the real stack: Spanner emulator, default-driver resolution via
47
+ * reflection — the same `getDb()` path production takes inside the runner.
48
+ *
49
+ * These pin the runner's domain bookkeeping: a migration that throws mid-run is a run OUTCOME —
50
+ * the detached promise RESOLVES and failure status lands on the record; a successful one records
51
+ * success and its output. Only infrastructure failures (recording run state itself) reject the
52
+ * promise, and on the service path the executor terminally observes those (@proteinjs/service
53
+ * ServiceExecutor; MigrationRunnerContainment.test.ts in @proteinjs/db pins the seam).
54
+ */
55
+ var spannerDriver = new db_driver_spanner_1.SpannerDriver({
56
+ projectId: 'proteinjs-test',
57
+ instanceName: 'proteinjs-test',
58
+ databaseName: 'test',
59
+ });
60
+ describe('MigrationRunner (spanner)', function () {
61
+ var migrationTable = new db_1.MigrationTable();
62
+ var dropTable = (0, getDropTestTable_1.getDropTestTable)(spannerDriver);
63
+ var sourceRecordRepo = new db_1.SourceRecordRepo();
64
+ var failingMigration = {
65
+ id: 'migration-runner-test-failing',
66
+ description: 'fails mid-run',
67
+ run: function () { return __awaiter(void 0, void 0, void 0, function () {
68
+ return __generator(this, function (_a) {
69
+ throw new Error('migration blew up mid-run');
70
+ });
71
+ }); },
72
+ };
73
+ var succeedingMigration = {
74
+ id: 'migration-runner-test-succeeding',
75
+ description: 'succeeds',
76
+ run: function () { return __awaiter(void 0, void 0, void 0, function () { return __generator(this, function (_a) {
77
+ return [2 /*return*/, 'migration output'];
78
+ }); }); },
79
+ };
80
+ beforeAll(function () { return __awaiter(void 0, void 0, void 0, function () {
81
+ var _i, _a, migration;
82
+ return __generator(this, function (_b) {
83
+ switch (_b.label) {
84
+ case 0:
85
+ // Explicit admin identity (UserAuth is fail-closed): the migration table's doors ride the
86
+ // 'dev' permission with admin break-glass — the permission mapping itself is pinned in
87
+ // @proteinjs/db's MigrationAuth suite.
88
+ (0, test_1.registerTestUser)();
89
+ return [4 /*yield*/, SpannerEmulatorProvisioner_1.SpannerEmulatorProvisioner.ensureProvisioned({
90
+ projectId: 'proteinjs-test',
91
+ instanceName: 'proteinjs-test',
92
+ databaseName: 'test',
93
+ })];
94
+ case 1:
95
+ _b.sent();
96
+ return [4 /*yield*/, dropTable(migrationTable)];
97
+ case 2:
98
+ _b.sent();
99
+ return [4 /*yield*/, spannerDriver.getTableManager().loadTable(migrationTable)];
100
+ case 3:
101
+ _b.sent();
102
+ _i = 0, _a = [failingMigration, succeedingMigration];
103
+ _b.label = 4;
104
+ case 4:
105
+ if (!(_i < _a.length)) return [3 /*break*/, 7];
106
+ migration = _a[_i];
107
+ sourceRecordRepo.loadSourceRecord(migrationTable.name, migration);
108
+ return [4 /*yield*/, (0, db_1.getDb)().insert(migrationTable, migration)];
109
+ case 5:
110
+ _b.sent();
111
+ _b.label = 6;
112
+ case 6:
113
+ _i++;
114
+ return [3 /*break*/, 4];
115
+ case 7: return [2 /*return*/];
116
+ }
117
+ });
118
+ }); }, 60000);
119
+ afterAll(function () { return __awaiter(void 0, void 0, void 0, function () {
120
+ return __generator(this, function (_a) {
121
+ switch (_a.label) {
122
+ case 0:
123
+ (0, test_1.clearTestUser)();
124
+ return [4 /*yield*/, dropTable(migrationTable)];
125
+ case 1:
126
+ _a.sent();
127
+ SpannerEmulatorProvisioner_1.SpannerEmulatorProvisioner.release();
128
+ return [2 /*return*/];
129
+ }
130
+ });
131
+ }); }, 30000);
132
+ test('a mid-run throw resolves the detached promise and records failure status', function () { return __awaiter(void 0, void 0, void 0, function () {
133
+ var runner, row;
134
+ return __generator(this, function (_a) {
135
+ switch (_a.label) {
136
+ case 0:
137
+ runner = new db_1.MigrationRunner();
138
+ return [4 /*yield*/, expect(runner.runMigration(failingMigration.id)).resolves.toBeUndefined()];
139
+ case 1:
140
+ _a.sent();
141
+ return [4 /*yield*/, (0, db_1.getDb)().get(migrationTable, { id: failingMigration.id })];
142
+ case 2:
143
+ row = _a.sent();
144
+ expect(row.status).toBe('failure');
145
+ expect(row.failureMessage).toBe('migration blew up mid-run');
146
+ expect(row.failureStack).toContain('migration blew up mid-run');
147
+ expect(row.duration).toBeTruthy();
148
+ return [2 /*return*/];
149
+ }
150
+ });
151
+ }); });
152
+ test('a successful migration records success and its output', function () { return __awaiter(void 0, void 0, void 0, function () {
153
+ var runner, row;
154
+ return __generator(this, function (_a) {
155
+ switch (_a.label) {
156
+ case 0:
157
+ runner = new db_1.MigrationRunner();
158
+ return [4 /*yield*/, expect(runner.runMigration(succeedingMigration.id)).resolves.toBeUndefined()];
159
+ case 1:
160
+ _a.sent();
161
+ return [4 /*yield*/, (0, db_1.getDb)().get(migrationTable, { id: succeedingMigration.id })];
162
+ case 2:
163
+ row = _a.sent();
164
+ expect(row.status).toBe('success');
165
+ expect(row.output).toBe('migration output');
166
+ expect(row.duration).toBeTruthy();
167
+ return [2 /*return*/];
168
+ }
169
+ });
170
+ }); });
171
+ });
172
+ //# sourceMappingURL=MigrationRunner.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MigrationRunner.test.js","sourceRoot":"","sources":["../../test/MigrationRunner.test.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ServiceUpdateVerbs.test.d.ts","sourceRoot":"","sources":["../../test/ServiceUpdateVerbs.test.ts"],"names":[],"mappings":"AAmBA,OAAO,yBAAyB,CAAC"}
1
+ {"version":3,"file":"ServiceUpdateVerbs.test.d.ts","sourceRoot":"","sources":["../../test/ServiceUpdateVerbs.test.ts"],"names":[],"mappings":"AAoBA,OAAO,yBAAyB,CAAC"}
@@ -47,6 +47,7 @@ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
47
47
  Object.defineProperty(exports, "__esModule", { value: true });
48
48
  var db_driver_spanner_1 = require("@proteinjs/db-driver-spanner");
49
49
  var db_1 = require("@proteinjs/db");
50
+ var test_1 = require("@proteinjs/db/test");
50
51
  var db_transaction_context_1 = require("@proteinjs/db-transaction-context");
51
52
  var getDropTestTable_1 = require("./util/getDropTestTable");
52
53
  var SpannerEmulatorProvisioner_1 = require("./util/SpannerEmulatorProvisioner");
@@ -114,11 +115,16 @@ describe('DbService RMW update verbs (updateArrayMembership / updatePreserving)'
114
115
  beforeAll(function () { return __awaiter(void 0, void 0, void 0, function () {
115
116
  return __generator(this, function (_a) {
116
117
  switch (_a.label) {
117
- case 0: return [4 /*yield*/, SpannerEmulatorProvisioner_1.SpannerEmulatorProvisioner.ensureProvisioned({
118
- projectId: 'proteinjs-test',
119
- instanceName: 'proteinjs-test',
120
- databaseName: 'test',
121
- })];
118
+ case 0:
119
+ // The suite pins RMW/transaction semantics, not table doors: an explicit admin identity
120
+ // passes the doc table's default-admin door (UserAuth is fail-closed — no identity, no
121
+ // access); row visibility is still the scope column's, driven by `scope.current`.
122
+ (0, test_1.registerTestUser)();
123
+ return [4 /*yield*/, SpannerEmulatorProvisioner_1.SpannerEmulatorProvisioner.ensureProvisioned({
124
+ projectId: 'proteinjs-test',
125
+ instanceName: 'proteinjs-test',
126
+ databaseName: 'test',
127
+ })];
122
128
  case 1:
123
129
  _a.sent();
124
130
  return [4 /*yield*/, dropTable(docTable)];
@@ -134,7 +140,9 @@ describe('DbService RMW update verbs (updateArrayMembership / updatePreserving)'
134
140
  afterAll(function () { return __awaiter(void 0, void 0, void 0, function () {
135
141
  return __generator(this, function (_a) {
136
142
  switch (_a.label) {
137
- case 0: return [4 /*yield*/, dropTable(docTable)];
143
+ case 0:
144
+ (0, test_1.clearTestUser)();
145
+ return [4 /*yield*/, dropTable(docTable)];
138
146
  case 1:
139
147
  _a.sent();
140
148
  return [4 /*yield*/, SpannerEmulatorProvisioner_1.SpannerEmulatorProvisioner.release()];
@@ -1 +1 @@
1
- {"version":3,"file":"ServiceUpdateVerbs.test.js","sourceRoot":"","sources":["../../test/ServiceUpdateVerbs.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ServiceUpdateVerbs.test.js","sourceRoot":"","sources":["../../test/ServiceUpdateVerbs.test.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"SessionPoolExhaustion.test.d.ts","sourceRoot":"","sources":["../../test/SessionPoolExhaustion.test.ts"],"names":[],"mappings":"AAMA,OAAO,yBAAyB,CAAC"}
1
+ {"version":3,"file":"SessionPoolExhaustion.test.d.ts","sourceRoot":"","sources":["../../test/SessionPoolExhaustion.test.ts"],"names":[],"mappings":"AAQA,OAAO,yBAAyB,CAAC"}
@@ -65,6 +65,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
65
65
  var db_1 = require("@proteinjs/db");
66
66
  var db_transaction_context_1 = require("@proteinjs/db-transaction-context");
67
67
  var db_driver_spanner_1 = require("@proteinjs/db-driver-spanner");
68
+ var test_1 = require("@proteinjs/db/test");
69
+ var reflection_1 = require("@proteinjs/reflection");
68
70
  var getDropTestTable_1 = require("./util/getDropTestTable");
69
71
  var SpannerEmulatorProvisioner_1 = require("./util/SpannerEmulatorProvisioner");
70
72
  require("../generated/test/index");
@@ -82,8 +84,9 @@ var WedgeEmployeeTestTable = /** @class */ (function (_super) {
82
84
  return WedgeEmployeeTestTable;
83
85
  }(db_1.Table));
84
86
  var employeeTable = new WedgeEmployeeTestTable();
85
- // Local table — not in any reflection source graph, so thread getTable explicitly.
86
- var getTable = function () { return employeeTable; };
87
+ // Local table — not in any reflection source graph, so thread getTable explicitly; other
88
+ // lookups (e.g. the delete path's reverse-cascade scan over graph tables) resolve normally.
89
+ var getTable = function (tableName) { return (tableName === employeeTable.name ? employeeTable : (0, db_1.tableByName)(tableName)); };
87
90
  var spannerConfig = {
88
91
  projectId: 'proteinjs-test',
89
92
  instanceName: 'proteinjs-test',
@@ -114,7 +117,14 @@ describe('Session pool at max=1 (wedge designed out; real exhaustion documented)
114
117
  var pool;
115
118
  return __generator(this, function (_a) {
116
119
  switch (_a.label) {
117
- case 0: return [4 /*yield*/, SpannerEmulatorProvisioner_1.SpannerEmulatorProvisioner.ensureProvisioned(spannerConfig)];
120
+ case 0:
121
+ // Fail-closed auth needs an explicit identity (the suite predates the flip — n3xa4 side).
122
+ (0, test_1.registerTestUser)();
123
+ // HERMETIC single-table world: the delete path's reverse-cascade scan walks getTables();
124
+ // scoping the registry to the local table keeps this suite from querying other suites'
125
+ // graph tables (which don't exist in an isolated run). Object cache wins over the graph.
126
+ reflection_1.SourceRepository.get().objectCache['@proteinjs/db/Table'] = [employeeTable];
127
+ return [4 /*yield*/, SpannerEmulatorProvisioner_1.SpannerEmulatorProvisioner.ensureProvisioned(spannerConfig)];
118
128
  case 1:
119
129
  _a.sent();
120
130
  return [4 /*yield*/, spannerDriver.createDbIfNotExists()];
@@ -141,6 +151,8 @@ describe('Session pool at max=1 (wedge designed out; real exhaustion documented)
141
151
  return [4 /*yield*/, SpannerEmulatorProvisioner_1.SpannerEmulatorProvisioner.release()];
142
152
  case 2:
143
153
  _a.sent();
154
+ delete reflection_1.SourceRepository.get().objectCache['@proteinjs/db/Table'];
155
+ (0, test_1.clearTestUser)();
144
156
  return [2 /*return*/];
145
157
  }
146
158
  });
@@ -1 +1 @@
1
- {"version":3,"file":"SessionPoolExhaustion.test.js","sourceRoot":"","sources":["../../test/SessionPoolExhaustion.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SessionPoolExhaustion.test.js","sourceRoot":"","sources":["../../test/SessionPoolExhaustion.test.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"SessionRecordTableQuery.test.d.ts","sourceRoot":"","sources":["../../test/SessionRecordTableQuery.test.ts"],"names":[],"mappings":"AAMA,OAAO,yBAAyB,CAAC"}
1
+ {"version":3,"file":"SessionRecordTableQuery.test.d.ts","sourceRoot":"","sources":["../../test/SessionRecordTableQuery.test.ts"],"names":[],"mappings":"AAOA,OAAO,yBAAyB,CAAC"}
@@ -57,6 +57,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
57
57
  var moment_1 = __importDefault(require("moment"));
58
58
  var db_driver_spanner_1 = require("@proteinjs/db-driver-spanner");
59
59
  var db_1 = require("@proteinjs/db");
60
+ var test_1 = require("@proteinjs/db/test");
60
61
  var db_transaction_context_1 = require("@proteinjs/db-transaction-context");
61
62
  var getDropTestTable_1 = require("./util/getDropTestTable");
62
63
  var SpannerEmulatorProvisioner_1 = require("./util/SpannerEmulatorProvisioner");
@@ -112,11 +113,15 @@ describe('Session-shaped record table query (the admin Sessions table path)', fu
112
113
  beforeAll(function () { return __awaiter(void 0, void 0, void 0, function () {
113
114
  return __generator(this, function (_a) {
114
115
  switch (_a.label) {
115
- case 0: return [4 /*yield*/, SpannerEmulatorProvisioner_1.SpannerEmulatorProvisioner.ensureProvisioned({
116
- projectId: 'proteinjs-test',
117
- instanceName: 'proteinjs-test',
118
- databaseName: 'test',
119
- })];
116
+ case 0:
117
+ // The admin Sessions table reads as an admin; UserAuth is fail-closed, so the suite carries
118
+ // that identity explicitly (the session table defaults to the admin door — no auth block).
119
+ (0, test_1.registerTestUser)();
120
+ return [4 /*yield*/, SpannerEmulatorProvisioner_1.SpannerEmulatorProvisioner.ensureProvisioned({
121
+ projectId: 'proteinjs-test',
122
+ instanceName: 'proteinjs-test',
123
+ databaseName: 'test',
124
+ })];
120
125
  case 1:
121
126
  _a.sent();
122
127
  return [4 /*yield*/, dropTable(table)];
@@ -132,7 +137,9 @@ describe('Session-shaped record table query (the admin Sessions table path)', fu
132
137
  afterAll(function () { return __awaiter(void 0, void 0, void 0, function () {
133
138
  return __generator(this, function (_a) {
134
139
  switch (_a.label) {
135
- case 0: return [4 /*yield*/, dropTable(table)];
140
+ case 0:
141
+ (0, test_1.clearTestUser)();
142
+ return [4 /*yield*/, dropTable(table)];
136
143
  case 1:
137
144
  _a.sent();
138
145
  return [4 /*yield*/, SpannerEmulatorProvisioner_1.SpannerEmulatorProvisioner.release()];
@@ -1 +1 @@
1
- {"version":3,"file":"SessionRecordTableQuery.test.js","sourceRoot":"","sources":["../../test/SessionRecordTableQuery.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SessionRecordTableQuery.test.js","sourceRoot":"","sources":["../../test/SessionRecordTableQuery.test.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"TransactionSafety.test.d.ts","sourceRoot":"","sources":["../../test/TransactionSafety.test.ts"],"names":[],"mappings":"AAKA,OAAO,yBAAyB,CAAC"}
1
+ {"version":3,"file":"TransactionSafety.test.d.ts","sourceRoot":"","sources":["../../test/TransactionSafety.test.ts"],"names":[],"mappings":"AAOA,OAAO,yBAAyB,CAAC"}
@@ -54,6 +54,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
54
54
  var db_1 = require("@proteinjs/db");
55
55
  var db_transaction_context_1 = require("@proteinjs/db-transaction-context");
56
56
  var db_driver_spanner_1 = require("@proteinjs/db-driver-spanner");
57
+ var test_1 = require("@proteinjs/db/test");
58
+ var reflection_1 = require("@proteinjs/reflection");
57
59
  var getDropTestTable_1 = require("./util/getDropTestTable");
58
60
  var SpannerEmulatorProvisioner_1 = require("./util/SpannerEmulatorProvisioner");
59
61
  require("../generated/test/index");
@@ -71,8 +73,9 @@ var SafetyEmployeeTestTable = /** @class */ (function (_super) {
71
73
  return SafetyEmployeeTestTable;
72
74
  }(db_1.Table));
73
75
  var employeeTable = new SafetyEmployeeTestTable();
74
- // Local table — not in any reflection source graph, so thread getTable explicitly.
75
- var getTable = function () { return employeeTable; };
76
+ // Local table — not in any reflection source graph, so thread getTable explicitly; other
77
+ // lookups (e.g. the delete path's reverse-cascade scan over graph tables) resolve normally.
78
+ var getTable = function (tableName) { return (tableName === employeeTable.name ? employeeTable : (0, db_1.tableByName)(tableName)); };
76
79
  var spannerConfig = {
77
80
  projectId: 'proteinjs-test',
78
81
  instanceName: 'proteinjs-test',
@@ -97,7 +100,14 @@ describe('Transaction safety (stateless contract)', function () {
97
100
  beforeAll(function () { return __awaiter(void 0, void 0, void 0, function () {
98
101
  return __generator(this, function (_a) {
99
102
  switch (_a.label) {
100
- case 0: return [4 /*yield*/, SpannerEmulatorProvisioner_1.SpannerEmulatorProvisioner.ensureProvisioned(spannerConfig)];
103
+ case 0:
104
+ // Fail-closed auth needs an explicit identity (the suite predates the flip — n3xa4 side).
105
+ (0, test_1.registerTestUser)();
106
+ // HERMETIC single-table world: the delete path's reverse-cascade scan walks getTables();
107
+ // scoping the registry to the local table keeps this suite from querying other suites'
108
+ // graph tables (which don't exist in an isolated run). Object cache wins over the graph.
109
+ reflection_1.SourceRepository.get().objectCache['@proteinjs/db/Table'] = [employeeTable];
110
+ return [4 /*yield*/, SpannerEmulatorProvisioner_1.SpannerEmulatorProvisioner.ensureProvisioned(spannerConfig)];
101
111
  case 1:
102
112
  _a.sent();
103
113
  return [4 /*yield*/, spannerDriver.createDbIfNotExists()];
@@ -119,6 +129,8 @@ describe('Transaction safety (stateless contract)', function () {
119
129
  return [4 /*yield*/, SpannerEmulatorProvisioner_1.SpannerEmulatorProvisioner.release()];
120
130
  case 2:
121
131
  _a.sent();
132
+ delete reflection_1.SourceRepository.get().objectCache['@proteinjs/db/Table'];
133
+ (0, test_1.clearTestUser)();
122
134
  return [2 /*return*/];
123
135
  }
124
136
  });
@@ -1 +1 @@
1
- {"version":3,"file":"TransactionSafety.test.js","sourceRoot":"","sources":["../../test/TransactionSafety.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TransactionSafety.test.js","sourceRoot":"","sources":["../../test/TransactionSafety.test.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"SpannerEmulatorProvisioner.d.ts","sourceRoot":"","sources":["../../../test/util/SpannerEmulatorProvisioner.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;GAeG;AACH,qBAAa,0BAA0B;IACrC;6FACyF;IACzF,OAAO,CAAC,MAAM,CAAC,MAAM,CAAsB;IAE3C,iGAAiG;WACpF,iBAAiB,CAAC,MAAM,EAAE;QACrC,SAAS,EAAE,MAAM,CAAC;QAClB,YAAY,EAAE,MAAM,CAAC;QACrB,YAAY,EAAE,MAAM,CAAC;KACtB,GAAG,OAAO,CAAC,IAAI,CAAC;IAyBjB,kFAAkF;IAClF,MAAM,CAAC,OAAO,IAAI,IAAI;IAQtB,OAAO,CAAC,MAAM,CAAC,oBAAoB;CAKpC"}
1
+ {"version":3,"file":"SpannerEmulatorProvisioner.d.ts","sourceRoot":"","sources":["../../../test/util/SpannerEmulatorProvisioner.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;GAeG;AACH,qBAAa,0BAA0B;IACrC;6FACyF;IACzF,OAAO,CAAC,MAAM,CAAC,MAAM,CAAsB;IAE3C,iGAAiG;WACpF,iBAAiB,CAAC,MAAM,EAAE;QACrC,SAAS,EAAE,MAAM,CAAC;QAClB,YAAY,EAAE,MAAM,CAAC;QACrB,YAAY,EAAE,MAAM,CAAC;KACtB,GAAG,OAAO,CAAC,IAAI,CAAC;IAkCjB,kFAAkF;IAClF,MAAM,CAAC,OAAO,IAAI,IAAI;IAQtB,OAAO,CAAC,MAAM,CAAC,oBAAoB;CAKpC"}
@@ -61,7 +61,7 @@ var SpannerEmulatorProvisioner = /** @class */ (function () {
61
61
  SpannerEmulatorProvisioner.ensureProvisioned = function (config) {
62
62
  var _a;
63
63
  return __awaiter(this, void 0, void 0, function () {
64
- var spanner, instance, _b, operation, error_1, _c, operation, error_2;
64
+ var spanner, instance, _b, operation, error_1, _c, database, operation, error_2;
65
65
  return __generator(this, function (_d) {
66
66
  switch (_d.label) {
67
67
  case 0:
@@ -90,19 +90,30 @@ var SpannerEmulatorProvisioner = /** @class */ (function () {
90
90
  SpannerEmulatorProvisioner.swallowAlreadyExists(error_1);
91
91
  return [3 /*break*/, 5];
92
92
  case 5:
93
- _d.trys.push([5, 8, , 9]);
93
+ _d.trys.push([5, 9, , 10]);
94
94
  return [4 /*yield*/, instance.createDatabase(config.databaseName)];
95
95
  case 6:
96
- _c = _d.sent(), operation = _c[1];
96
+ _c = _d.sent(), database = _c[0], operation = _c[1];
97
97
  return [4 /*yield*/, operation.promise()];
98
98
  case 7:
99
99
  _d.sent();
100
- return [3 /*break*/, 9];
100
+ // createDatabase constructs a Database handle whose session pool OPENS in its constructor
101
+ // (database.js: pool_.open()). Ignored, it becomes an orphan: its fill/keepalive machinery
102
+ // outlives release(), and once the admin client closes, every subsequent pool op emits an
103
+ // unlistened 'error' on this handle — crashing whichever jest suite happens to be active
104
+ // (only fresh-emulator runs hit this; ALREADY_EXISTS constructs no handle). Own it through
105
+ // its death: the listener covers session creates that settle after close, and the close
106
+ // runs while the admin client can still delete the pool's sessions cleanly.
107
+ database.on('error', function () { return undefined; });
108
+ return [4 /*yield*/, database.close().catch(function () { return undefined; })];
101
109
  case 8:
110
+ _d.sent();
111
+ return [3 /*break*/, 10];
112
+ case 9:
102
113
  error_2 = _d.sent();
103
114
  SpannerEmulatorProvisioner.swallowAlreadyExists(error_2);
104
- return [3 /*break*/, 9];
105
- case 9: return [2 /*return*/];
115
+ return [3 /*break*/, 10];
116
+ case 10: return [2 /*return*/];
106
117
  }
107
118
  });
108
119
  });
@@ -1 +1 @@
1
- {"version":3,"file":"SpannerEmulatorProvisioner.js","sourceRoot":"","sources":["../../../test/util/SpannerEmulatorProvisioner.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,iDAAgD;AAEhD;;;;;;;;;;;;;;;GAeG;AACH;IAAA;IAiDA,CAAC;IA5CC,iGAAiG;IACpF,4CAAiB,GAA9B,UAA+B,MAI9B;;;;;;;wBACC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,qBAAqB,EAAE;4BACtC,sBAAO;yBACR;wBACK,OAAO,GAAG,MAAA,0BAA0B,CAAC,MAAM,mCAAI,IAAI,iBAAO,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC;wBAClG,0BAA0B,CAAC,MAAM,GAAG,OAAO,CAAC;wBACtC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;;;;wBAE/B,qBAAM,QAAQ,CAAC,MAAM,CAAC;gCAC1C,MAAM,EAAE,iBAAiB;gCACzB,WAAW,EAAE,UAAG,MAAM,CAAC,YAAY,YAAS;gCAC5C,KAAK,EAAE,CAAC;6BACT,CAAC,EAAA;;wBAJI,KAAgB,SAIpB,EAJO,SAAS,QAAA;wBAKlB,qBAAM,SAAS,CAAC,OAAO,EAAE,EAAA;;wBAAzB,SAAyB,CAAC;;;;wBAE1B,0BAA0B,CAAC,oBAAoB,CAAC,OAAK,CAAC,CAAC;;;;wBAGjC,qBAAM,QAAQ,CAAC,cAAc,CAAC,MAAM,CAAC,YAAY,CAAC,EAAA;;wBAAlE,KAAgB,SAAkD,EAA/D,SAAS,QAAA;wBAClB,qBAAM,SAAS,CAAC,OAAO,EAAE,EAAA;;wBAAzB,SAAyB,CAAC;;;;wBAE1B,0BAA0B,CAAC,oBAAoB,CAAC,OAAK,CAAC,CAAC;;;;;;KAE1D;IAED,kFAAkF;IAC3E,kCAAO,GAAd;;QACE,IAAI;YACF,MAAA,0BAA0B,CAAC,MAAM,0CAAE,KAAK,EAAE,CAAC;SAC5C;gBAAS;YACR,0BAA0B,CAAC,MAAM,GAAG,SAAS,CAAC;SAC/C;IACH,CAAC;IAEc,+CAAoB,GAAnC,UAAoC,KAAc;QAChD,IAAK,KAA2B,CAAC,IAAI,KAAK,CAAC,CAAC,yBAAyB,EAAE;YACrE,MAAM,KAAK,CAAC;SACb;IACH,CAAC;IACH,iCAAC;AAAD,CAAC,AAjDD,IAiDC;AAjDY,gEAA0B"}
1
+ {"version":3,"file":"SpannerEmulatorProvisioner.js","sourceRoot":"","sources":["../../../test/util/SpannerEmulatorProvisioner.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,iDAAgD;AAEhD;;;;;;;;;;;;;;;GAeG;AACH;IAAA;IA0DA,CAAC;IArDC,iGAAiG;IACpF,4CAAiB,GAA9B,UAA+B,MAI9B;;;;;;;wBACC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,qBAAqB,EAAE;4BACtC,sBAAO;yBACR;wBACK,OAAO,GAAG,MAAA,0BAA0B,CAAC,MAAM,mCAAI,IAAI,iBAAO,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC;wBAClG,0BAA0B,CAAC,MAAM,GAAG,OAAO,CAAC;wBACtC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;;;;wBAE/B,qBAAM,QAAQ,CAAC,MAAM,CAAC;gCAC1C,MAAM,EAAE,iBAAiB;gCACzB,WAAW,EAAE,UAAG,MAAM,CAAC,YAAY,YAAS;gCAC5C,KAAK,EAAE,CAAC;6BACT,CAAC,EAAA;;wBAJI,KAAgB,SAIpB,EAJO,SAAS,QAAA;wBAKlB,qBAAM,SAAS,CAAC,OAAO,EAAE,EAAA;;wBAAzB,SAAyB,CAAC;;;;wBAE1B,0BAA0B,CAAC,oBAAoB,CAAC,OAAK,CAAC,CAAC;;;;wBAGzB,qBAAM,QAAQ,CAAC,cAAc,CAAC,MAAM,CAAC,YAAY,CAAC,EAAA;;wBAA1E,KAAwB,SAAkD,EAAzE,QAAQ,QAAA,EAAE,SAAS,QAAA;wBAC1B,qBAAM,SAAS,CAAC,OAAO,EAAE,EAAA;;wBAAzB,SAAyB,CAAC;wBAC1B,0FAA0F;wBAC1F,2FAA2F;wBAC3F,0FAA0F;wBAC1F,yFAAyF;wBACzF,2FAA2F;wBAC3F,wFAAwF;wBACxF,4EAA4E;wBAC5E,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,cAAM,OAAA,SAAS,EAAT,CAAS,CAAC,CAAC;wBACtC,qBAAM,QAAQ,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,cAAM,OAAA,SAAS,EAAT,CAAS,CAAC,EAAA;;wBAA7C,SAA6C,CAAC;;;;wBAE9C,0BAA0B,CAAC,oBAAoB,CAAC,OAAK,CAAC,CAAC;;;;;;KAE1D;IAED,kFAAkF;IAC3E,kCAAO,GAAd;;QACE,IAAI;YACF,MAAA,0BAA0B,CAAC,MAAM,0CAAE,KAAK,EAAE,CAAC;SAC5C;gBAAS;YACR,0BAA0B,CAAC,MAAM,GAAG,SAAS,CAAC;SAC/C;IACH,CAAC;IAEc,+CAAoB,GAAnC,UAAoC,KAAc;QAChD,IAAK,KAA2B,CAAC,IAAI,KAAK,CAAC,CAAC,yBAAyB,EAAE;YACrE,MAAM,KAAK,CAAC;SACb;IACH,CAAC;IACH,iCAAC;AAAD,CAAC,AA1DD,IA0DC;AA1DY,gEAA0B"}