@prosopo/provider 2.0.1 → 2.0.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 (124) hide show
  1. package/dist/api/captcha.d.ts.map +1 -1
  2. package/dist/api/captcha.js +15 -9
  3. package/dist/api/captcha.js.map +1 -1
  4. package/dist/api/captchaScheduler.d.ts +1 -1
  5. package/dist/api/captchaScheduler.d.ts.map +1 -1
  6. package/dist/api/captchaScheduler.js +10 -4
  7. package/dist/api/captchaScheduler.js.map +1 -1
  8. package/dist/api/verify.d.ts.map +1 -1
  9. package/dist/api/verify.js +22 -9
  10. package/dist/api/verify.js.map +1 -1
  11. package/dist/cjs/api/captcha.cjs +51 -39
  12. package/dist/cjs/api/captchaScheduler.cjs +17 -4
  13. package/dist/cjs/api/verify.cjs +22 -10
  14. package/dist/cjs/index.cjs +0 -2
  15. package/dist/cjs/tasks/dataset/datasetTasks.cjs +68 -11
  16. package/dist/cjs/tasks/imgCaptcha/imgCaptchaTasks.cjs +35 -34
  17. package/dist/cjs/tasks/powCaptcha/powTasks.cjs +53 -28
  18. package/dist/cjs/tasks/powCaptcha/powTasksUtils.cjs +0 -29
  19. package/dist/cjs/util.cjs +1 -24
  20. package/dist/tasks/dataset/datasetTasks.d.ts +2 -2
  21. package/dist/tasks/dataset/datasetTasks.d.ts.map +1 -1
  22. package/dist/tasks/dataset/datasetTasks.js +39 -8
  23. package/dist/tasks/dataset/datasetTasks.js.map +1 -1
  24. package/dist/tasks/imgCaptcha/imgCaptchaTasks.d.ts +6 -6
  25. package/dist/tasks/imgCaptcha/imgCaptchaTasks.d.ts.map +1 -1
  26. package/dist/tasks/imgCaptcha/imgCaptchaTasks.js +22 -27
  27. package/dist/tasks/imgCaptcha/imgCaptchaTasks.js.map +1 -1
  28. package/dist/tasks/imgCaptcha/imgCaptchaTasksUtils.d.ts.map +1 -1
  29. package/dist/tasks/imgCaptcha/imgCaptchaTasksUtils.js.map +1 -1
  30. package/dist/tasks/powCaptcha/powTasks.d.ts +2 -2
  31. package/dist/tasks/powCaptcha/powTasks.d.ts.map +1 -1
  32. package/dist/tasks/powCaptcha/powTasks.js +40 -23
  33. package/dist/tasks/powCaptcha/powTasks.js.map +1 -1
  34. package/dist/tasks/powCaptcha/powTasksUtils.d.ts +0 -2
  35. package/dist/tasks/powCaptcha/powTasksUtils.d.ts.map +1 -1
  36. package/dist/tasks/powCaptcha/powTasksUtils.js +0 -27
  37. package/dist/tasks/powCaptcha/powTasksUtils.js.map +1 -1
  38. package/dist/tests/integration/imgCaptcha.integration.test.d.ts +2 -0
  39. package/dist/tests/integration/imgCaptcha.integration.test.d.ts.map +1 -0
  40. package/dist/tests/integration/{imgCaptcha.test.js → imgCaptcha.integration.test.js} +9 -5
  41. package/dist/tests/integration/imgCaptcha.integration.test.js.map +1 -0
  42. package/dist/tests/integration/mocks/solvedTestCaptchas.d.ts +5 -1
  43. package/dist/tests/integration/mocks/solvedTestCaptchas.d.ts.map +1 -1
  44. package/dist/tests/integration/mocks/solvedTestCaptchas.js +4 -0
  45. package/dist/tests/integration/mocks/solvedTestCaptchas.js.map +1 -1
  46. package/dist/tests/integration/powCaptcha.integration.test.d.ts +2 -0
  47. package/dist/tests/integration/powCaptcha.integration.test.d.ts.map +1 -0
  48. package/dist/tests/integration/{powCaptcha.test.js → powCaptcha.integration.test.js} +12 -10
  49. package/dist/tests/integration/powCaptcha.integration.test.js.map +1 -0
  50. package/dist/tests/unit/api/authMiddleware.unit.test.d.ts +2 -0
  51. package/dist/tests/unit/api/authMiddleware.unit.test.d.ts.map +1 -0
  52. package/dist/tests/unit/api/{authMiddleware.test.js → authMiddleware.unit.test.js} +1 -1
  53. package/dist/tests/unit/api/authMiddleware.unit.test.js.map +1 -0
  54. package/dist/tests/unit/api/captchaScheduler.unit.test.d.ts +2 -0
  55. package/dist/tests/unit/api/captchaScheduler.unit.test.d.ts.map +1 -0
  56. package/dist/tests/unit/api/{captchaScheduler.test.js → captchaScheduler.unit.test.js} +20 -6
  57. package/dist/tests/unit/api/captchaScheduler.unit.test.js.map +1 -0
  58. package/dist/tests/unit/api/errorHandler.unit.test.d.ts +2 -0
  59. package/dist/tests/unit/api/errorHandler.unit.test.d.ts.map +1 -0
  60. package/dist/tests/unit/api/{errorHandler.test.js → errorHandler.unit.test.js} +1 -1
  61. package/dist/tests/unit/api/errorHandler.unit.test.js.map +1 -0
  62. package/dist/tests/unit/tasks/dataset/datasetTasks.unit.test.d.ts +2 -0
  63. package/dist/tests/unit/tasks/dataset/datasetTasks.unit.test.d.ts.map +1 -0
  64. package/dist/tests/unit/tasks/dataset/datasetTasks.unit.test.js +188 -0
  65. package/dist/tests/unit/tasks/dataset/datasetTasks.unit.test.js.map +1 -0
  66. package/dist/tests/unit/tasks/dataset/datasetTasksUtils.unit.test.d.ts +2 -0
  67. package/dist/tests/unit/tasks/dataset/datasetTasksUtils.unit.test.d.ts.map +1 -0
  68. package/dist/tests/unit/tasks/dataset/{datasetTasksUtils.test.js → datasetTasksUtils.unit.test.js} +1 -1
  69. package/dist/tests/unit/tasks/dataset/datasetTasksUtils.unit.test.js.map +1 -0
  70. package/dist/tests/unit/tasks/imgCaptcha/imgCaptchaTasks.unit.test.d.ts +2 -0
  71. package/dist/tests/unit/tasks/imgCaptcha/imgCaptchaTasks.unit.test.d.ts.map +1 -0
  72. package/dist/tests/unit/tasks/imgCaptcha/{imgCaptchaTasks.test.js → imgCaptchaTasks.unit.test.js} +27 -25
  73. package/dist/tests/unit/tasks/imgCaptcha/imgCaptchaTasks.unit.test.js.map +1 -0
  74. package/dist/tests/unit/tasks/imgCaptcha/imgCaptchaTasksUtils.unit.test.d.ts +2 -0
  75. package/dist/tests/unit/tasks/imgCaptcha/imgCaptchaTasksUtils.unit.test.d.ts.map +1 -0
  76. package/dist/tests/unit/tasks/imgCaptcha/{imgCaptchaTasksUtils.test.js → imgCaptchaTasksUtils.unit.test.js} +1 -1
  77. package/dist/tests/unit/tasks/imgCaptcha/imgCaptchaTasksUtils.unit.test.js.map +1 -0
  78. package/dist/tests/unit/tasks/powCaptcha/powTasks.unit.test.d.ts +2 -0
  79. package/dist/tests/unit/tasks/powCaptcha/powTasks.unit.test.d.ts.map +1 -0
  80. package/dist/tests/unit/tasks/powCaptcha/{powTasks.test.js → powTasks.unit.test.js} +104 -33
  81. package/dist/tests/unit/tasks/powCaptcha/powTasks.unit.test.js.map +1 -0
  82. package/dist/tests/unit/tasks/powCaptcha/powTasksUtils.unit.test.d.ts +2 -0
  83. package/dist/tests/unit/tasks/powCaptcha/powTasksUtils.unit.test.d.ts.map +1 -0
  84. package/dist/tests/unit/tasks/powCaptcha/{powTasksUtils.test.js → powTasksUtils.unit.test.js} +6 -35
  85. package/dist/tests/unit/tasks/powCaptcha/powTasksUtils.unit.test.js.map +1 -0
  86. package/dist/util.d.ts +0 -7
  87. package/dist/util.d.ts.map +1 -1
  88. package/dist/util.js +1 -21
  89. package/dist/util.js.map +1 -1
  90. package/package.json +72 -73
  91. package/dist/tests/integration/imgCaptcha.test.d.ts +0 -2
  92. package/dist/tests/integration/imgCaptcha.test.d.ts.map +0 -1
  93. package/dist/tests/integration/imgCaptcha.test.js.map +0 -1
  94. package/dist/tests/integration/powCaptcha.test.d.ts +0 -2
  95. package/dist/tests/integration/powCaptcha.test.d.ts.map +0 -1
  96. package/dist/tests/integration/powCaptcha.test.js.map +0 -1
  97. package/dist/tests/unit/api/authMiddleware.test.d.ts +0 -2
  98. package/dist/tests/unit/api/authMiddleware.test.d.ts.map +0 -1
  99. package/dist/tests/unit/api/authMiddleware.test.js.map +0 -1
  100. package/dist/tests/unit/api/captchaScheduler.test.d.ts +0 -2
  101. package/dist/tests/unit/api/captchaScheduler.test.d.ts.map +0 -1
  102. package/dist/tests/unit/api/captchaScheduler.test.js.map +0 -1
  103. package/dist/tests/unit/api/errorHandler.test.d.ts +0 -2
  104. package/dist/tests/unit/api/errorHandler.test.d.ts.map +0 -1
  105. package/dist/tests/unit/api/errorHandler.test.js.map +0 -1
  106. package/dist/tests/unit/tasks/dataset/datasetTasks.test.d.ts +0 -2
  107. package/dist/tests/unit/tasks/dataset/datasetTasks.test.d.ts.map +0 -1
  108. package/dist/tests/unit/tasks/dataset/datasetTasks.test.js +0 -88
  109. package/dist/tests/unit/tasks/dataset/datasetTasks.test.js.map +0 -1
  110. package/dist/tests/unit/tasks/dataset/datasetTasksUtils.test.d.ts +0 -2
  111. package/dist/tests/unit/tasks/dataset/datasetTasksUtils.test.d.ts.map +0 -1
  112. package/dist/tests/unit/tasks/dataset/datasetTasksUtils.test.js.map +0 -1
  113. package/dist/tests/unit/tasks/imgCaptcha/imgCaptchaTasks.test.d.ts +0 -2
  114. package/dist/tests/unit/tasks/imgCaptcha/imgCaptchaTasks.test.d.ts.map +0 -1
  115. package/dist/tests/unit/tasks/imgCaptcha/imgCaptchaTasks.test.js.map +0 -1
  116. package/dist/tests/unit/tasks/imgCaptcha/imgCaptchaTasksUtils.test.d.ts +0 -2
  117. package/dist/tests/unit/tasks/imgCaptcha/imgCaptchaTasksUtils.test.d.ts.map +0 -1
  118. package/dist/tests/unit/tasks/imgCaptcha/imgCaptchaTasksUtils.test.js.map +0 -1
  119. package/dist/tests/unit/tasks/powCaptcha/powTasks.test.d.ts +0 -2
  120. package/dist/tests/unit/tasks/powCaptcha/powTasks.test.d.ts.map +0 -1
  121. package/dist/tests/unit/tasks/powCaptcha/powTasks.test.js.map +0 -1
  122. package/dist/tests/unit/tasks/powCaptcha/powTasksUtils.test.d.ts +0 -2
  123. package/dist/tests/unit/tasks/powCaptcha/powTasksUtils.test.d.ts.map +0 -1
  124. package/dist/tests/unit/tasks/powCaptcha/powTasksUtils.test.js.map +0 -1
