n8n 1.77.2 → 1.78.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (163) hide show
  1. package/dist/active-executions.d.ts +2 -2
  2. package/dist/active-executions.js +9 -7
  3. package/dist/active-executions.js.map +1 -1
  4. package/dist/build.tsbuildinfo +1 -1
  5. package/dist/config/index.d.ts +0 -3
  6. package/dist/config/schema.d.ts +0 -8
  7. package/dist/config/schema.js +0 -8
  8. package/dist/config/schema.js.map +1 -1
  9. package/dist/constants.d.ts +1 -0
  10. package/dist/constants.js +1 -0
  11. package/dist/constants.js.map +1 -1
  12. package/dist/controllers/api-keys.controller.d.ts +24 -5
  13. package/dist/controllers/api-keys.controller.js +49 -9
  14. package/dist/controllers/api-keys.controller.js.map +1 -1
  15. package/dist/databases/entities/index.d.ts +2 -0
  16. package/dist/databases/entities/index.js +2 -0
  17. package/dist/databases/entities/index.js.map +1 -1
  18. package/dist/databases/entities/test-case-execution.ee.d.ts +19 -0
  19. package/dist/databases/entities/test-case-execution.ee.js +83 -0
  20. package/dist/databases/entities/test-case-execution.ee.js.map +1 -0
  21. package/dist/databases/migrations/common/1736947513045-CreateTestCaseExecutionTable.d.ts +5 -0
  22. package/dist/databases/migrations/common/1736947513045-CreateTestCaseExecutionTable.js +36 -0
  23. package/dist/databases/migrations/common/1736947513045-CreateTestCaseExecutionTable.js.map +1 -0
  24. package/dist/databases/migrations/mysqldb/index.js +2 -0
  25. package/dist/databases/migrations/mysqldb/index.js.map +1 -1
  26. package/dist/databases/migrations/postgresdb/index.js +2 -0
  27. package/dist/databases/migrations/postgresdb/index.js.map +1 -1
  28. package/dist/databases/migrations/sqlite/index.js +2 -0
  29. package/dist/databases/migrations/sqlite/index.js.map +1 -1
  30. package/dist/databases/repositories/test-case-execution.repository.ee.d.ts +12 -0
  31. package/dist/databases/repositories/test-case-execution.repository.ee.js +73 -0
  32. package/dist/databases/repositories/test-case-execution.repository.ee.js.map +1 -0
  33. package/dist/databases/repositories/test-run.repository.ee.d.ts +4 -3
  34. package/dist/databases/repositories/test-run.repository.ee.js +9 -6
  35. package/dist/databases/repositories/test-run.repository.ee.js.map +1 -1
  36. package/dist/databases/repositories/workflow.repository.js +4 -0
  37. package/dist/databases/repositories/workflow.repository.js.map +1 -1
  38. package/dist/evaluation.ee/test-definitions.types.ee.d.ts +1 -0
  39. package/dist/evaluation.ee/test-runner/evaluation-metrics.ee.d.ts +1 -1
  40. package/dist/evaluation.ee/test-runner/evaluation-metrics.ee.js +3 -0
  41. package/dist/evaluation.ee/test-runner/evaluation-metrics.ee.js.map +1 -1
  42. package/dist/evaluation.ee/test-runner/test-runner.service.ee.d.ts +5 -1
  43. package/dist/evaluation.ee/test-runner/test-runner.service.ee.js +100 -21
  44. package/dist/evaluation.ee/test-runner/test-runner.service.ee.js.map +1 -1
  45. package/dist/evaluation.ee/test-runs.controller.ee.d.ts +4 -1
  46. package/dist/evaluation.ee/test-runs.controller.ee.js +17 -1
  47. package/dist/evaluation.ee/test-runs.controller.ee.js.map +1 -1
  48. package/dist/events/relays/telemetry.event-relay.js +1 -3
  49. package/dist/events/relays/telemetry.event-relay.js.map +1 -1
  50. package/dist/execution-lifecycle/execution-lifecycle-hooks.d.ts +10 -3
  51. package/dist/execution-lifecycle/execution-lifecycle-hooks.js +82 -74
  52. package/dist/execution-lifecycle/execution-lifecycle-hooks.js.map +1 -1
  53. package/dist/execution-lifecycle/save-execution-progress.d.ts +2 -2
  54. package/dist/execution-lifecycle/save-execution-progress.js +22 -35
  55. package/dist/execution-lifecycle/save-execution-progress.js.map +1 -1
  56. package/dist/execution-lifecycle/to-save-settings.d.ts +4 -3
  57. package/dist/execution-lifecycle/to-save-settings.js.map +1 -1
  58. package/dist/executions/execution-recovery.service.d.ts +1 -3
  59. package/dist/executions/execution-recovery.service.js +3 -11
  60. package/dist/executions/execution-recovery.service.js.map +1 -1
  61. package/dist/license.d.ts +1 -0
  62. package/dist/license.js +6 -1
  63. package/dist/license.js.map +1 -1
  64. package/dist/load-nodes-and-credentials.js +0 -7
  65. package/dist/load-nodes-and-credentials.js.map +1 -1
  66. package/dist/manual-execution.service.js +1 -1
  67. package/dist/manual-execution.service.js.map +1 -1
  68. package/dist/middlewares/list-query/dtos/workflow.sort-by.dto.d.ts +8 -0
  69. package/dist/middlewares/list-query/dtos/workflow.sort-by.dto.js +37 -0
  70. package/dist/middlewares/list-query/dtos/workflow.sort-by.dto.js.map +1 -0
  71. package/dist/middlewares/list-query/index.d.ts +1 -1
  72. package/dist/middlewares/list-query/index.js +2 -0
  73. package/dist/middlewares/list-query/index.js.map +1 -1
  74. package/dist/middlewares/list-query/sort-by.d.ts +2 -0
  75. package/dist/middlewares/list-query/sort-by.js +68 -0
  76. package/dist/middlewares/list-query/sort-by.js.map +1 -0
  77. package/dist/node-types.js +12 -0
  78. package/dist/node-types.js.map +1 -1
  79. package/dist/requests.d.ts +4 -5
  80. package/dist/requests.js.map +1 -1
  81. package/dist/scaling/job-processor.js +2 -2
  82. package/dist/scaling/job-processor.js.map +1 -1
  83. package/dist/server.js.map +1 -1
  84. package/dist/services/credentials-tester.service.js +6 -4
  85. package/dist/services/credentials-tester.service.js.map +1 -1
  86. package/dist/services/dynamic-node-parameters.service.js +6 -4
  87. package/dist/services/dynamic-node-parameters.service.js.map +1 -1
  88. package/dist/services/frontend.service.js +2 -0
  89. package/dist/services/frontend.service.js.map +1 -1
  90. package/dist/services/public-api-key.service.d.ts +6 -1
  91. package/dist/services/public-api-key.service.js +34 -12
  92. package/dist/services/public-api-key.service.js.map +1 -1
  93. package/dist/task-runners/default-task-runner-disconnect-analyzer.d.ts +1 -1
  94. package/dist/task-runners/default-task-runner-disconnect-analyzer.js.map +1 -1
  95. package/dist/task-runners/errors/task-runner-oom-error.d.ts +1 -1
  96. package/dist/task-runners/internal-task-runner-disconnect-analyzer.d.ts +1 -1
  97. package/dist/task-runners/internal-task-runner-disconnect-analyzer.js.map +1 -1
  98. package/dist/task-runners/task-broker/auth/task-broker-auth.controller.d.ts +12 -0
  99. package/dist/task-runners/{auth/task-runner-auth.controller.js → task-broker/auth/task-broker-auth.controller.js} +17 -17
  100. package/dist/task-runners/task-broker/auth/task-broker-auth.controller.js.map +1 -0
  101. package/dist/task-runners/{auth/task-runner-auth.schema.d.ts → task-broker/auth/task-broker-auth.schema.d.ts} +1 -1
  102. package/dist/task-runners/task-broker/auth/task-broker-auth.schema.js +8 -0
  103. package/dist/task-runners/task-broker/auth/task-broker-auth.schema.js.map +1 -0
  104. package/dist/task-runners/{auth/task-runner-auth.service.d.ts → task-broker/auth/task-broker-auth.service.d.ts} +2 -2
  105. package/dist/task-runners/{auth/task-runner-auth.service.js → task-broker/auth/task-broker-auth.service.js} +8 -8
  106. package/dist/task-runners/task-broker/auth/task-broker-auth.service.js.map +1 -0
  107. package/dist/task-runners/task-broker/errors/task-deferred.error.d.ts +4 -0
  108. package/dist/task-runners/task-broker/errors/task-deferred.error.js +11 -0
  109. package/dist/task-runners/task-broker/errors/task-deferred.error.js.map +1 -0
  110. package/dist/task-runners/{errors.d.ts → task-broker/errors/task-reject.error.d.ts} +0 -5
  111. package/dist/task-runners/task-broker/errors/task-reject.error.js +12 -0
  112. package/dist/task-runners/task-broker/errors/task-reject.error.js.map +1 -0
  113. package/dist/task-runners/task-broker/errors/task-runner-timeout.error.js.map +1 -0
  114. package/dist/task-runners/{task-runner-server.d.ts → task-broker/task-broker-server.d.ts} +6 -6
  115. package/dist/task-runners/{task-runner-server.js → task-broker/task-broker-server.js} +20 -20
  116. package/dist/task-runners/task-broker/task-broker-server.js.map +1 -0
  117. package/dist/task-runners/{task-runner-types.d.ts → task-broker/task-broker-types.d.ts} +5 -11
  118. package/dist/task-runners/{task-runner-types.js → task-broker/task-broker-types.js} +1 -1
  119. package/dist/task-runners/task-broker/task-broker-types.js.map +1 -0
  120. package/dist/task-runners/{task-runner-ws-server.d.ts → task-broker/task-broker-ws-server.d.ts} +6 -6
  121. package/dist/task-runners/{task-runner-ws-server.js → task-broker/task-broker-ws-server.js} +9 -9
  122. package/dist/task-runners/task-broker/task-broker-ws-server.js.map +1 -0
  123. package/dist/task-runners/{task-broker.service.d.ts → task-broker/task-broker.service.d.ts} +3 -2
  124. package/dist/task-runners/{task-broker.service.js → task-broker/task-broker.service.js} +12 -11
  125. package/dist/task-runners/task-broker/task-broker.service.js.map +1 -0
  126. package/dist/task-runners/task-managers/local-task-requester.d.ts +1 -1
  127. package/dist/task-runners/task-managers/local-task-requester.js +1 -1
  128. package/dist/task-runners/task-managers/local-task-requester.js.map +1 -1
  129. package/dist/task-runners/task-runner-module.d.ts +3 -3
  130. package/dist/task-runners/task-runner-module.js +12 -12
  131. package/dist/task-runners/task-runner-module.js.map +1 -1
  132. package/dist/task-runners/task-runner-process.d.ts +2 -2
  133. package/dist/task-runners/task-runner-process.js +2 -2
  134. package/dist/task-runners/task-runner-process.js.map +1 -1
  135. package/dist/workflow-execute-additional-data.js +0 -3
  136. package/dist/workflow-execute-additional-data.js.map +1 -1
  137. package/dist/workflow-runner.d.ts +1 -3
  138. package/dist/workflow-runner.js +14 -22
  139. package/dist/workflow-runner.js.map +1 -1
  140. package/dist/workflows/workflow-execution.service.d.ts +1 -1
  141. package/dist/workflows/workflow-execution.service.js +2 -2
  142. package/dist/workflows/workflow-execution.service.js.map +1 -1
  143. package/dist/workflows/workflow.request.d.ts +1 -3
  144. package/dist/workflows/workflows.controller.d.ts +2 -2
  145. package/dist/workflows/workflows.controller.js +4 -6
  146. package/dist/workflows/workflows.controller.js.map +1 -1
  147. package/package.json +12 -12
  148. package/templates/form-trigger-completion.handlebars +46 -42
  149. package/templates/form-trigger.handlebars +63 -8
  150. package/dist/task-runners/auth/task-runner-auth.controller.d.ts +0 -12
  151. package/dist/task-runners/auth/task-runner-auth.controller.js.map +0 -1
  152. package/dist/task-runners/auth/task-runner-auth.schema.js +0 -8
  153. package/dist/task-runners/auth/task-runner-auth.schema.js.map +0 -1
  154. package/dist/task-runners/auth/task-runner-auth.service.js.map +0 -1
  155. package/dist/task-runners/errors/task-runner-timeout.error.js.map +0 -1
  156. package/dist/task-runners/errors.js +0 -21
  157. package/dist/task-runners/errors.js.map +0 -1
  158. package/dist/task-runners/task-broker.service.js.map +0 -1
  159. package/dist/task-runners/task-runner-server.js.map +0 -1
  160. package/dist/task-runners/task-runner-types.js.map +0 -1
  161. package/dist/task-runners/task-runner-ws-server.js.map +0 -1
  162. /package/dist/task-runners/{errors → task-broker/errors}/task-runner-timeout.error.d.ts +0 -0
  163. /package/dist/task-runners/{errors → task-broker/errors}/task-runner-timeout.error.js +0 -0
