apify-test-tools 0.9.1-beta.0 → 0.9.1-beta.10

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 (135) hide show
  1. package/.github/CODEOWNERS +1 -2
  2. package/.github/actionlint.yaml +12 -0
  3. package/.github/actions/checkout-restore-dependencies/action.yaml +94 -0
  4. package/.github/review-prompt.md +154 -0
  5. package/.github/scripts/check-major-tag-refs.mjs +72 -0
  6. package/.github/scripts/check-package-version-bump.mjs +74 -0
  7. package/.github/scripts/run-with-apify-tokens.mjs +104 -0
  8. package/.github/workflows/_check_code.yaml +16 -0
  9. package/.github/workflows/_move_major_tag.yaml +108 -0
  10. package/.github/workflows/_update_release_metadata.yaml +12 -0
  11. package/.github/workflows/manual_move_major_tag.yaml +26 -0
  12. package/.github/workflows/manual_release_stable.yaml +12 -0
  13. package/.github/workflows/on_master.yaml +11 -0
  14. package/.github/workflows/on_pull_request.yaml +49 -1
  15. package/.github/workflows/public_claude.yaml +101 -0
  16. package/.github/workflows/public_platform-tests-claude-investigate-and-fix.yaml +208 -0
  17. package/.github/workflows/public_platform-tests.yaml +63 -0
  18. package/.github/workflows/public_pr-build-test.yaml +175 -0
  19. package/.github/workflows/public_push-build-latest.yaml +44 -0
  20. package/.github/workflows/public_review.yaml +107 -0
  21. package/.github/workflows-package-version +1 -0
  22. package/.prettierignore +9 -0
  23. package/.vscode/settings.json +2 -1
  24. package/CHANGELOG.md +14 -0
  25. package/CONTRIBUTING.md +53 -2
  26. package/README.md +151 -9
  27. package/bin/build-from-local.ts +23 -28
  28. package/bin/build.ts +82 -70
  29. package/bin/main.ts +2 -1
  30. package/bin/types.ts +0 -11
  31. package/bin/utils/config/load-config.ts +133 -0
  32. package/bin/utils/config/parser.ts +88 -0
  33. package/bin/utils/config/structures/base.ts +61 -0
  34. package/bin/utils/config/structures/legacy.ts +20 -0
  35. package/bin/utils/json-file.ts +55 -0
  36. package/bin/utils.ts +5 -150
  37. package/dist/bin/build-from-local.d.ts +2 -2
  38. package/dist/bin/build-from-local.d.ts.map +1 -1
  39. package/dist/bin/build-from-local.js +20 -19
  40. package/dist/bin/build-from-local.js.map +1 -1
  41. package/dist/bin/build.d.ts +7 -11
  42. package/dist/bin/build.d.ts.map +1 -1
  43. package/dist/bin/build.js +51 -50
  44. package/dist/bin/build.js.map +1 -1
  45. package/dist/bin/main.d.ts.map +1 -1
  46. package/dist/bin/main.js +2 -1
  47. package/dist/bin/main.js.map +1 -1
  48. package/dist/bin/types.d.ts +0 -9
  49. package/dist/bin/types.d.ts.map +1 -1
  50. package/dist/bin/utils/config/load-config.d.ts +13 -0
  51. package/dist/bin/utils/config/load-config.d.ts.map +1 -0
  52. package/dist/bin/utils/config/load-config.js +99 -0
  53. package/dist/bin/utils/config/load-config.js.map +1 -0
  54. package/dist/bin/utils/config/parser.d.ts +19 -0
  55. package/dist/bin/utils/config/parser.d.ts.map +1 -0
  56. package/dist/bin/utils/config/parser.js +72 -0
  57. package/dist/bin/utils/config/parser.js.map +1 -0
  58. package/dist/bin/utils/config/structures/base.d.ts +35 -0
  59. package/dist/bin/utils/config/structures/base.d.ts.map +1 -0
  60. package/dist/bin/utils/config/structures/base.js +40 -0
  61. package/dist/bin/utils/config/structures/base.js.map +1 -0
  62. package/dist/bin/utils/config/structures/legacy.d.ts +6 -0
  63. package/dist/bin/utils/config/structures/legacy.d.ts.map +1 -0
  64. package/dist/bin/utils/config/structures/legacy.js +14 -0
  65. package/dist/bin/utils/config/structures/legacy.js.map +1 -0
  66. package/dist/bin/utils/json-file.d.ts +20 -0
  67. package/dist/bin/utils/json-file.d.ts.map +1 -0
  68. package/dist/bin/utils/json-file.js +42 -0
  69. package/dist/bin/utils/json-file.js.map +1 -0
  70. package/dist/bin/utils.d.ts +5 -8
  71. package/dist/bin/utils.d.ts.map +1 -1
  72. package/dist/bin/utils.js +4 -107
  73. package/dist/bin/utils.js.map +1 -1
  74. package/dist/lib/consts.d.ts +1 -0
  75. package/dist/lib/consts.d.ts.map +1 -1
  76. package/dist/lib/consts.js +3 -0
  77. package/dist/lib/consts.js.map +1 -1
  78. package/dist/lib/lib.d.ts +10 -0
  79. package/dist/lib/lib.d.ts.map +1 -1
  80. package/dist/lib/lib.js +24 -18
  81. package/dist/lib/lib.js.map +1 -1
  82. package/dist/lib/types.d.ts +11 -3
  83. package/dist/lib/types.d.ts.map +1 -1
  84. package/dist/test/unit/bin/utils/config/load-config.test.d.ts +2 -0
  85. package/dist/test/unit/bin/utils/config/load-config.test.d.ts.map +1 -0
  86. package/dist/test/unit/bin/utils/config/load-config.test.js +138 -0
  87. package/dist/test/unit/bin/utils/config/load-config.test.js.map +1 -0
  88. package/dist/test/unit/bin/utils/config/parser.test.d.ts +2 -0
  89. package/dist/test/unit/bin/utils/config/parser.test.d.ts.map +1 -0
  90. package/dist/test/unit/bin/utils/config/parser.test.js +111 -0
  91. package/dist/test/unit/bin/utils/config/parser.test.js.map +1 -0
  92. package/dist/test/unit/bin/utils/config/structures/base.test.d.ts +2 -0
  93. package/dist/test/unit/bin/utils/config/structures/base.test.d.ts.map +1 -0
  94. package/dist/test/unit/bin/utils/config/structures/base.test.js +74 -0
  95. package/dist/test/unit/bin/utils/config/structures/base.test.js.map +1 -0
  96. package/dist/test/unit/bin/utils/config/structures/legacy.test.d.ts +2 -0
  97. package/dist/test/unit/bin/utils/config/structures/legacy.test.d.ts.map +1 -0
  98. package/dist/test/unit/bin/utils/config/structures/legacy.test.js +63 -0
  99. package/dist/test/unit/bin/utils/config/structures/legacy.test.js.map +1 -0
  100. package/dist/test/unit/bin/utils/files.test.d.ts +2 -0
  101. package/dist/test/unit/bin/utils/files.test.d.ts.map +1 -0
  102. package/dist/test/unit/bin/utils/files.test.js +117 -0
  103. package/dist/test/unit/bin/utils/files.test.js.map +1 -0
  104. package/dist/test/unit/lib.test.d.ts +2 -0
  105. package/dist/test/unit/lib.test.d.ts.map +1 -0
  106. package/dist/test/unit/lib.test.js +37 -0
  107. package/dist/test/unit/lib.test.js.map +1 -0
  108. package/dist/tsconfig.tsbuildinfo +1 -1
  109. package/lib/consts.ts +4 -0
  110. package/lib/lib.ts +32 -20
  111. package/lib/types.ts +11 -3
  112. package/package.json +5 -2
  113. package/test/fixtures/bin/utils/files/array.json +1 -0
  114. package/test/fixtures/bin/utils/files/comments.jsonc +4 -0
  115. package/test/fixtures/bin/utils/files/directory.json/.gitkeep +0 -0
  116. package/test/fixtures/bin/utils/files/empty-object.json +1 -0
  117. package/test/fixtures/bin/utils/files/empty.json +0 -0
  118. package/test/fixtures/bin/utils/files/malformed.json +1 -0
  119. package/test/fixtures/bin/utils/files/nested.json +6 -0
  120. package/test/fixtures/bin/utils/files/no-json-extension.actorrc +1 -0
  121. package/test/fixtures/bin/utils/files/null.json +1 -0
  122. package/test/fixtures/bin/utils/files/number.json +1 -0
  123. package/test/fixtures/bin/utils/files/unreadable.json +1 -0
  124. package/test/tsconfig.json +4 -2
  125. package/test/unit/bin/utils/config/load-config.test.ts +179 -0
  126. package/test/unit/bin/utils/config/parser.test.ts +137 -0
  127. package/test/unit/bin/utils/config/structures/base.test.ts +83 -0
  128. package/test/unit/bin/utils/config/structures/legacy.test.ts +78 -0
  129. package/test/unit/bin/utils/files.test.ts +158 -0
  130. package/test/unit/lib.test.ts +53 -0
  131. package/dist/test/unit/bin/utils.test.d.ts +0 -2
  132. package/dist/test/unit/bin/utils.test.d.ts.map +0 -1
  133. package/dist/test/unit/bin/utils.test.js +0 -321
  134. package/dist/test/unit/bin/utils.test.js.map +0 -1
  135. package/test/unit/bin/utils.test.ts +0 -381