@@ -7,10 +7,17 @@ vi.mock("@prosopo/env", () => ({
7
7
  ProviderEnvironment: vi.fn().mockImplementation(() => ({
8
8
  isReady: vi.fn().mockResolvedValue(true),
9
9
  logger: {
10
- log: vi.fn(),
11
- error: vi.fn(),
10
+ debug: vi.fn().mockImplementation(console.debug),
11
+ log: vi.fn().mockImplementation(console.log),
12
+ info: vi.fn().mockImplementation(console.info),
13
+ error: vi.fn().mockImplementation(console.error),
14
+ },
15
+ getDb: vi.fn().mockReturnValue({
16
+ getLastScheduledTaskStatus: vi.fn().mockResolvedValue(undefined),
17
+ }),
18
+ db: {
19
+ getLastScheduledTaskStatus: vi.fn().mockResolvedValue(undefined),
12
20
  },
13
- db: {},
14
21
  })),
15
22
  }));
16
23
  vi.mock("../../../tasks/tasks.js", () => ({
@@ -25,12 +32,19 @@ vi.mock("cron", () => ({
25
32
  start: vi.fn().mockImplementation(onTick),
26
33
  })),
27
34
  }));
35
+ vi.mock("../../../util.js", () => ({
36
+ checkIfTaskIsRunning: vi.fn().mockResolvedValue(false),
37
+ }));
28
38
  describe("storeCaptchasExternally", () => {
29
39
  let mockPair;
30
40
  let mockConfig;
31
41
  beforeEach(() => {
32
42
  mockPair = {};
33
- mockConfig = {};
43
+ mockConfig = {
44
+ captchaScheduler: {
45
+ schedule: "0 * * * *",
46
+ },
47
+ };
34
48
  });
35
49
  it("should initialize environment and start cron job", async () => {
36
50
  await storeCaptchasExternally(mockPair, mockConfig);
@@ -41,7 +55,7 @@ describe("storeCaptchasExternally", () => {
41
55
  it("should log message when cron job runs", async () => {
42
56
  await storeCaptchasExternally(mockPair, mockConfig);
43
57
  const envInstance = ProviderEnvironment.mock.results[0].value;
44
- expect(envInstance.logger.log).toHaveBeenCalledWith("storeCommitmentsExternal task....");
58
+ expect(envInstance.logger.info).toHaveBeenCalledWith("StoreCommitmentsExternal task running: false");
45
59
  });
46
60
  });
47
- //# sourceMappingURL=captchaScheduler.test.js.map
61
+ //# sourceMappingURL=captchaScheduler.unit.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"captchaScheduler.unit.test.js","sourceRoot":"","sources":["../../../../src/tests/unit/api/captchaScheduler.unit.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=errorHandler.unit.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errorHandler.unit.test.d.ts","sourceRoot":"","sources":["../../../../src/tests/unit/api/errorHandler.unit.test.ts"],"names":[],"mappings":""}
@@ -62,4 +62,4 @@ describe("handleErrors", () => {
62
62
  expect(mockResponse.end).toHaveBeenCalled();
63
63
  });
64
64
  });
65
- //# sourceMappingURL=errorHandler.test.js.map
65
+ //# sourceMappingURL=errorHandler.unit.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errorHandler.unit.test.js","sourceRoot":"","sources":["../../../../src/tests/unit/api/errorHandler.unit.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=datasetTasks.unit.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"datasetTasks.unit.test.d.ts","sourceRoot":"","sources":["../../../../../src/tests/unit/tasks/dataset/datasetTasks.unit.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,188 @@
1
+ import { saveCaptchaEvent, saveCaptchas } from "@prosopo/database";
2
+ import { parseCaptchaDataset } from "@prosopo/datasets";
3
+ import { ScheduledTaskNames, ScheduledTaskStatus, } from "@prosopo/types";
4
+ import { ScheduledTaskSchema, } from "@prosopo/types-database";
5
+ import { beforeEach, describe, expect, it, vi } from "vitest";
6
+ import { DatasetManager } from "../../../../tasks/dataset/datasetTasks.js";
7
+ import * as datasetTasksUtils from "../../../../tasks/dataset/datasetTasksUtils.js";
8
+ vi.mock("@prosopo/database", () => ({
9
+ saveCaptchaEvent: vi.fn(),
10
+ saveCaptchas: vi.fn(),
11
+ }));
12
+ vi.mock("@prosopo/datasets", () => ({
13
+ parseCaptchaDataset: vi.fn(),
14
+ }));
15
+ vi.spyOn(datasetTasksUtils, "providerValidateDataset");
16
+ describe("DatasetManager", () => {
17
+ let config;
18
+ let logger;
19
+ let captchaConfig;
20
+ let db;
21
+ let datasetManager;
22
+ let collections = {};
23
+ beforeEach(() => {
24
+ config = {
25
+ devOnlyWatchEvents: true,
26
+ mongoEventsUri: "mongodb://localhost:27017/events",
27
+ mongoCaptchaUri: "mongodb://localhost:27017/captchas",
28
+ };
29
+ logger = {
30
+ info: vi.fn().mockImplementation(console.info),
31
+ debug: vi.fn().mockImplementation(console.debug),
32
+ error: vi.fn().mockImplementation(console.error),
33
+ };
34
+ captchaConfig = {
35
+ solved: { count: 5 },
36
+ unsolved: { count: 5 },
37
+ };
38
+ collections["schedulers"] = {};
39
+ collections["schedulers"]["records"] = {};
40
+ collections["schedulers"]["nextID"] = 0;
41
+ collections["schedulers"]["time"] = 0;
42
+ db = {
43
+ storeDataset: vi.fn(),
44
+ getUnstoredDappUserCommitments: vi.fn().mockResolvedValue([]),
45
+ markDappUserCommitmentsStored: vi.fn(),
46
+ markDappUserPoWCommitmentsStored: vi.fn(),
47
+ getUnstoredDappUserPoWCommitments: vi.fn().mockResolvedValue([]),
48
+ createScheduledTaskStatus: vi.fn((taskName, status) => {
49
+ const _id = collections["schedulers"]["nextID"];
50
+ collections.schedulers.records[_id] = ScheduledTaskSchema.parse({
51
+ _id,
52
+ processName: taskName,
53
+ status,
54
+ datetime: collections.schedulers.time,
55
+ });
56
+ collections.schedulers.nextID += 1;
57
+ collections.schedulers.time += 1;
58
+ return _id;
59
+ }),
60
+ updateScheduledTaskStatus: vi.fn((taskID, status, result) => {
61
+ const task = collections.schedulers.records[taskID];
62
+ task.status = status;
63
+ task.result = result;
64
+ task.updated = collections.schedulers.time;
65
+ collections.schedulers.time += 1;
66
+ }),
67
+ getLastScheduledTaskStatus: vi.fn((taskID, status) => {
68
+ return Object.keys(collections.schedulers.records)
69
+ .map((key) => collections.schedulers.records[key])
70
+ .find((task) => task.processName === taskID && task.status === status);
71
+ }),
72
+ };
73
+ datasetManager = new DatasetManager(config, logger, captchaConfig, db);
74
+ vi.clearAllMocks();
75
+ });
76
+ it("should set the provider dataset from a file", async () => {
77
+ const mockFile = { captchas: [] };
78
+ const mockDatasetRaw = { captchas: [], format: "SelectAll" };
79
+ const mockValidatedDataset = { datasetId: "123", datasetContentId: "456" };
80
+ parseCaptchaDataset.mockReturnValue(mockDatasetRaw);
81
+ datasetTasksUtils.providerValidateDataset.mockResolvedValue(mockValidatedDataset);
82
+ await datasetManager.providerSetDatasetFromFile(mockFile);
83
+ expect(parseCaptchaDataset).toHaveBeenCalledWith(mockFile);
84
+ expect(datasetTasksUtils.providerValidateDataset).toHaveBeenCalledWith(mockDatasetRaw, captchaConfig.solved.count, captchaConfig.unsolved.count);
85
+ expect(db.storeDataset).toHaveBeenCalledWith(mockValidatedDataset);
86
+ });
87
+ it("should not save captcha event if devOnlyWatchEvents is not true", async () => {
88
+ config.devOnlyWatchEvents = false;
89
+ const events = { events: [] };
90
+ const accountId = "account123";
91
+ await datasetManager.saveCaptchaEvent(events, accountId);
92
+ expect(logger.info).toHaveBeenCalledWith("Dev watch events not set to true, not saving events");
93
+ expect(saveCaptchaEvent).not.toHaveBeenCalled();
94
+ });
95
+ it("should save captcha event if devOnlyWatchEvents is true", async () => {
96
+ const events = { events: [] };
97
+ const accountId = "account123";
98
+ await datasetManager.saveCaptchaEvent(events, accountId);
99
+ expect(saveCaptchaEvent).toHaveBeenCalledWith(events, accountId, config.mongoEventsUri);
100
+ });
101
+ it("should not store commitments externally if mongoCaptchaUri is not set", async () => {
102
+ config.mongoCaptchaUri = undefined;
103
+ await datasetManager.storeCommitmentsExternal();
104
+ expect(logger.info).toHaveBeenCalledWith("Mongo env not set");
105
+ expect(db.getUnstoredDappUserCommitments).not.toHaveBeenCalled();
106
+ });
107
+ it("should store commitments externally if mongoCaptchaUri is set", async () => {
108
+ const mockCommitments = [
109
+ { id: "commitment1" },
110
+ ];
111
+ const mockPoWCommitments = [
112
+ {
113
+ challenge: "1234567___userAccount___dappAccount",
114
+ },
115
+ ];
116
+ db.getUnstoredDappUserCommitments.mockResolvedValue(mockCommitments);
117
+ db.createScheduledTaskStatus.mockResolvedValue({});
118
+ db.updateScheduledTaskStatus.mockResolvedValue({});
119
+ db.getUnstoredDappUserPoWCommitments.mockResolvedValue(mockPoWCommitments);
120
+ await datasetManager.storeCommitmentsExternal();
121
+ expect(db.getUnstoredDappUserCommitments).toHaveBeenCalled();
122
+ expect(db.getUnstoredDappUserPoWCommitments).toHaveBeenCalled();
123
+ expect(saveCaptchas).toHaveBeenCalledWith(mockCommitments, mockPoWCommitments, config.mongoCaptchaUri);
124
+ expect(db.markDappUserCommitmentsStored).toHaveBeenCalledWith(mockCommitments.map((c) => c.id));
125
+ expect(db.markDappUserPoWCommitmentsStored).toHaveBeenCalledWith(mockPoWCommitments.map((c) => c.challenge));
126
+ });
127
+ it("should not store commitments externally if they have been stored", async () => {
128
+ const mockCommitments = [
129
+ {
130
+ id: "commitment1",
131
+ lastUpdatedTimestamp: 1,
132
+ },
133
+ ];
134
+ const mockPoWCommitments = [
135
+ {
136
+ challenge: "1234567___userAccount___dappAccount",
137
+ lastUpdatedTimestamp: 3,
138
+ },
139
+ ];
140
+ const mockLastScheduledTask = {
141
+ _id: 0,
142
+ status: ScheduledTaskStatus.Completed,
143
+ processName: ScheduledTaskNames.StoreCommitmentsExternal,
144
+ updated: 1,
145
+ };
146
+ collections.schedulers.records[0] = mockLastScheduledTask;
147
+ collections.schedulers.nextID += 1;
148
+ collections.schedulers.time = 2;
149
+ db.getUnstoredDappUserCommitments.mockResolvedValue(mockCommitments);
150
+ db.getUnstoredDappUserPoWCommitments.mockResolvedValue(mockPoWCommitments);
151
+ await datasetManager.storeCommitmentsExternal();
152
+ expect(db.getUnstoredDappUserCommitments).toHaveBeenCalled();
153
+ expect(db.getUnstoredDappUserPoWCommitments).toHaveBeenCalled();
154
+ expect(db.getLastScheduledTaskStatus).toHaveReturnedWith(mockLastScheduledTask);
155
+ expect(db.createScheduledTaskStatus).toHaveBeenCalledWith(ScheduledTaskNames.StoreCommitmentsExternal, ScheduledTaskStatus.Running);
156
+ expect(saveCaptchas).toHaveBeenCalledWith([], mockPoWCommitments, config.mongoCaptchaUri);
157
+ expect(db.markDappUserCommitmentsStored).toHaveBeenCalledWith([]);
158
+ expect(db.markDappUserPoWCommitmentsStored).toHaveBeenCalledWith(mockPoWCommitments.map((c) => c.challenge));
159
+ expect(db.updateScheduledTaskStatus).toHaveBeenCalledWith(parseInt(mockLastScheduledTask._id) + 1, ScheduledTaskStatus.Completed, {
160
+ data: {
161
+ commitments: [],
162
+ powRecords: mockPoWCommitments.map((c) => c.challenge),
163
+ },
164
+ });
165
+ });
166
+ it("should not call saveCaptchas if there is nothing to save", async () => {
167
+ const mockLastScheduledTask = {
168
+ _id: 0,
169
+ status: ScheduledTaskStatus.Completed,
170
+ processName: ScheduledTaskNames.StoreCommitmentsExternal,
171
+ updated: 1,
172
+ };
173
+ collections.schedulers.records[0] = mockLastScheduledTask;
174
+ collections.schedulers.nextID += 1;
175
+ collections.schedulers.time = 2;
176
+ db.getUnstoredDappUserCommitments.mockResolvedValue([]);
177
+ db.getUnstoredDappUserPoWCommitments.mockResolvedValue([]);
178
+ await datasetManager.storeCommitmentsExternal();
179
+ expect(saveCaptchas).not.toHaveBeenCalled();
180
+ expect(db.updateScheduledTaskStatus).toHaveBeenCalledWith(parseInt(mockLastScheduledTask._id) + 1, ScheduledTaskStatus.Completed, {
181
+ data: {
182
+ commitments: [],
183
+ powRecords: [],
184
+ },
185
+ });
186
+ });
187
+ });
188
+ //# sourceMappingURL=datasetTasks.unit.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"datasetTasks.unit.test.js","sourceRoot":"","sources":["../../../../../src/tests/unit/tasks/dataset/datasetTasks.unit.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=datasetTasksUtils.unit.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"datasetTasksUtils.unit.test.d.ts","sourceRoot":"","sources":["../../../../../src/tests/unit/tasks/dataset/datasetTasksUtils.unit.test.ts"],"names":[],"mappings":""}
@@ -72,4 +72,4 @@ describe("providerValidateDataset", () => {
72
72
  expect(result).toEqual(mockDataset);
73
73
  });
74
74
  });