@@ -0,0 +1,73 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.TestCaseExecutionRepository = void 0;
13
+ const di_1 = require("@n8n/di");
14
+ const typeorm_1 = require("@n8n/typeorm");
15
+ const test_case_execution_ee_1 = require("../../databases/entities/test-case-execution.ee");
16
+ let TestCaseExecutionRepository = class TestCaseExecutionRepository extends typeorm_1.Repository {
17
+ constructor(dataSource) {
18
+ super(test_case_execution_ee_1.TestCaseExecution, dataSource.manager);
19
+ }
20
+ async createBatch(testRunId, pastExecutionIds) {
21
+ const mappings = this.create(pastExecutionIds.map((id) => ({
22
+ testRun: {
23
+ id: testRunId,
24
+ },
25
+ pastExecution: {
26
+ id,
27
+ },
28
+ status: 'new',
29
+ })));
30
+ return await this.save(mappings);
31
+ }
32
+ async markAsRunning(testRunId, pastExecutionId, executionId) {
33
+ return await this.update({ testRun: { id: testRunId }, pastExecutionId }, {
34
+ status: 'running',
35
+ executionId,
36
+ runAt: new Date(),
37
+ });
38
+ }
39
+ async markAsEvaluationRunning(testRunId, pastExecutionId, evaluationExecutionId) {
40
+ return await this.update({ testRun: { id: testRunId }, pastExecutionId }, {
41
+ status: 'evaluation_running',
42
+ evaluationExecutionId,
43
+ });
44
+ }
45
+ async markAsCompleted(testRunId, pastExecutionId, metrics, trx) {
46
+ trx = trx ?? this.manager;
47
+ return await trx.update(test_case_execution_ee_1.TestCaseExecution, { testRun: { id: testRunId }, pastExecutionId }, {
48
+ status: 'success',
49
+ completedAt: new Date(),
50
+ metrics,
51
+ });
52
+ }
53
+ async markAllPendingAsCancelled(testRunId, trx) {
54
+ trx = trx ?? this.manager;
55
+ return await trx.update(test_case_execution_ee_1.TestCaseExecution, { testRun: { id: testRunId }, status: (0, typeorm_1.Not)((0, typeorm_1.In)(['success', 'error', 'cancelled'])) }, {
56
+ status: 'cancelled',
57
+ completedAt: new Date(),
58
+ });
59
+ }
60
+ async markAsFailed(testRunId, pastExecutionId, trx) {
61
+ trx = trx ?? this.manager;
62
+ return await trx.update(test_case_execution_ee_1.TestCaseExecution, { testRun: { id: testRunId }, pastExecutionId }, {
63
+ status: 'error',
64
+ completedAt: new Date(),
65
+ });
66
+ }
67
+ };
68
+ exports.TestCaseExecutionRepository = TestCaseExecutionRepository;
69
+ exports.TestCaseExecutionRepository = TestCaseExecutionRepository = __decorate([
70
+ (0, di_1.Service)(),
71
+ __metadata("design:paramtypes", [typeorm_1.DataSource])
72
+ ], TestCaseExecutionRepository);
73
+ //# sourceMappingURL=test-case-execution.repository.ee.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test-case-execution.repository.ee.js","sourceRoot":"","sources":["../../../src/databases/repositories/test-case-execution.repository.ee.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,gCAAkC;AAElC,0CAA+D;AAG/D,wFAAgF;AAGzE,IAAM,2BAA2B,GAAjC,MAAM,2BAA4B,SAAQ,oBAA6B;IAC7E,YAAY,UAAsB;QACjC,KAAK,CAAC,0CAAiB,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;IAC9C,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,SAAiB,EAAE,gBAA0B;QAC9D,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAC3B,gBAAgB,CAAC,GAAG,CAAiC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;YAC7D,OAAO,EAAE;gBACR,EAAE,EAAE,SAAS;aACb;YACD,aAAa,EAAE;gBACd,EAAE;aACF;YACD,MAAM,EAAE,KAAK;SACb,CAAC,CAAC,CACH,CAAC;QAEF,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAClC,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,SAAiB,EAAE,eAAuB,EAAE,WAAmB;QAClF,OAAO,MAAM,IAAI,CAAC,MAAM,CACvB,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,eAAe,EAAE,EAC/C;YACC,MAAM,EAAE,SAAS;YACjB,WAAW;YACX,KAAK,EAAE,IAAI,IAAI,EAAE;SACjB,CACD,CAAC;IACH,CAAC;IAED,KAAK,CAAC,uBAAuB,CAC5B,SAAiB,EACjB,eAAuB,EACvB,qBAA6B;QAE7B,OAAO,MAAM,IAAI,CAAC,MAAM,CACvB,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,eAAe,EAAE,EAC/C;YACC,MAAM,EAAE,oBAAoB;YAC5B,qBAAqB;SACrB,CACD,CAAC;IACH,CAAC;IAED,KAAK,CAAC,eAAe,CACpB,SAAiB,EACjB,eAAuB,EACvB,OAA+B,EAC/B,GAAmB;QAEnB,GAAG,GAAG,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC;QAE1B,OAAO,MAAM,GAAG,CAAC,MAAM,CACtB,0CAAiB,EACjB,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,eAAe,EAAE,EAC/C;YACC,MAAM,EAAE,SAAS;YACjB,WAAW,EAAE,IAAI,IAAI,EAAE;YACvB,OAAO;SACP,CACD,CAAC;IACH,CAAC;IAED,KAAK,CAAC,yBAAyB,CAAC,SAAiB,EAAE,GAAmB;QACrE,GAAG,GAAG,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC;QAE1B,OAAO,MAAM,GAAG,CAAC,MAAM,CACtB,0CAAiB,EACjB,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,MAAM,EAAE,IAAA,aAAG,EAAC,IAAA,YAAE,EAAC,CAAC,SAAS,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,EAClF;YACC,MAAM,EAAE,WAAW;YACnB,WAAW,EAAE,IAAI,IAAI,EAAE;SACvB,CACD,CAAC;IACH,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,SAAiB,EAAE,eAAuB,EAAE,GAAmB;QACjF,GAAG,GAAG,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC;QAE1B,OAAO,MAAM,GAAG,CAAC,MAAM,CACtB,0CAAiB,EACjB,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,eAAe,EAAE,EAC/C;YACC,MAAM,EAAE,OAAO;YACf,WAAW,EAAE,IAAI,IAAI,EAAE;SACvB,CACD,CAAC;IACH,CAAC;CACD,CAAA;AA1FY,kEAA2B;sCAA3B,2BAA2B;IADvC,IAAA,YAAO,GAAE;qCAEe,oBAAU;GADtB,2BAA2B,CA0FvC"}
@@ -1,3 +1,4 @@
1
+ import type { EntityManager } from '@n8n/typeorm';
1
2
  import { DataSource, Repository } from '@n8n/typeorm';