@@ -0,0 +1,37 @@
1
+ import { ApifyClient } from 'apify-client';
2
+ import { beforeEach, describe, expect, it, vi } from 'vitest';
3
+ import { DEFAULT_TEST_ACTOR_TIMEOUT_SECS } from '../../lib/consts.js';
4
+ import { _private } from '../../lib/lib.js';
5
+ import * as UtilsModule from '../../lib/utils.js';
6
+ const { createStartRunFn } = _private;
7
+ describe('createStartRunFn()', () => {
8
+ const actorCallMock = vi.fn(async () => Promise.resolve({ id: 'fake-run-id' }));
9
+ const testContext = { task: {}, annotate: vi.fn() };
10
+ vi.spyOn(UtilsModule, 'sleep').mockResolvedValue(undefined);
11
+ beforeEach(vi.clearAllMocks);
12
+ it('should apply default timeout to actor runs', async () => {
13
+ // Arrange
14
+ vi.spyOn(ApifyClient.prototype, 'actor').mockReturnValue({
15
+ call: actorCallMock,
16
+ get: vi.fn(async () => ({ defaultRunOptions: {} })),
17
+ });
18
+ // Act
19
+ await createStartRunFn('123', testContext)({ input: {} });
20
+ // Assert
21
+ expect(actorCallMock).toHaveBeenCalledTimes(1);
22
+ expect(actorCallMock).toHaveBeenCalledWith({}, { build: undefined, log: null, timeout: DEFAULT_TEST_ACTOR_TIMEOUT_SECS });
23
+ });
24
+ it('should respect the default actor run timeout if less', async () => {
25
+ // Arrange
26
+ vi.spyOn(ApifyClient.prototype, 'actor').mockReturnValue({
27
+ call: actorCallMock,
28
+ get: vi.fn(async () => ({ defaultRunOptions: { timeoutSecs: 60 } })),
29
+ });
30
+ // Act
31
+ await createStartRunFn('123', testContext)({ input: {} });
32
+ // Assert
33
+ expect(actorCallMock).toHaveBeenCalledTimes(1);
34
+ expect(actorCallMock).toHaveBeenCalledWith({}, { build: undefined, log: null, timeout: 60 });
35
+ });
36
+ });
37
+ //# sourceMappingURL=lib.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lib.test.js","sourceRoot":"","sources":["../../../test/unit/lib.test.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAE9D,OAAO,EAAE,+BAA+B,EAAE,MAAM,qBAAqB,CAAC;AACtE,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,KAAK,WAAW,MAAM,oBAAoB,CAAC;AAElD,MAAM,EAAE,gBAAgB,EAAE,GAAG,QAAQ,CAAC;AAEtC,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;IAChC,MAAM,aAAa,GAAG,EAAE,CAAC,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,aAAa,EAAc,CAAC,CAAC,CAAC;IAC5F,MAAM,WAAW,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,CAAC,EAAE,EAA6B,EAAiB,CAAC;IAE9F,EAAE,CAAC,KAAK,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;IAE5D,UAAU,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC;IAE7B,EAAE,CAAC,4CAA4C,EAAE,KAAK,IAAI,EAAE;QACxD,UAAU;QAEV,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,eAAe,CAAC;YACrD,IAAI,EAAE,aAAoC;YAC1C,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,iBAAiB,EAAE,EAAE,EAAE,CAAU,CAAuB;SACtE,CAAC,CAAC;QAElB,MAAM;QACN,MAAM,gBAAgB,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;QAE1D,SAAS;QACT,MAAM,CAAC,aAAa,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;QAC/C,MAAM,CAAC,aAAa,CAAC,CAAC,oBAAoB,CACtC,EAAE,EACF,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,+BAA+B,EAAE,CAC5E,CAAC;IACN,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sDAAsD,EAAE,KAAK,IAAI,EAAE;QAClE,UAAU;QACV,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,eAAe,CAAC;YACrD,IAAI,EAAE,aAAoC;YAC1C,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,iBAAiB,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,EAAE,CAAU,CAAuB;SACvF,CAAC,CAAC;QAElB,MAAM;QACN,MAAM,gBAAgB,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;QAE1D,SAAS;QACT,MAAM,CAAC,aAAa,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;QAC/C,MAAM,CAAC,aAAa,CAAC,CAAC,oBAAoB,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;IACjG,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}