75
- //# sourceMappingURL=datasetTasksUtils.test.js.map
75
+ //# sourceMappingURL=datasetTasksUtils.unit.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"datasetTasksUtils.unit.test.js","sourceRoot":"","sources":["../../../../../src/tests/unit/tasks/dataset/datasetTasksUtils.unit.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=imgCaptchaTasks.unit.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"imgCaptchaTasks.unit.test.d.ts","sourceRoot":"","sources":["../../../../../src/tests/unit/tasks/imgCaptcha/imgCaptchaTasks.unit.test.ts"],"names":[],"mappings":""}
@@ -98,26 +98,28 @@ describe("ImgCaptchaManager", () => {
98
98
  const datasetId = "datasetId";
99
99
  const userAccount = "userAccount";
100
100
  const dataset = { datasetId, captchas: [] };
101
+ const ipAddress = "0.0.0.0";
101
102
  db.getDatasetDetails.mockResolvedValue(dataset);
102
103
  db.getRandomCaptcha.mockResolvedValue([]);
103
104
  randomAsHex.mockReturnValue("randomSalt");
104
105
  computePendingRequestHash.mockReturnValue("computedHash");
105
- pair.sign.mockReturnValue("signedTimestamp");
106
- u8aToHex.mockReturnValue("hexSignedTime");
106
+ pair.sign.mockReturnValue("hexSignedRequestHash");
107
+ u8aToHex.mockReturnValue("hexSignedRequestHash");
107
108
  shuffleArray.mockReturnValue([]);
108
- const result = await imgCaptchaManager.getRandomCaptchasAndRequestHash(datasetId, userAccount);
109
+ const result = await imgCaptchaManager.getRandomCaptchasAndRequestHash(datasetId, userAccount, ipAddress);
109
110
  expect(result).toEqual({
110
111
  captchas: [],
111
112
  requestHash: "computedHash",
112
113
  timestamp: expect.any(Number),
113
- signedTimestamp: "hexSignedTime",
114
+ signedRequestHash: "hexSignedRequestHash",
114
115
  });
115
116
  });