2
3
  import type { AggregatedTestRunMetrics } from '../../databases/entities/test-run.ee';
3
4
  import { TestRun } from '../../databases/entities/test-run.ee';
@@ -7,8 +8,8 @@ export declare class TestRunRepository extends Repository<TestRun> {
7
8
  createTestRun(testDefinitionId: string): Promise<TestRun>;
8
9
  markAsRunning(id: string, totalCases: number): Promise<import("@n8n/typeorm").UpdateResult>;
9
10
  markAsCompleted(id: string, metrics: AggregatedTestRunMetrics): Promise<import("@n8n/typeorm").UpdateResult>;
10
- markAsCancelled(id: string): Promise<import("@n8n/typeorm").UpdateResult>;
11
- incrementPassed(id: string): Promise<import("@n8n/typeorm").UpdateResult>;
12
- incrementFailed(id: string): Promise<import("@n8n/typeorm").UpdateResult>;
11
+ markAsCancelled(id: string, trx?: EntityManager): Promise<import("@n8n/typeorm").UpdateResult>;
12
+ incrementPassed(id: string, trx?: EntityManager): Promise<import("@n8n/typeorm").UpdateResult>;
13
+ incrementFailed(id: string, trx?: EntityManager): Promise<import("@n8n/typeorm").UpdateResult>;
13
14
  getMany(testDefinitionId: string, options: ListQuery.Options): Promise<TestRun[]>;
14
15
  }
