@elaraai/e3-api-tests 0.0.2-beta.53 → 1.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/LICENSE.md +5 -1
- package/README.md +50 -14
- package/dist/src/fixtures.d.ts +1 -1
- package/dist/src/fixtures.d.ts.map +1 -1
- package/dist/src/fixtures.js +1 -1
- package/dist/src/fixtures.js.map +1 -1
- package/dist/src/suites/cli.d.ts.map +1 -1
- package/dist/src/suites/cli.js +15 -17
- package/dist/src/suites/cli.js.map +1 -1
- package/dist/src/suites/dataflow.js +15 -15
- package/dist/src/suites/dataflow.js.map +1 -1
- package/dist/src/suites/dataset-transfer.d.ts.map +1 -1
- package/dist/src/suites/dataset-transfer.js +7 -5
- package/dist/src/suites/dataset-transfer.js.map +1 -1
- package/dist/src/suites/datasets.js +3 -3
- package/dist/src/suites/datasets.js.map +1 -1
- package/dist/src/suites/package-transfer.js +1 -1
- package/dist/src/suites/package-transfer.js.map +1 -1
- package/dist/src/suites/packages.js +1 -1
- package/dist/src/suites/packages.js.map +1 -1
- package/dist/src/suites/platform.js +1 -1
- package/dist/src/suites/platform.js.map +1 -1
- package/dist/src/suites/repository.js +1 -1
- package/dist/src/suites/repository.js.map +1 -1
- package/dist/src/suites/transfer.js +64 -64
- package/dist/src/suites/transfer.js.map +1 -1
- package/dist/src/suites/workspaces.js +2 -2
- package/dist/src/suites/workspaces.js.map +1 -1
- package/package.json +17 -17
|
@@ -48,8 +48,8 @@ export function transferTests(setup, getCredentialsEnv) {
|
|
|
48
48
|
mkdirSync(workDir, { recursive: true });
|
|
49
49
|
return Object.assign(ctx, { remoteUrl, workDir });
|
|
50
50
|
};
|
|
51
|
-
describe('transfer', { concurrency:
|
|
52
|
-
describe('package transfer', { concurrency:
|
|
51
|
+
describe('transfer', { concurrency: false }, () => {
|
|
52
|
+
describe('package transfer', { concurrency: false }, () => {
|
|
53
53
|
it('exports package from local repo and imports to remote', async (t) => {
|
|
54
54
|
const ctx = await withTransfer(t);
|
|
55
55
|
const { remoteUrl, workDir } = ctx;
|
|
@@ -74,10 +74,10 @@ export function transferTests(setup, getCredentialsEnv) {
|
|
|
74
74
|
assert.strictEqual(result.exitCode, 0, `Workspace create failed: ${result.stderr}`);
|
|
75
75
|
result = await runE3Command(['workspace', 'deploy', remoteUrl, wsName, 'transfer-l2r-pkg@1.0.0'], workDir, { env });
|
|
76
76
|
assert.strictEqual(result.exitCode, 0, `Deploy failed: stdout=${result.stdout}, stderr=${result.stderr}`);
|
|
77
|
-
result = await runE3Command(['
|
|
77
|
+
result = await runE3Command(['dataflow', 'run', remoteUrl, wsName], workDir, { env });
|
|
78
78
|
assert.strictEqual(result.exitCode, 0, `Start failed: stdout=${result.stdout}, stderr=${result.stderr}`);
|
|
79
79
|
// 5. Check output (10 * 2 = 20)
|
|
80
|
-
result = await runE3Command(['get', remoteUrl, `${wsName}.
|
|
80
|
+
result = await runE3Command(['dataset', 'get', remoteUrl, `${wsName}.compute`], workDir, { env });
|
|
81
81
|
assert.strictEqual(result.exitCode, 0, `Get failed: ${result.stderr}`);
|
|
82
82
|
assert.match(result.stdout, /20/);
|
|
83
83
|
// Cleanup
|
|
@@ -111,10 +111,10 @@ export function transferTests(setup, getCredentialsEnv) {
|
|
|
111
111
|
assert.strictEqual(result.exitCode, 0, `Workspace create failed: ${result.stderr}`);
|
|
112
112
|
result = await runE3Command(['workspace', 'deploy', localRepo, wsName, 'transfer-r2l-pkg@1.0.0'], workDir);
|
|
113
113
|
assert.strictEqual(result.exitCode, 0, `Deploy failed: ${result.stderr}`);
|
|
114
|
-
result = await runE3Command(['
|
|
114
|
+
result = await runE3Command(['dataflow', 'run', localRepo, wsName], workDir);
|
|
115
115
|
assert.strictEqual(result.exitCode, 0, `Start failed: ${result.stderr}`);
|
|
116
116
|
// 5. Check output (10 * 2 = 20)
|
|
117
|
-
result = await runE3Command(['get', localRepo, `${wsName}.
|
|
117
|
+
result = await runE3Command(['dataset', 'get', localRepo, `${wsName}.compute`], workDir);
|
|
118
118
|
assert.strictEqual(result.exitCode, 0, `Get failed: ${result.stderr}`);
|
|
119
119
|
assert.match(result.stdout, /20/);
|
|
120
120
|
}
|
|
@@ -123,7 +123,7 @@ export function transferTests(setup, getCredentialsEnv) {
|
|
|
123
123
|
}
|
|
124
124
|
});
|
|
125
125
|
});
|
|
126
|
-
describe('workspace transfer', { concurrency:
|
|
126
|
+
describe('workspace transfer', { concurrency: false }, () => {
|
|
127
127
|
it('exports workspace from local repo and imports as package to remote', async (t) => {
|
|
128
128
|
const ctx = await withTransfer(t);
|
|
129
129
|
const { remoteUrl, workDir } = ctx;
|
|
@@ -144,13 +144,13 @@ export function transferTests(setup, getCredentialsEnv) {
|
|
|
144
144
|
// 3. Modify input value (change 10 to 25)
|
|
145
145
|
const valueFile = join(ctx.tempDir, `value-${Date.now()}.east`);
|
|
146
146
|
writeFileSync(valueFile, '25');
|
|
147
|
-
result = await runE3Command(['set', localRepo, `${wsName}.
|
|
147
|
+
result = await runE3Command(['dataset', 'set', localRepo, `${wsName}.value`, valueFile], workDir);
|
|
148
148
|
assert.strictEqual(result.exitCode, 0, `Set failed: ${result.stderr}`);
|
|
149
149
|
// 4. Execute to populate output
|
|
150
|
-
result = await runE3Command(['
|
|
150
|
+
result = await runE3Command(['dataflow', 'run', localRepo, wsName], workDir);
|
|
151
151
|
assert.strictEqual(result.exitCode, 0, `Start failed: ${result.stderr}`);
|
|
152
152
|
// Verify local output (25 * 2 = 50)
|
|
153
|
-
result = await runE3Command(['get', localRepo, `${wsName}.
|
|
153
|
+
result = await runE3Command(['dataset', 'get', localRepo, `${wsName}.compute`], workDir);
|
|
154
154
|
assert.strictEqual(result.exitCode, 0, `Get local output failed: ${result.stderr}`);
|
|
155
155
|
assert.match(result.stdout, /50/);
|
|
156
156
|
// 5. Export workspace as package with custom name
|
|
@@ -176,13 +176,13 @@ export function transferTests(setup, getCredentialsEnv) {
|
|
|
176
176
|
result = await runE3Command(['workspace', 'deploy', remoteUrl, remoteWsName, wsSnapshotRef], workDir, { env });
|
|
177
177
|
assert.strictEqual(result.exitCode, 0, `Remote deploy failed: ${result.stderr}`);
|
|
178
178
|
// Input should be 25 (preserved from workspace)
|
|
179
|
-
result = await runE3Command(['get', remoteUrl, `${remoteWsName}.
|
|
179
|
+
result = await runE3Command(['dataset', 'get', remoteUrl, `${remoteWsName}.value`], workDir, { env });
|
|
180
180
|
assert.strictEqual(result.exitCode, 0, `Get remote input failed: ${result.stderr}`);
|
|
181
181
|
assert.match(result.stdout, /25/);
|
|
182
182
|
// Execute and verify output
|
|
183
|
-
result = await runE3Command(['
|
|
183
|
+
result = await runE3Command(['dataflow', 'run', remoteUrl, remoteWsName], workDir, { env });
|
|
184
184
|
assert.strictEqual(result.exitCode, 0, `Remote start failed: ${result.stderr}`);
|
|
185
|
-
result = await runE3Command(['get', remoteUrl, `${remoteWsName}.
|
|
185
|
+
result = await runE3Command(['dataset', 'get', remoteUrl, `${remoteWsName}.compute`], workDir, { env });
|
|
186
186
|
assert.strictEqual(result.exitCode, 0, `Get remote output failed: ${result.stderr}`);
|
|
187
187
|
assert.match(result.stdout, /50/);
|
|
188
188
|
// Cleanup
|
|
@@ -214,10 +214,10 @@ export function transferTests(setup, getCredentialsEnv) {
|
|
|
214
214
|
// 3. Modify input value (change 10 to 30)
|
|
215
215
|
const valueFile = join(ctx.tempDir, `value-remote-${Date.now()}.east`);
|
|
216
216
|
writeFileSync(valueFile, '30');
|
|
217
|
-
result = await runE3Command(['set', remoteUrl, `${wsName}.
|
|
217
|
+
result = await runE3Command(['dataset', 'set', remoteUrl, `${wsName}.value`, valueFile], workDir, { env });
|
|
218
218
|
assert.strictEqual(result.exitCode, 0, `Set failed: ${result.stderr}`);
|
|
219
219
|
// 4. Execute to populate output
|
|
220
|
-
result = await runE3Command(['
|
|
220
|
+
result = await runE3Command(['dataflow', 'run', remoteUrl, wsName], workDir, { env });
|
|
221
221
|
assert.strictEqual(result.exitCode, 0, `Start failed: ${result.stderr}`);
|
|
222
222
|
// 5. Export workspace (version is auto-generated)
|
|
223
223
|
result = await runE3Command(['workspace', 'export', remoteUrl, wsName, exportZip], workDir, { env });
|
|
@@ -238,13 +238,13 @@ export function transferTests(setup, getCredentialsEnv) {
|
|
|
238
238
|
result = await runE3Command(['workspace', 'deploy', localRepo, localWsName, importedPkgRef], workDir);
|
|
239
239
|
assert.strictEqual(result.exitCode, 0, `Local deploy failed: ${result.stderr}`);
|
|
240
240
|
// Input should be 30 (preserved from workspace)
|
|
241
|
-
result = await runE3Command(['get', localRepo, `${localWsName}.
|
|
241
|
+
result = await runE3Command(['dataset', 'get', localRepo, `${localWsName}.value`], workDir);
|
|
242
242
|
assert.strictEqual(result.exitCode, 0, `Get local input failed: ${result.stderr}`);
|
|
243
243
|
assert.match(result.stdout, /30/);
|
|
244
244
|
// Execute and verify output
|
|
245
|
-
result = await runE3Command(['
|
|
245
|
+
result = await runE3Command(['dataflow', 'run', localRepo, localWsName], workDir);
|
|
246
246
|
assert.strictEqual(result.exitCode, 0, `Local start failed: ${result.stderr}`);
|
|
247
|
-
result = await runE3Command(['get', localRepo, `${localWsName}.
|
|
247
|
+
result = await runE3Command(['dataset', 'get', localRepo, `${localWsName}.compute`], workDir);
|
|
248
248
|
assert.strictEqual(result.exitCode, 0, `Get local output failed: ${result.stderr}`);
|
|
249
249
|
assert.match(result.stdout, /60/); // 30 * 2 = 60
|
|
250
250
|
// Cleanup
|
|
@@ -255,7 +255,7 @@ export function transferTests(setup, getCredentialsEnv) {
|
|
|
255
255
|
}
|
|
256
256
|
});
|
|
257
257
|
});
|
|
258
|
-
describe('round-trip', { concurrency:
|
|
258
|
+
describe('round-trip', { concurrency: false }, () => {
|
|
259
259
|
it('round-trip local -> remote -> local preserves data integrity', async (t) => {
|
|
260
260
|
const ctx = await withTransfer(t);
|
|
261
261
|
const { remoteUrl, workDir } = ctx;
|
|
@@ -279,15 +279,15 @@ export function transferTests(setup, getCredentialsEnv) {
|
|
|
279
279
|
// Modify inputs: a=20, b=3 -> left=23, right=60 -> merge=83
|
|
280
280
|
const aFile = join(ctx.tempDir, `a-${Date.now()}.east`);
|
|
281
281
|
writeFileSync(aFile, '20');
|
|
282
|
-
result = await runE3Command(['set', localRepo1, `${ws1}.
|
|
282
|
+
result = await runE3Command(['dataset', 'set', localRepo1, `${ws1}.a`, aFile], workDir);
|
|
283
283
|
assert.strictEqual(result.exitCode, 0);
|
|
284
284
|
const bFile = join(ctx.tempDir, `b-${Date.now()}.east`);
|
|
285
285
|
writeFileSync(bFile, '3');
|
|
286
|
-
result = await runE3Command(['set', localRepo1, `${ws1}.
|
|
286
|
+
result = await runE3Command(['dataset', 'set', localRepo1, `${ws1}.b`, bFile], workDir);
|
|
287
287
|
assert.strictEqual(result.exitCode, 0);
|
|
288
|
-
result = await runE3Command(['
|
|
288
|
+
result = await runE3Command(['dataflow', 'run', localRepo1, ws1], workDir);
|
|
289
289
|
assert.strictEqual(result.exitCode, 0, `Local 1 start failed: ${result.stderr}`);
|
|
290
|
-
result = await runE3Command(['get', localRepo1, `${ws1}.
|
|
290
|
+
result = await runE3Command(['dataset', 'get', localRepo1, `${ws1}.merge`], workDir);
|
|
291
291
|
assert.strictEqual(result.exitCode, 0);
|
|
292
292
|
assert.match(result.stdout, /83/, 'Initial local execution should produce 83');
|
|
293
293
|
// 3. Export workspace to package (using --name only due to --version flag conflict)
|
|
@@ -306,9 +306,9 @@ export function transferTests(setup, getCredentialsEnv) {
|
|
|
306
306
|
assert.strictEqual(result.exitCode, 0);
|
|
307
307
|
result = await runE3Command(['workspace', 'deploy', remoteUrl, wsRemote, diamondSnapshotRef], workDir, { env });
|
|
308
308
|
assert.strictEqual(result.exitCode, 0);
|
|
309
|
-
result = await runE3Command(['
|
|
309
|
+
result = await runE3Command(['dataflow', 'run', remoteUrl, wsRemote], workDir, { env });
|
|
310
310
|
assert.strictEqual(result.exitCode, 0, `Remote start failed: ${result.stderr}`);
|
|
311
|
-
result = await runE3Command(['get', remoteUrl, `${wsRemote}.
|
|
311
|
+
result = await runE3Command(['dataset', 'get', remoteUrl, `${wsRemote}.merge`], workDir, { env });
|
|
312
312
|
assert.strictEqual(result.exitCode, 0);
|
|
313
313
|
assert.match(result.stdout, /83/, 'Remote execution should produce 83');
|
|
314
314
|
// 6. Export from remote
|
|
@@ -324,15 +324,15 @@ export function transferTests(setup, getCredentialsEnv) {
|
|
|
324
324
|
result = await runE3Command(['workspace', 'deploy', localRepo2, ws2, diamondSnapshotRef], workDir);
|
|
325
325
|
assert.strictEqual(result.exitCode, 0);
|
|
326
326
|
// Check preserved inputs
|
|
327
|
-
result = await runE3Command(['get', localRepo2, `${ws2}.
|
|
327
|
+
result = await runE3Command(['dataset', 'get', localRepo2, `${ws2}.a`], workDir);
|
|
328
328
|
assert.strictEqual(result.exitCode, 0);
|
|
329
329
|
assert.match(result.stdout, /20/, 'Input a should be preserved as 20');
|
|
330
|
-
result = await runE3Command(['get', localRepo2, `${ws2}.
|
|
330
|
+
result = await runE3Command(['dataset', 'get', localRepo2, `${ws2}.b`], workDir);
|
|
331
331
|
assert.strictEqual(result.exitCode, 0);
|
|
332
332
|
assert.match(result.stdout, /3/, 'Input b should be preserved as 3');
|
|
333
|
-
result = await runE3Command(['
|
|
333
|
+
result = await runE3Command(['dataflow', 'run', localRepo2, ws2], workDir);
|
|
334
334
|
assert.strictEqual(result.exitCode, 0, `Local 2 start failed: ${result.stderr}`);
|
|
335
|
-
result = await runE3Command(['get', localRepo2, `${ws2}.
|
|
335
|
+
result = await runE3Command(['dataset', 'get', localRepo2, `${ws2}.merge`], workDir);
|
|
336
336
|
assert.strictEqual(result.exitCode, 0);
|
|
337
337
|
assert.match(result.stdout, /83/, 'Round-trip should preserve data integrity');
|
|
338
338
|
// Cleanup
|
|
@@ -344,7 +344,7 @@ export function transferTests(setup, getCredentialsEnv) {
|
|
|
344
344
|
}
|
|
345
345
|
});
|
|
346
346
|
});
|
|
347
|
-
describe('execution logs', { concurrency:
|
|
347
|
+
describe('execution logs', { concurrency: false }, () => {
|
|
348
348
|
it('exports workspace with execution logs and imports them', async (t) => {
|
|
349
349
|
const ctx = await withTransfer(t);
|
|
350
350
|
const { workDir } = ctx;
|
|
@@ -362,10 +362,10 @@ export function transferTests(setup, getCredentialsEnv) {
|
|
|
362
362
|
assert.strictEqual(result.exitCode, 0, `Workspace create failed: ${result.stderr}`);
|
|
363
363
|
result = await runE3Command(['workspace', 'deploy', localRepo1, wsName, 'logs-pkg@1.0.0'], workDir);
|
|
364
364
|
assert.strictEqual(result.exitCode, 0, `Deploy failed: ${result.stderr}`);
|
|
365
|
-
result = await runE3Command(['
|
|
365
|
+
result = await runE3Command(['dataflow', 'run', localRepo1, wsName], workDir);
|
|
366
366
|
assert.strictEqual(result.exitCode, 0, `Start failed: ${result.stderr}`);
|
|
367
367
|
// Verify output exists (10 * 2 = 20)
|
|
368
|
-
result = await runE3Command(['get', localRepo1, `${wsName}.
|
|
368
|
+
result = await runE3Command(['dataset', 'get', localRepo1, `${wsName}.compute`], workDir);
|
|
369
369
|
assert.strictEqual(result.exitCode, 0, `Get output failed: ${result.stderr}`);
|
|
370
370
|
assert.match(result.stdout, /20/);
|
|
371
371
|
// 3. Export workspace (should include execution logs)
|
|
@@ -385,10 +385,10 @@ export function transferTests(setup, getCredentialsEnv) {
|
|
|
385
385
|
result = await runE3Command(['workspace', 'deploy', localRepo2, ws2Name, importedPkgRef], workDir);
|
|
386
386
|
assert.strictEqual(result.exitCode, 0, `Deploy 2 failed: ${result.stderr}`);
|
|
387
387
|
// 6. Execute in repo 2 - should be a cache hit
|
|
388
|
-
result = await runE3Command(['
|
|
388
|
+
result = await runE3Command(['dataflow', 'run', localRepo2, ws2Name], workDir);
|
|
389
389
|
assert.strictEqual(result.exitCode, 0, `Start 2 failed: ${result.stderr}`);
|
|
390
390
|
// Verify output is correct
|
|
391
|
-
result = await runE3Command(['get', localRepo2, `${ws2Name}.
|
|
391
|
+
result = await runE3Command(['dataset', 'get', localRepo2, `${ws2Name}.compute`], workDir);
|
|
392
392
|
assert.strictEqual(result.exitCode, 0, `Get output 2 failed: ${result.stderr}`);
|
|
393
393
|
assert.match(result.stdout, /20/);
|
|
394
394
|
}
|
|
@@ -414,7 +414,7 @@ export function transferTests(setup, getCredentialsEnv) {
|
|
|
414
414
|
assert.strictEqual(result.exitCode, 0);
|
|
415
415
|
result = await runE3Command(['workspace', 'deploy', localRepo, wsName, 'remote-logs-pkg@1.0.0'], workDir);
|
|
416
416
|
assert.strictEqual(result.exitCode, 0);
|
|
417
|
-
result = await runE3Command(['
|
|
417
|
+
result = await runE3Command(['dataflow', 'run', localRepo, wsName], workDir);
|
|
418
418
|
assert.strictEqual(result.exitCode, 0);
|
|
419
419
|
// 2. Export workspace with logs
|
|
420
420
|
result = await runE3Command(['workspace', 'export', localRepo, wsName, exportZip1, '--name', 'logs-transfer'], workDir);
|
|
@@ -440,9 +440,9 @@ export function transferTests(setup, getCredentialsEnv) {
|
|
|
440
440
|
assert.strictEqual(result.exitCode, 0);
|
|
441
441
|
result = await runE3Command(['workspace', 'deploy', localRepo2, ws2Name, importedPkgRef], workDir);
|
|
442
442
|
assert.strictEqual(result.exitCode, 0);
|
|
443
|
-
result = await runE3Command(['
|
|
443
|
+
result = await runE3Command(['dataflow', 'run', localRepo2, ws2Name], workDir);
|
|
444
444
|
assert.strictEqual(result.exitCode, 0);
|
|
445
|
-
result = await runE3Command(['get', localRepo2, `${ws2Name}.
|
|
445
|
+
result = await runE3Command(['dataset', 'get', localRepo2, `${ws2Name}.compute`], workDir);
|
|
446
446
|
assert.strictEqual(result.exitCode, 0);
|
|
447
447
|
assert.match(result.stdout, /20/);
|
|
448
448
|
}
|
|
@@ -455,7 +455,7 @@ export function transferTests(setup, getCredentialsEnv) {
|
|
|
455
455
|
}
|
|
456
456
|
});
|
|
457
457
|
});
|
|
458
|
-
describe('workspace import', { concurrency:
|
|
458
|
+
describe('workspace import', { concurrency: false }, () => {
|
|
459
459
|
it('imports workspace zip to local repo with preserved datasets', async (t) => {
|
|
460
460
|
const ctx = await withTransfer(t);
|
|
461
461
|
const { workDir } = ctx;
|
|
@@ -474,27 +474,27 @@ export function transferTests(setup, getCredentialsEnv) {
|
|
|
474
474
|
assert.strictEqual(result.exitCode, 0);
|
|
475
475
|
const valueFile = join(ctx.tempDir, `value-${Date.now()}.east`);
|
|
476
476
|
writeFileSync(valueFile, '25');
|
|
477
|
-
result = await runE3Command(['set', localRepo1, `${wsName}.
|
|
477
|
+
result = await runE3Command(['dataset', 'set', localRepo1, `${wsName}.value`, valueFile], workDir);
|
|
478
478
|
assert.strictEqual(result.exitCode, 0);
|
|
479
|
-
result = await runE3Command(['
|
|
479
|
+
result = await runE3Command(['dataflow', 'run', localRepo1, wsName], workDir);
|
|
480
480
|
assert.strictEqual(result.exitCode, 0, `Start failed: ${result.stderr}`);
|
|
481
481
|
// 2. Export workspace
|
|
482
482
|
result = await runE3Command(['workspace', 'export', localRepo1, wsName, exportZip, '--name', 'ws-import-snap'], workDir);
|
|
483
483
|
assert.strictEqual(result.exitCode, 0, `Export failed: ${result.stderr}`);
|
|
484
484
|
// 3. Use workspace import into second local repo
|
|
485
485
|
const destWs = `ws-dest-${Date.now()}`;
|
|
486
|
-
result = await runE3Command(['workspace', '
|
|
486
|
+
result = await runE3Command(['workspace', 'deploy', localRepo2, destWs, '--from-zip', exportZip], workDir);
|
|
487
487
|
assert.strictEqual(result.exitCode, 0, `Workspace import failed: stdout=${result.stdout}, stderr=${result.stderr}`);
|
|
488
488
|
assert.match(result.stdout, /Imported ws-import-snap@/);
|
|
489
489
|
assert.match(result.stdout, /Deployed to workspace/);
|
|
490
490
|
// 4. Verify preserved input value
|
|
491
|
-
result = await runE3Command(['get', localRepo2, `${destWs}.
|
|
491
|
+
result = await runE3Command(['dataset', 'get', localRepo2, `${destWs}.value`], workDir);
|
|
492
492
|
assert.strictEqual(result.exitCode, 0, `Get input failed: ${result.stderr}`);
|
|
493
493
|
assert.match(result.stdout, /25/);
|
|
494
494
|
// 5. Execute and verify output (25 * 2 = 50)
|
|
495
|
-
result = await runE3Command(['
|
|
495
|
+
result = await runE3Command(['dataflow', 'run', localRepo2, destWs], workDir);
|
|
496
496
|
assert.strictEqual(result.exitCode, 0, `Start dest failed: ${result.stderr}`);
|
|
497
|
-
result = await runE3Command(['get', localRepo2, `${destWs}.
|
|
497
|
+
result = await runE3Command(['dataset', 'get', localRepo2, `${destWs}.compute`], workDir);
|
|
498
498
|
assert.strictEqual(result.exitCode, 0, `Get output failed: ${result.stderr}`);
|
|
499
499
|
assert.match(result.stdout, /50/);
|
|
500
500
|
}
|
|
@@ -519,10 +519,10 @@ export function transferTests(setup, getCredentialsEnv) {
|
|
|
519
519
|
assert.strictEqual(result.exitCode, 0);
|
|
520
520
|
result = await runE3Command(['workspace', 'deploy', localRepo, wsName, 'ws-import-remote-pkg@1.0.0'], workDir);
|
|
521
521
|
assert.strictEqual(result.exitCode, 0);
|
|
522
|
-
result = await runE3Command(['
|
|
522
|
+
result = await runE3Command(['dataflow', 'run', localRepo, wsName], workDir);
|
|
523
523
|
assert.strictEqual(result.exitCode, 0, `Start failed: ${result.stderr}`);
|
|
524
524
|
// Verify local output (10 * 2 = 20)
|
|
525
|
-
result = await runE3Command(['get', localRepo, `${wsName}.
|
|
525
|
+
result = await runE3Command(['dataset', 'get', localRepo, `${wsName}.compute`], workDir);
|
|
526
526
|
assert.strictEqual(result.exitCode, 0);
|
|
527
527
|
assert.match(result.stdout, /20/);
|
|
528
528
|
// 2. Export workspace
|
|
@@ -530,14 +530,14 @@ export function transferTests(setup, getCredentialsEnv) {
|
|
|
530
530
|
assert.strictEqual(result.exitCode, 0, `Export failed: ${result.stderr}`);
|
|
531
531
|
// 3. Use workspace import to remote
|
|
532
532
|
const destWs = `ws-dest-remote-${Date.now()}`;
|
|
533
|
-
result = await runE3Command(['workspace', '
|
|
533
|
+
result = await runE3Command(['workspace', 'deploy', remoteUrl, destWs, '--from-zip', exportZip], workDir, { env });
|
|
534
534
|
assert.strictEqual(result.exitCode, 0, `Workspace import failed: stdout=${result.stdout}, stderr=${result.stderr}`);
|
|
535
535
|
assert.match(result.stdout, /Imported ws-import-remote-snap@/);
|
|
536
536
|
assert.match(result.stdout, /Deployed to workspace/);
|
|
537
537
|
// 4. Execute on remote — execution history should allow cache hit
|
|
538
|
-
result = await runE3Command(['
|
|
538
|
+
result = await runE3Command(['dataflow', 'run', remoteUrl, destWs], workDir, { env });
|
|
539
539
|
assert.strictEqual(result.exitCode, 0, `Remote start failed: ${result.stderr}`);
|
|
540
|
-
result = await runE3Command(['get', remoteUrl, `${destWs}.
|
|
540
|
+
result = await runE3Command(['dataset', 'get', remoteUrl, `${destWs}.compute`], workDir, { env });
|
|
541
541
|
assert.strictEqual(result.exitCode, 0, `Get remote output failed: ${result.stderr}`);
|
|
542
542
|
assert.match(result.stdout, /20/);
|
|
543
543
|
// Cleanup
|
|
@@ -566,16 +566,16 @@ export function transferTests(setup, getCredentialsEnv) {
|
|
|
566
566
|
// Set custom inputs: a=20, b=3
|
|
567
567
|
const aFile = join(ctx.tempDir, `a-${Date.now()}.east`);
|
|
568
568
|
writeFileSync(aFile, '20');
|
|
569
|
-
result = await runE3Command(['set', localRepo1, `${wsName}.
|
|
569
|
+
result = await runE3Command(['dataset', 'set', localRepo1, `${wsName}.a`, aFile], workDir);
|
|
570
570
|
assert.strictEqual(result.exitCode, 0);
|
|
571
571
|
const bFile = join(ctx.tempDir, `b-${Date.now()}.east`);
|
|
572
572
|
writeFileSync(bFile, '3');
|
|
573
|
-
result = await runE3Command(['set', localRepo1, `${wsName}.
|
|
573
|
+
result = await runE3Command(['dataset', 'set', localRepo1, `${wsName}.b`, bFile], workDir);
|
|
574
574
|
assert.strictEqual(result.exitCode, 0);
|
|
575
|
-
result = await runE3Command(['
|
|
575
|
+
result = await runE3Command(['dataflow', 'run', localRepo1, wsName], workDir);
|
|
576
576
|
assert.strictEqual(result.exitCode, 0, `Start failed: ${result.stderr}`);
|
|
577
577
|
// Verify: left=23, right=60, merge=83
|
|
578
|
-
result = await runE3Command(['get', localRepo1, `${wsName}.
|
|
578
|
+
result = await runE3Command(['dataset', 'get', localRepo1, `${wsName}.merge`], workDir);
|
|
579
579
|
assert.strictEqual(result.exitCode, 0);
|
|
580
580
|
assert.match(result.stdout, /83/);
|
|
581
581
|
// 2. Export workspace
|
|
@@ -583,19 +583,19 @@ export function transferTests(setup, getCredentialsEnv) {
|
|
|
583
583
|
assert.strictEqual(result.exitCode, 0, `Export failed: ${result.stderr}`);
|
|
584
584
|
// 3. Workspace import into second local repo
|
|
585
585
|
const destWs = `ws-diamond-dest-${Date.now()}`;
|
|
586
|
-
result = await runE3Command(['workspace', '
|
|
586
|
+
result = await runE3Command(['workspace', 'deploy', localRepo2, destWs, '--from-zip', exportZip], workDir);
|
|
587
587
|
assert.strictEqual(result.exitCode, 0, `Workspace import failed: stdout=${result.stdout}, stderr=${result.stderr}`);
|
|
588
588
|
// 4. Verify inputs preserved
|
|
589
|
-
result = await runE3Command(['get', localRepo2, `${destWs}.
|
|
589
|
+
result = await runE3Command(['dataset', 'get', localRepo2, `${destWs}.a`], workDir);
|
|
590
590
|
assert.strictEqual(result.exitCode, 0);
|
|
591
591
|
assert.match(result.stdout, /20/, 'Input a should be preserved as 20');
|
|
592
|
-
result = await runE3Command(['get', localRepo2, `${destWs}.
|
|
592
|
+
result = await runE3Command(['dataset', 'get', localRepo2, `${destWs}.b`], workDir);
|
|
593
593
|
assert.strictEqual(result.exitCode, 0);
|
|
594
594
|
assert.match(result.stdout, /3/, 'Input b should be preserved as 3');
|
|
595
595
|
// 5. Execute and verify merge output
|
|
596
|
-
result = await runE3Command(['
|
|
596
|
+
result = await runE3Command(['dataflow', 'run', localRepo2, destWs], workDir);
|
|
597
597
|
assert.strictEqual(result.exitCode, 0, `Start dest failed: ${result.stderr}`);
|
|
598
|
-
result = await runE3Command(['get', localRepo2, `${destWs}.
|
|
598
|
+
result = await runE3Command(['dataset', 'get', localRepo2, `${destWs}.merge`], workDir);
|
|
599
599
|
assert.strictEqual(result.exitCode, 0);
|
|
600
600
|
assert.match(result.stdout, /83/, 'Diamond merge should produce 83');
|
|
601
601
|
}
|
|
@@ -620,21 +620,21 @@ export function transferTests(setup, getCredentialsEnv) {
|
|
|
620
620
|
assert.strictEqual(result.exitCode, 0);
|
|
621
621
|
result = await runE3Command(['workspace', 'deploy', localRepo1, wsName, 'ws-import-idemp@1.0.0'], workDir);
|
|
622
622
|
assert.strictEqual(result.exitCode, 0);
|
|
623
|
-
result = await runE3Command(['
|
|
623
|
+
result = await runE3Command(['dataflow', 'run', localRepo1, wsName], workDir);
|
|
624
624
|
assert.strictEqual(result.exitCode, 0);
|
|
625
625
|
result = await runE3Command(['workspace', 'export', localRepo1, wsName, exportZip, '--name', 'idemp-snap'], workDir);
|
|
626
626
|
assert.strictEqual(result.exitCode, 0, `Export failed: ${result.stderr}`);
|
|
627
627
|
// 2. First workspace import
|
|
628
628
|
const destWs = `ws-idemp-dest-${Date.now()}`;
|
|
629
|
-
result = await runE3Command(['workspace', '
|
|
629
|
+
result = await runE3Command(['workspace', 'deploy', localRepo2, destWs, '--from-zip', exportZip], workDir);
|
|
630
630
|
assert.strictEqual(result.exitCode, 0, `First import failed: stdout=${result.stdout}, stderr=${result.stderr}`);
|
|
631
631
|
// 3. Second workspace import — should succeed (idempotent)
|
|
632
|
-
result = await runE3Command(['workspace', '
|
|
632
|
+
result = await runE3Command(['workspace', 'deploy', localRepo2, destWs, '--from-zip', exportZip], workDir);
|
|
633
633
|
assert.strictEqual(result.exitCode, 0, `Second import failed (not idempotent): stdout=${result.stdout}, stderr=${result.stderr}`);
|
|
634
634
|
// 4. Verify data still correct after double import
|
|
635
|
-
result = await runE3Command(['
|
|
635
|
+
result = await runE3Command(['dataflow', 'run', localRepo2, destWs], workDir);
|
|
636
636
|
assert.strictEqual(result.exitCode, 0, `Start after double import failed: ${result.stderr}`);
|
|
637
|
-
result = await runE3Command(['get', localRepo2, `${destWs}.
|
|
637
|
+
result = await runE3Command(['dataset', 'get', localRepo2, `${destWs}.compute`], workDir);
|
|
638
638
|
assert.strictEqual(result.exitCode, 0);
|
|
639
639
|
assert.match(result.stdout, /20/); // 10 * 2 = 20 (default input)
|
|
640
640
|
}
|
|
@@ -644,7 +644,7 @@ export function transferTests(setup, getCredentialsEnv) {
|
|
|
644
644
|
}
|
|
645
645
|
});
|
|
646
646
|
});
|
|
647
|
-
describe('error handling', { concurrency:
|
|
647
|
+
describe('error handling', { concurrency: false }, () => {
|
|
648
648
|
it('returns error when exporting non-existent package', async (t) => {
|
|
649
649
|
const ctx = await withTransfer(t);
|
|
650
650
|
const { remoteUrl, workDir } = ctx;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transfer.js","sourceRoot":"","sources":["../../../src/suites/transfer.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"transfer.js","sourceRoot":"","sources":["../../../src/suites/transfer.ts"],"names":[],"mappings":"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"}
|
|
@@ -28,7 +28,7 @@ export function workspaceTests(setup) {
|
|
|
28
28
|
await workspaceDeploy(ctx.config.baseUrl, ctx.repoName, 'deployed-ws', 'compute-pkg@1.0.0', opts);
|
|
29
29
|
return ctx;
|
|
30
30
|
};
|
|
31
|
-
describe('workspaces', { concurrency:
|
|
31
|
+
describe('workspaces', { concurrency: false }, () => {
|
|
32
32
|
it('workspaceList returns empty initially', async (t) => {
|
|
33
33
|
const ctx = await setup(t);
|
|
34
34
|
const opts = await ctx.opts();
|
|
@@ -57,7 +57,7 @@ export function workspaceTests(setup) {
|
|
|
57
57
|
workspaces = await workspaceList(ctx.config.baseUrl, ctx.repoName, opts);
|
|
58
58
|
assert.strictEqual(workspaces.length, 0);
|
|
59
59
|
});
|
|
60
|
-
describe('with deployed package', { concurrency:
|
|
60
|
+
describe('with deployed package', { concurrency: false }, () => {
|
|
61
61
|
it('workspaceGet returns deployed state', async (t) => {
|
|
62
62
|
const ctx = await withDeployedPackage(t);
|
|
63
63
|
const opts = await ctx.opts();
|