116
117
  it("should throw an error if dataset details are not found", async () => {
117
118
  const datasetId = "datasetId";
118
119
  const userAccount = "userAccount";
120
+ const ipAddress = "0.0.0.0";
119
121
  db.getDatasetDetails.mockResolvedValue(null);
120
- await expect(imgCaptchaManager.getRandomCaptchasAndRequestHash(datasetId, userAccount)).rejects.toThrow(new ProsopoEnvError("DATABASE.DATASET_GET_FAILED", {
122
+ await expect(imgCaptchaManager.getRandomCaptchasAndRequestHash(datasetId, userAccount, ipAddress)).rejects.toThrow(new ProsopoEnvError("DATABASE.DATASET_GET_FAILED", {
121
123
  context: {
122
124
  failedFuncName: "getRandomCaptchasAndRequestHash",
123
125
  dataset: null,
@@ -200,17 +202,16 @@ describe("ImgCaptchaManager", () => {
200
202
  const dappUserCommitment = {
201
203
  id: "commitmentId",
202
204
  userAccount: "userAccount",
203
- dappContract: "dappContract",
205
+ dappAccount: "dappAccount",
204
206
  providerAccount: "providerAccount",
205
207
  datasetId: "datasetId",
206
- status: CaptchaStatus.approved,
207
- userSignature: [],
208
- requestedAt: 0,
209
- completedAt: 0,
210
- processed: false,
211
- batched: false,
212
- stored: false,
208
+ result: { status: CaptchaStatus.approved },
209
+ userSignature: "",
210
+ userSubmitted: true,
211
+ serverChecked: false,
213
212
  requestedAtTimestamp: 0,
213
+ ipAddress: "0.0.0.0",
214
+ lastUpdatedTimestamp: Date.now(),
214
215
  };
215
216
  db.getDappUserCommitmentById.mockResolvedValue(dappUserCommitment);
216
217
  const result = await imgCaptchaManager.getDappUserCommitmentById(commitmentId);
@@ -228,33 +229,34 @@ describe("ImgCaptchaManager", () => {
228
229
  });
229
230
  it("should get dapp user commitment by account", async () => {
230
231
  const userAccount = "userAccount";
232
+ const dappAccount = "dappAccount";
231
233
  const dappUserCommitments = [
232
234
  {
233
235
  id: "commitmentId",
234
- userAccount: "userAccount",
235
- dappContract: "dappContract",
236
+ userAccount,
237
+ dappAccount,
236
238
  providerAccount: "providerAccount",
237
239
  datasetId: "datasetId",
238
- status: CaptchaStatus.approved,
239
- userSignature: [],
240
- requestedAt: 0,
241
- completedAt: 0,
242
- processed: false,
243
- batched: false,
244
- stored: false,
240
+ result: { status: CaptchaStatus.approved },
241
+ userSignature: "",
242
+ userSubmitted: true,
243
+ serverChecked: false,
245
244
  requestedAtTimestamp: 0,
245
+ ipAddress: "0.0.0.0",
246
+ lastUpdatedTimestamp: Date.now(),
246
247
  },
247
248
  ];
248
249
  db.getDappUserCommitmentByAccount.mockResolvedValue(dappUserCommitments);
249
- const result = await imgCaptchaManager.getDappUserCommitmentByAccount(userAccount);
250
+ const result = await imgCaptchaManager.getDappUserCommitmentByAccount(userAccount, dappAccount);
250
251
  expect(result).toEqual(dappUserCommitments[0]);
251
252
  });
252
253
  it("should return undefined if no approved dapp user commitment is found by account", async () => {
253
254
  const userAccount = "userAccount";
255
+ const dappAccount = "dappAccount";
254
256
  const dappUserCommitments = [];
255
257
  db.getDappUserCommitmentByAccount.mockResolvedValue(dappUserCommitments);
256
- const result = await imgCaptchaManager.getDappUserCommitmentByAccount(userAccount);
258
+ const result = await imgCaptchaManager.getDappUserCommitmentByAccount(userAccount, dappAccount);
257
259
  expect(result).toBeUndefined();
258
260
  });
259
261
  });
260
- //# sourceMappingURL=imgCaptchaTasks.test.js.map
262
+ //# sourceMappingURL=imgCaptchaTasks.unit.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"imgCaptchaTasks.unit.test.js","sourceRoot":"","sources":["../../../../../src/tests/unit/tasks/imgCaptcha/imgCaptchaTasks.unit.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=imgCaptchaTasksUtils.unit.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"imgCaptchaTasksUtils.unit.test.d.ts","sourceRoot":"","sources":["../../../../../src/tests/unit/tasks/imgCaptcha/imgCaptchaTasksUtils.unit.test.ts"],"names":[],"mappings":""}
@@ -43,4 +43,4 @@ describe("buildTreeAndGetCommitmentId", () => {
43
43
  }));
44
44
  });
45
45
  });
46
- //# sourceMappingURL=imgCaptchaTasksUtils.test.js.map
46
+ //# sourceMappingURL=imgCaptchaTasksUtils.unit.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"imgCaptchaTasksUtils.unit.test.js","sourceRoot":"","sources":["../../../../../src/tests/unit/tasks/imgCaptcha/imgCaptchaTasksUtils.unit.test.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EACL,iBAAiB,EACjB,0BAA0B,GAC3B,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9D,OAAO,EAAE,2BAA2B,EAAE,MAAM,sDAAsD,CAAC;AAEnG,EAAE,CAAC,IAAI,CAAC,mBAAmB,EAAE,GAAG,EAAE,CAAC,CAAC;IAClC,iBAAiB,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,GAAG,EAAE,CAAC,CAAC;QACnD,KAAK,EAAE,EAAE,CAAC,EAAE,EAAE;QACd,IAAI,EAAE,EAAE,IAAI,EAAE,gBAAgB,EAAE;KACjC,CAAC,CAAC;IACH,0BAA0B,EAAE,EAAE,CAAC,EAAE,EAAE;CACpC,CAAC,CAAC,CAAC;AAEJ,QAAQ,CAAC,6BAA6B,EAAE,GAAG,EAAE;IAC3C,MAAM,oBAAoB,GAAG;QAC3B,EAAE,SAAS,EAAE,YAAY,EAAE,QAAQ,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,EAAE;QACjE,EAAE,SAAS,EAAE,YAAY,EAAE,QAAQ,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,EAAE;KAClC,CAAC;IAElC,UAAU,CAAC,GAAG,EAAE;QACd,EAAE,CAAC,aAAa,EAAE,CAAC;IACrB,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE;QAExD,0BAAkC;aAChC,mBAAmB,CAAC,iBAAiB,CAAC;aACtC,mBAAmB,CAAC,iBAAiB,CAAC,CAAC;QAE1C,MAAM,MAAM,GAAG,2BAA2B,CAAC,oBAAoB,CAAC,CAAC;QAEjE,MAAM,CAAC,iBAAiB,CAAC,CAAC,gBAAgB,EAAE,CAAC;QAC7C,MAAM,CAAC,0BAA0B,CAAC,CAAC,oBAAoB,CACrD,oBAAoB,CAAC,CAAC,CAAC,CACxB,CAAC;QACF,MAAM,CAAC,0BAA0B,CAAC,CAAC,oBAAoB,CACrD,oBAAoB,CAAC,CAAC,CAAC,CACxB,CAAC;QACF,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;YACrB,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC;YACxB,YAAY,EAAE,gBAAgB;SAC/B,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sDAAsD,EAAE,GAAG,EAAE;QAE7D,iBAAyB,CAAC,kBAAkB,CAAC,GAAG,EAAE,CAAC,CAAC;YACnD,KAAK,EAAE,EAAE,CAAC,EAAE,EAAE;YACd,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE;SACrB,CAAC,CAAC,CAAC;QAEJ,MAAM,CAAC,GAAG,EAAE,CAAC,2BAA2B,CAAC,oBAAoB,CAAC,CAAC,CAAC,OAAO,CACrE,IAAI,eAAe,CACjB,qDAAqD,EACrD;YACE,OAAO,EAAE;gBACP,cAAc,EAAE,6BAA6B;gBAC7C,YAAY,EAAE,IAAI;aACnB;SACF,CACF,CACF,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=powTasks.unit.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"powTasks.unit.test.d.ts","sourceRoot":"","sources":["../../../../../src/tests/unit/tasks/powCaptcha/powTasks.unit.test.ts"],"names":[],"mappings":""}