@@ -36,14 +36,17 @@ let TestRunRepository = class TestRunRepository extends typeorm_1.Repository {
36
36
  async markAsCompleted(id, metrics) {
37
37
  return await this.update(id, { status: 'completed', completedAt: new Date(), metrics });
38
38
  }
39
- async markAsCancelled(id) {
40
- return await this.update(id, { status: 'cancelled' });
39
+ async markAsCancelled(id, trx) {
40
+ trx = trx ?? this.manager;
41
+ return await trx.update(test_run_ee_1.TestRun, id, { status: 'cancelled' });
41
42
  }
42
- async incrementPassed(id) {
43
- return await this.increment({ id }, 'passedCases', 1);
43
+ async incrementPassed(id, trx) {
44
+ trx = trx ?? this.manager;
45
+ return await trx.increment(test_run_ee_1.TestRun, { id }, 'passedCases', 1);
44
46
  }
45
- async incrementFailed(id) {
46
- return await this.increment({ id }, 'failedCases', 1);
47
+ async incrementFailed(id, trx) {
48
+ trx = trx ?? this.manager;
49
+ return await trx.increment(test_run_ee_1.TestRun, { id }, 'failedCases', 1);
47
50
  }
48
51
  async getMany(testDefinitionId, options) {
49
52
  const findManyOptions = {
@@ -1 +1 @@
1
- {"version":3,"file":"test-run.repository.ee.js","sourceRoot":"","sources":["../../../src/databases/repositories/test-run.repository.ee.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,gCAAkC;AAElC,0CAAsD;AAGtD,kEAA2D;AAIpD,IAAM,iBAAiB,GAAvB,MAAM,iBAAkB,SAAQ,oBAAmB;IACzD,YAAY,UAAsB;QACjC,KAAK,CAAC,qBAAO,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;IACpC,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,gBAAwB;QAC3C,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC;YAC3B,MAAM,EAAE,KAAK;YACb,cAAc,EAAE,EAAE,EAAE,EAAE,gBAAgB,EAAE;SACxC,CAAC,CAAC;QAEH,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACjC,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,EAAU,EAAE,UAAkB;QACjD,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE;YAC5B,MAAM,EAAE,SAAS;YACjB,KAAK,EAAE,IAAI,IAAI,EAAE;YACjB,UAAU;YACV,WAAW,EAAE,CAAC;YACd,WAAW,EAAE,CAAC;SACd,CAAC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,EAAU,EAAE,OAAiC;QAClE,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,IAAI,IAAI,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;IACzF,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,EAAU;QAC/B,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,CAAC;IACvD,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,EAAU;QAC/B,OAAO,MAAM,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC;IACvD,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,EAAU;QAC/B,OAAO,MAAM,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC;IACvD,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,gBAAwB,EAAE,OAA0B;QACjE,MAAM,eAAe,GAA6B;YACjD,KAAK,EAAE,EAAE,cAAc,EAAE,EAAE,EAAE,EAAE,gBAAgB,EAAE,EAAE;YACnD,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE;SAC5B,CAAC;QAEF,IAAI,OAAO,EAAE,IAAI,EAAE,CAAC;YACnB,eAAe,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;YACpC,eAAe,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;QACrC,CAAC;QAED,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IACzC,CAAC;CACD,CAAA;AArDY,8CAAiB;4BAAjB,iBAAiB;IAD7B,IAAA,YAAO,GAAE;qCAEe,oBAAU;GADtB,iBAAiB,CAqD7B"}
1
+ {"version":3,"file":"test-run.repository.ee.js","sourceRoot":"","sources":["../../../src/databases/repositories/test-run.repository.ee.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,gCAAkC;AAElC,0CAAsD;AAGtD,kEAA2D;AAIpD,IAAM,iBAAiB,GAAvB,MAAM,iBAAkB,SAAQ,oBAAmB;IACzD,YAAY,UAAsB;QACjC,KAAK,CAAC,qBAAO,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;IACpC,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,gBAAwB;QAC3C,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC;YAC3B,MAAM,EAAE,KAAK;YACb,cAAc,EAAE,EAAE,EAAE,EAAE,gBAAgB,EAAE;SACxC,CAAC,CAAC;QAEH,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACjC,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,EAAU,EAAE,UAAkB;QACjD,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE;YAC5B,MAAM,EAAE,SAAS;YACjB,KAAK,EAAE,IAAI,IAAI,EAAE;YACjB,UAAU;YACV,WAAW,EAAE,CAAC;YACd,WAAW,EAAE,CAAC;SACd,CAAC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,EAAU,EAAE,OAAiC;QAClE,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,IAAI,IAAI,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;IACzF,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,EAAU,EAAE,GAAmB;QACpD,GAAG,GAAG,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC;QAC1B,OAAO,MAAM,GAAG,CAAC,MAAM,CAAC,qBAAO,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,CAAC;IAC/D,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,EAAU,EAAE,GAAmB;QACpD,GAAG,GAAG,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC;QAC1B,OAAO,MAAM,GAAG,CAAC,SAAS,CAAC,qBAAO,EAAE,EAAE,EAAE,EAAE,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC;IAC/D,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,EAAU,EAAE,GAAmB;QACpD,GAAG,GAAG,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC;QAC1B,OAAO,MAAM,GAAG,CAAC,SAAS,CAAC,qBAAO,EAAE,EAAE,EAAE,EAAE,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC;IAC/D,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,gBAAwB,EAAE,OAA0B;QACjE,MAAM,eAAe,GAA6B;YACjD,KAAK,EAAE,EAAE,cAAc,EAAE,EAAE,EAAE,EAAE,gBAAgB,EAAE,EAAE;YACnD,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE;SAC5B,CAAC;QAEF,IAAI,OAAO,EAAE,IAAI,EAAE,CAAC;YACnB,eAAe,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;YACpC,eAAe,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;QACrC,CAAC;QAED,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IACzC,CAAC;CACD,CAAA;AAxDY,8CAAiB;4BAAjB,iBAAiB;IAD7B,IAAA,YAAO,GAAE;qCAEe,oBAAU;GADtB,iBAAiB,CAwD7B"}
@@ -126,6 +126,10 @@ let WorkflowRepository = class WorkflowRepository extends typeorm_1.Repository {
126
126
  if (isDefaultSelect || options?.select?.updatedAt === true) {
127
127
  findManyOptions.order = { updatedAt: 'ASC' };
128
128
  }
129
+ if (options.sortBy) {
130
+ const [column, order] = options.sortBy.split(':');
131
+ findManyOptions.order = { [column]: order };
132
+ }
129
133
  if (relations.length > 0) {
130
134
  findManyOptions.relations = relations;
131
135
  }
@@ -1 +1 @@
1
- {"version":3,"file":"workflow.repository.js","sourceRoot":"","sources":["../../../src/databases/repositories/workflow.repository.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workflow.repository.js","sourceRoot":"","sources":["../../../src/databases/repositories/workflow.repository.ts"],"names":[],"mappings":"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"}
@@ -58,4 +58,5 @@ export declare namespace TestRunsRequest {
58
58
  type GetOne = AuthenticatedRequest<RouteParams.TestId & RouteParams.TestRunId>;
59
59
  type Delete = AuthenticatedRequest<RouteParams.TestId & RouteParams.TestRunId>;
60
60
  type Cancel = AuthenticatedRequest<RouteParams.TestId & RouteParams.TestRunId>;
61
+ type GetCases = AuthenticatedRequest<RouteParams.TestId & RouteParams.TestRunId>;
61
62
  }
@@ -3,6 +3,6 @@ export declare class EvaluationMetrics {
3
3
  private readonly metricNames;
4
4
  private readonly rawMetricsByName;
5
5
  constructor(metricNames: Set<string>);
6
- addResults(result: IDataObject): void;
6
+ addResults(result: IDataObject): Record<string, number>;
7
7
  getAggregatedMetrics(): Record<string, number>;
8
8
  }
@@ -10,11 +10,14 @@ class EvaluationMetrics {
10
10
  }
11
11
  }
12
12
  addResults(result) {
13
+ const addedMetrics = {};
13
14
  for (const [metricName, metricValue] of Object.entries(result)) {
14
15
  if (typeof metricValue === 'number' && this.metricNames.has(metricName)) {
16
+ addedMetrics[metricName] = metricValue;
15
17
  this.rawMetricsByName.get(metricName).push(metricValue);
16
18
  }
17
19
  }
20
+ return addedMetrics;
18
21
  }
19
22
  getAggregatedMetrics() {
20
23
  const aggregatedMetrics = {};
@@ -1 +1 @@
1
- {"version":3,"file":"evaluation-metrics.ee.js","sourceRoot":"","sources":["../../../src/evaluation.ee/test-runner/evaluation-metrics.ee.ts"],"names":[],"mappings":";;;AAEA,MAAa,iBAAiB;IAG7B,YAA6B,WAAwB;QAAxB,gBAAW,GAAX,WAAW,CAAa;QAFpC,qBAAgB,GAAG,IAAI,GAAG,EAAoB,CAAC;QAG/D,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;YACtC,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;QAC3C,CAAC;IACF,CAAC;IAED,UAAU,CAAC,MAAmB;QAC7B,KAAK,MAAM,CAAC,UAAU,EAAE,WAAW,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YAChE,IAAI,OAAO,WAAW,KAAK,QAAQ,IAAI,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;gBACzE,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,UAAU,CAAE,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAC1D,CAAC;QACF,CAAC;IACF,CAAC;IAED,oBAAoB;QACnB,MAAM,iBAAiB,GAA2B,EAAE,CAAC;QAErD,KAAK,MAAM,CAAC,UAAU,EAAE,YAAY,CAAC,IAAI,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,EAAE,CAAC;YAC1E,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC7B,MAAM,SAAS,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC;gBAClE,iBAAiB,CAAC,UAAU,CAAC,GAAG,SAAS,GAAG,YAAY,CAAC,MAAM,CAAC;YACjE,CAAC;QACF,CAAC;QAED,OAAO,iBAAiB,CAAC;IAC1B,CAAC;CACD;AA7BD,8CA6BC"}
1
+ {"version":3,"file":"evaluation-metrics.ee.js","sourceRoot":"","sources":["../../../src/evaluation.ee/test-runner/evaluation-metrics.ee.ts"],"names":[],"mappings":";;;AAEA,MAAa,iBAAiB;IAG7B,YAA6B,WAAwB;QAAxB,gBAAW,GAAX,WAAW,CAAa;QAFpC,qBAAgB,GAAG,IAAI,GAAG,EAAoB,CAAC;QAG/D,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;YACtC,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;QAC3C,CAAC;IACF,CAAC;IAED,UAAU,CAAC,MAAmB;QAC7B,MAAM,YAAY,GAA2B,EAAE,CAAC;QAEhD,KAAK,MAAM,CAAC,UAAU,EAAE,WAAW,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YAChE,IAAI,OAAO,WAAW,KAAK,QAAQ,IAAI,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;gBACzE,YAAY,CAAC,UAAU,CAAC,GAAG,WAAW,CAAC;gBACvC,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,UAAU,CAAE,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAC1D,CAAC;QACF,CAAC;QAED,OAAO,YAAY,CAAC;IACrB,CAAC;IAED,oBAAoB;QACnB,MAAM,iBAAiB,GAA2B,EAAE,CAAC;QAErD,KAAK,MAAM,CAAC,UAAU,EAAE,YAAY,CAAC,IAAI,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,EAAE,CAAC;YAC1E,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC7B,MAAM,SAAS,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC;gBAClE,iBAAiB,CAAC,UAAU,CAAC,GAAG,SAAS,GAAG,YAAY,CAAC,MAAM,CAAC;YACjE,CAAC;QACF,CAAC;QAED,OAAO,iBAAiB,CAAC;IAC1B,CAAC;CACD;AAlCD,8CAkCC"}
@@ -4,23 +4,27 @@ import type { TestDefinition } from '../../databases/entities/test-definition.ee
4
4
  import type { TestRun } from '../../databases/entities/test-run.ee';
5
5
  import type { User } from '../../databases/entities/user';
6
6
  import { ExecutionRepository } from '../../databases/repositories/execution.repository';
7
+ import { TestCaseExecutionRepository } from '../../databases/repositories/test-case-execution.repository.ee';
7
8
  import { TestMetricRepository } from '../../databases/repositories/test-metric.repository.ee';
8
9
  import { TestRunRepository } from '../../databases/repositories/test-run.repository.ee';
9
10
  import { WorkflowRepository } from '../../databases/repositories/workflow.repository';
10
11
  import { NodeTypes } from '../../node-types';
12
+ import { Telemetry } from '../../telemetry';
11
13
  import { WorkflowRunner } from '../../workflow-runner';
12
14
  export declare class TestRunnerService {
13
15
  private readonly logger;
16
+ private readonly telemetry;
14
17
  private readonly workflowRepository;
15
18
  private readonly workflowRunner;
16
19
  private readonly executionRepository;
17
20
  private readonly activeExecutions;
18
21
  private readonly testRunRepository;
22
+ private readonly testCaseExecutionRepository;
19
23
  private readonly testMetricRepository;
20
24
  private readonly nodeTypes;
21
25
  private readonly errorReporter;
22
26
  private abortControllers;
23
- constructor(logger: Logger, workflowRepository: WorkflowRepository, workflowRunner: WorkflowRunner, executionRepository: ExecutionRepository, activeExecutions: ActiveExecutions, testRunRepository: TestRunRepository, testMetricRepository: TestMetricRepository, nodeTypes: NodeTypes, errorReporter: ErrorReporter);
27
+ constructor(logger: Logger, telemetry: Telemetry, workflowRepository: WorkflowRepository, workflowRunner: WorkflowRunner, executionRepository: ExecutionRepository, activeExecutions: ActiveExecutions, testRunRepository: TestRunRepository, testCaseExecutionRepository: TestCaseExecutionRepository, testMetricRepository: TestMetricRepository, nodeTypes: NodeTypes, errorReporter: ErrorReporter);
24
28
  private getStartNodesData;
25
29
  private runTestCase;
26
30
  private runTestCaseEvaluation;
@@ -1,10 +1,43 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
2
18
  var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
19
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
20
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
21
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
22
  return c > 3 && r && Object.defineProperty(target, key, r), r;
7
23
  };
24
+ var __importStar = (this && this.__importStar) || (function () {
25
+ var ownKeys = function(o) {
26
+ ownKeys = Object.getOwnPropertyNames || function (o) {
27
+ var ar = [];
28
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
29
+ return ar;
30
+ };
31
+ return ownKeys(o);
32
+ };
33
+ return function (mod) {
34
+ if (mod && mod.__esModule) return mod;
35
+ var result = {};
36
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
37
+ __setModuleDefault(result, mod);
38
+ return result;
39
+ };
40
+ })();
8
41
  var __metadata = (this && this.__metadata) || function (k, v) {
9
42
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
43
  };
@@ -20,22 +53,27 @@ const n8n_workflow_1 = require("n8n-workflow");
20
53
  const node_assert_1 = __importDefault(require("node:assert"));
21
54
  const active_executions_1 = require("../../active-executions");
22
55
  const execution_repository_1 = require("../../databases/repositories/execution.repository");
56
+ const test_case_execution_repository_ee_1 = require("../../databases/repositories/test-case-execution.repository.ee");
23
57
  const test_metric_repository_ee_1 = require("../../databases/repositories/test-metric.repository.ee");
24
58
  const test_run_repository_ee_1 = require("../../databases/repositories/test-run.repository.ee");
25
59
  const workflow_repository_1 = require("../../databases/repositories/workflow.repository");
60
+ const Db = __importStar(require("../../db"));
26
61
  const node_types_1 = require("../../node-types");
62
+ const telemetry_1 = require("../../telemetry");
27
63
  const workflow_execute_additional_data_1 = require("../../workflow-execute-additional-data");
28
64
  const workflow_runner_1 = require("../../workflow-runner");
29
65
  const evaluation_metrics_ee_1 = require("./evaluation-metrics.ee");
30
66
  const utils_ee_1 = require("./utils.ee");
31
67
  let TestRunnerService = class TestRunnerService {
32
- constructor(logger, workflowRepository, workflowRunner, executionRepository, activeExecutions, testRunRepository, testMetricRepository, nodeTypes, errorReporter) {
68
+ constructor(logger, telemetry, workflowRepository, workflowRunner, executionRepository, activeExecutions, testRunRepository, testCaseExecutionRepository, testMetricRepository, nodeTypes, errorReporter) {
33
69
  this.logger = logger;
70
+ this.telemetry = telemetry;
34
71
  this.workflowRepository = workflowRepository;
35
72
  this.workflowRunner = workflowRunner;
36
73
  this.executionRepository = executionRepository;
37
74
  this.activeExecutions = activeExecutions;
38
75
  this.testRunRepository = testRunRepository;
76
+ this.testCaseExecutionRepository = testCaseExecutionRepository;
39
77
  this.testMetricRepository = testMetricRepository;
40
78
  this.nodeTypes = nodeTypes;
41
79
  this.errorReporter = errorReporter;
@@ -67,7 +105,7 @@ let TestRunnerService = class TestRunnerService {
67
105
  triggerToStartFrom,
68
106
  };
69
107
  }
70
- async runTestCase(workflow, pastExecutionData, pastExecutionWorkflowData, mockedNodes, userId, abortSignal) {
108
+ async runTestCase(workflow, pastExecutionData, pastExecutionWorkflowData, mockedNodes, metadata, abortSignal) {
71
109
  if (abortSignal.aborted) {
72
110
  return;
73
111
  }
@@ -78,18 +116,19 @@ let TestRunnerService = class TestRunnerService {
78
116
  runData: {},
79
117
  pinData,
80
118
  workflowData: { ...workflow, pinData },
81
- userId,
82
- partialExecutionVersion: '1',
119
+ userId: metadata.userId,
120
+ partialExecutionVersion: 2,
83
121
  };
84
122
  const executionId = await this.workflowRunner.run(data);
85
123
  (0, node_assert_1.default)(executionId);
86
124
  abortSignal.addEventListener('abort', () => {
87
125
  this.activeExecutions.stopExecution(executionId);
88
126
  });
127
+ await this.testCaseExecutionRepository.markAsRunning(metadata.testRunId, metadata.pastExecutionId, executionId);
89
128
  const executePromise = this.activeExecutions.getPostExecutePromise(executionId);
90
129
  return await executePromise;
91
130
  }
92
- async runTestCaseEvaluation(evaluationWorkflow, expectedData, actualData, abortSignal, testRunId) {
131
+ async runTestCaseEvaluation(evaluationWorkflow, expectedData, actualData, abortSignal, metadata) {
93
132
  if (abortSignal.aborted) {
94
133
  return;
95
134
  }
@@ -100,17 +139,13 @@ let TestRunnerService = class TestRunnerService {
100
139
  },
101
140
  };
102
141
  const data = await (0, workflow_execute_additional_data_1.getRunData)(evaluationWorkflow, [evaluationInputData]);
103
- if (testRunId && data.executionData) {
104
- data.executionData.resultData.metadata = {
105
- testRunId,
106
- };
107
- }
108
142
  data.executionMode = 'evaluation';
109
143
  const executionId = await this.workflowRunner.run(data);
110
144
  (0, node_assert_1.default)(executionId);
111
145
  abortSignal.addEventListener('abort', () => {
112
146
  this.activeExecutions.stopExecution(executionId);
113
147
  });
148
+ await this.testCaseExecutionRepository.markAsEvaluationRunning(metadata.testRunId, metadata.pastExecutionId, executionId);
114
149
  const executePromise = this.activeExecutions.getPostExecutePromise(executionId);
115
150
  return await executePromise;
116
151
  }
@@ -141,6 +176,10 @@ let TestRunnerService = class TestRunnerService {
141
176
  (0, node_assert_1.default)(testRun, 'Unable to create a test run');
142
177
  const abortController = new AbortController();
143
178
  this.abortControllers.set(testRun.id, abortController);
179
+ const testRunMetadata = {
180
+ testRunId: testRun.id,
181
+ userId: user.id,
182
+ };
144
183
  const abortSignal = abortController.signal;
145
184
  try {
146
185
  const pastExecutions = await this.executionRepository
@@ -152,10 +191,20 @@ let TestRunnerService = class TestRunnerService {
152
191
  .andWhere('execution.workflowId = :workflowId', { workflowId: test.workflowId })
153
192
  .getMany();
154
193
  this.logger.debug('Found past executions', { count: pastExecutions.length });
194
+ await this.testCaseExecutionRepository.createBatch(testRun.id, pastExecutions.map((e) => e.id));
155
195
  const testMetricNames = await this.getTestMetricNames(test.id);
196
+ const pastExecutionIds = pastExecutions.map((e) => e.id);
156
197
  await this.testRunRepository.markAsRunning(testRun.id, pastExecutions.length);
198
+ this.telemetry.track('User runs test', {
199
+ user_id: user.id,
200
+ test_id: test.id,
201
+ run_id: testRun.id,
202
+ executions_ids: pastExecutionIds,
203
+ workflow_id: test.workflowId,
204
+ evaluation_workflow_id: test.evaluationWorkflowId,
205
+ });
157
206
  const metrics = new evaluation_metrics_ee_1.EvaluationMetrics(testMetricNames);
158
- for (const { id: pastExecutionId } of pastExecutions) {
207
+ for (const pastExecutionId of pastExecutionIds) {
159
208
  if (abortSignal.aborted) {
160
209
  this.logger.debug('Test run was cancelled', {
161
210
  testId: test.id,
@@ -171,32 +220,54 @@ let TestRunnerService = class TestRunnerService {
171
220
  });
172
221
  (0, node_assert_1.default)(pastExecution, 'Execution not found');
173
222
  const executionData = (0, flatted_1.parse)(pastExecution.executionData.data);
174
- const testCaseExecution = await this.runTestCase(workflow, executionData, pastExecution.executionData.workflowData, test.mockedNodes, user.id, abortSignal);
223
+ const testCaseMetadata = {
224
+ ...testRunMetadata,
225
+ pastExecutionId,
226
+ };
227
+ const testCaseExecution = await this.runTestCase(workflow, executionData, pastExecution.executionData.workflowData, test.mockedNodes, testCaseMetadata, abortSignal);
175
228
  this.logger.debug('Test case execution finished', { pastExecutionId });
176
229
  if (!testCaseExecution) {
177
- await this.testRunRepository.incrementFailed(testRun.id);
230
+ await Db.transaction(async (trx) => {
231
+ await this.testRunRepository.incrementFailed(testRun.id, trx);
232
+ await this.testCaseExecutionRepository.markAsFailed(testRun.id, pastExecutionId, trx);
233
+ });
178
234
  continue;
179
235
  }
236
+ if (testCaseExecution.data.resultData.error) {
237
+ await this.testCaseExecutionRepository.markAsFailed(testRun.id, pastExecutionId);
238
+ }
180
239
  const testCaseRunData = testCaseExecution.data.resultData.runData;
181
240
  const originalRunData = executionData.resultData.runData;
182
- const evalExecution = await this.runTestCaseEvaluation(evaluationWorkflow, originalRunData, testCaseRunData, abortSignal, testRun.id);
241
+ const evalExecution = await this.runTestCaseEvaluation(evaluationWorkflow, originalRunData, testCaseRunData, abortSignal, testCaseMetadata);
183
242
  (0, node_assert_1.default)(evalExecution);
184
243
  this.logger.debug('Evaluation execution finished', { pastExecutionId });
185
- metrics.addResults(this.extractEvaluationResult(evalExecution));
244
+ const addedMetrics = metrics.addResults(this.extractEvaluationResult(evalExecution));
186
245
  if (evalExecution.data.resultData.error) {
187
- await this.testRunRepository.incrementFailed(testRun.id);
246
+ await Db.transaction(async (trx) => {
247
+ await this.testRunRepository.incrementFailed(testRun.id, trx);
248
+ await this.testCaseExecutionRepository.markAsFailed(testRun.id, pastExecutionId, trx);
249
+ });
188
250
  }
189
251
  else {
190
- await this.testRunRepository.incrementPassed(testRun.id);
252
+ await Db.transaction(async (trx) => {
253
+ await this.testRunRepository.incrementPassed(testRun.id, trx);
254
+ await this.testCaseExecutionRepository.markAsCompleted(testRun.id, pastExecutionId, addedMetrics, trx);
255
+ });
191
256
  }
192
257
  }
193
258
  catch (e) {
194
- await this.testRunRepository.incrementFailed(testRun.id);
259
+ await Db.transaction(async (trx) => {
260
+ await this.testRunRepository.incrementFailed(testRun.id, trx);
261
+ await this.testCaseExecutionRepository.markAsFailed(testRun.id, pastExecutionId, trx);
262
+ });
195
263
  this.errorReporter.error(e);
196
264
  }
197
265
  }
198
266
  if (abortSignal.aborted) {
199
- await this.testRunRepository.markAsCancelled(testRun.id);
267
+ await Db.transaction(async (trx) => {
268
+ await this.testRunRepository.markAsCancelled(testRun.id, trx);
269
+ await this.testCaseExecutionRepository.markAllPendingAsCancelled(testRun.id, trx);
270
+ });
200
271
  }
201
272
  else {
202
273
  const aggregatedMetrics = metrics.getAggregatedMetrics();
@@ -210,7 +281,10 @@ let TestRunnerService = class TestRunnerService {
210
281
  testRunId: testRun.id,
211
282
  stoppedOn: e.extra?.executionId,
212
283
  });
213
- await this.testRunRepository.markAsCancelled(testRun.id);
284
+ await Db.transaction(async (trx) => {
285
+ await this.testRunRepository.markAsCancelled(testRun.id, trx);
286
+ await this.testCaseExecutionRepository.markAllPendingAsCancelled(testRun.id, trx);
287
+ });
214
288
  }
215
289
  else {
216
290
  throw e;
@@ -230,7 +304,10 @@ let TestRunnerService = class TestRunnerService {
230
304
  this.abortControllers.delete(testRunId);
231
305
  }
232
306
  else {
233
- await this.testRunRepository.markAsCancelled(testRunId);
307
+ await Db.transaction(async (trx) => {
308
+ await this.testRunRepository.markAsCancelled(testRunId, trx);
309
+ await this.testCaseExecutionRepository.markAllPendingAsCancelled(testRunId, trx);
310
+ });
234
311
  }
235
312
  }
236
313
  };
@@ -238,11 +315,13 @@ exports.TestRunnerService = TestRunnerService;
238
315
  exports.TestRunnerService = TestRunnerService = __decorate([
239
316
  (0, di_1.Service)(),
240
317
  __metadata("design:paramtypes", [n8n_core_1.Logger,
318
+ telemetry_1.Telemetry,
241
319
  workflow_repository_1.WorkflowRepository,
242
320
  workflow_runner_1.WorkflowRunner,
243
321
  execution_repository_1.ExecutionRepository,
244
322
  active_executions_1.ActiveExecutions,
245
323
  test_run_repository_ee_1.TestRunRepository,
324
+ test_case_execution_repository_ee_1.TestCaseExecutionRepository,
246
325
  test_metric_repository_ee_1.TestMetricRepository,
247
326
  node_types_1.NodeTypes,
248
327
  n8n_core_1.ErrorReporter])
@@ -1 +1 @@
1
- {"version":3,"file":"test-runner.service.ee.js","sourceRoot":"","sources":["../../../src/evaluation.ee/test-runner/test-runner.service.ee.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"test-runner.service.ee.js","sourceRoot":"","sources":["../../../src/evaluation.ee/test-runner/test-runner.service.ee.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import express from 'express';
2
2
  import { InstanceSettings } from 'n8n-core';
3
+ import { TestCaseExecutionRepository } from '../databases/repositories/test-case-execution.repository.ee';
3
4
  import { TestRunRepository } from '../databases/repositories/test-run.repository.ee';
4
5
  import { TestRunsRequest } from '../evaluation.ee/test-definitions.types.ee';
5
6
  import { TestRunnerService } from '../evaluation.ee/test-runner/test-runner.service.ee';
@@ -7,13 +8,15 @@ import { TestDefinitionService } from './test-definition.service.ee';
7
8
  export declare class TestRunsController {
8
9
  private readonly testDefinitionService;
9
10
  private readonly testRunRepository;
11
+ private readonly testCaseExecutionRepository;
10
12
  private readonly testRunnerService;
11
13
  private readonly instanceSettings;
12
- constructor(testDefinitionService: TestDefinitionService, testRunRepository: TestRunRepository, testRunnerService: TestRunnerService, instanceSettings: InstanceSettings);
14
+ constructor(testDefinitionService: TestDefinitionService, testRunRepository: TestRunRepository, testCaseExecutionRepository: TestCaseExecutionRepository, testRunnerService: TestRunnerService, instanceSettings: InstanceSettings);
13
15
  private getTestDefinition;
14
16
  private getTestRun;
15
17
  getMany(req: TestRunsRequest.GetMany): Promise<import("../databases/entities/test-run.ee").TestRun[]>;
16
18
  getOne(req: TestRunsRequest.GetOne): Promise<import("../databases/entities/test-run.ee").TestRun>;
19
+ getTestCases(req: TestRunsRequest.GetCases): Promise<import("../databases/entities/test-case-execution.ee").TestCaseExecution[]>;
17
20
  delete(req: TestRunsRequest.Delete): Promise<{
18
21
  success: boolean;
19
22
  }>;