apify-test-tools 0.10.1-beta.6 → 0.10.1

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 (58) hide show
  1. package/CHANGELOG.md +1 -3
  2. package/bin/build-from-local.ts +19 -27
  3. package/bin/build.ts +1 -1
  4. package/bin/diff-changes.ts +26 -35
  5. package/bin/dockerignore.ts +24 -17
  6. package/bin/types.ts +7 -3
  7. package/bin/utils/config/actor-json.ts +49 -8
  8. package/bin/utils/config/load-config.ts +4 -24
  9. package/bin/utils/path/repo-relative.ts +27 -4
  10. package/dist/bin/build-from-local.d.ts +3 -2
  11. package/dist/bin/build-from-local.d.ts.map +1 -1
  12. package/dist/bin/build-from-local.js +16 -23
  13. package/dist/bin/build-from-local.js.map +1 -1
  14. package/dist/bin/build.js +1 -1
  15. package/dist/bin/build.js.map +1 -1
  16. package/dist/bin/diff-changes.d.ts.map +1 -1
  17. package/dist/bin/diff-changes.js +26 -29
  18. package/dist/bin/diff-changes.js.map +1 -1
  19. package/dist/bin/dockerignore.d.ts +11 -10
  20. package/dist/bin/dockerignore.d.ts.map +1 -1
  21. package/dist/bin/dockerignore.js +24 -15
  22. package/dist/bin/dockerignore.js.map +1 -1
  23. package/dist/bin/types.d.ts +6 -3
  24. package/dist/bin/types.d.ts.map +1 -1
  25. package/dist/bin/utils/config/actor-json.d.ts.map +1 -1
  26. package/dist/bin/utils/config/actor-json.js +35 -4
  27. package/dist/bin/utils/config/actor-json.js.map +1 -1
  28. package/dist/bin/utils/config/load-config.d.ts +1 -11
  29. package/dist/bin/utils/config/load-config.d.ts.map +1 -1
  30. package/dist/bin/utils/config/load-config.js +1 -10
  31. package/dist/bin/utils/config/load-config.js.map +1 -1
  32. package/dist/bin/utils/path/repo-relative.d.ts +4 -0
  33. package/dist/bin/utils/path/repo-relative.d.ts.map +1 -1
  34. package/dist/bin/utils/path/repo-relative.js +24 -5
  35. package/dist/bin/utils/path/repo-relative.js.map +1 -1
  36. package/dist/test/unit/bin/actor-filtering.test.js +8 -2
  37. package/dist/test/unit/bin/actor-filtering.test.js.map +1 -1
  38. package/dist/test/unit/bin/build-from-local.test.js +53 -5
  39. package/dist/test/unit/bin/build-from-local.test.js.map +1 -1
  40. package/dist/test/unit/bin/diff-changes.test.js +98 -132
  41. package/dist/test/unit/bin/diff-changes.test.js.map +1 -1
  42. package/dist/test/unit/bin/dockerignore.test.js +27 -24
  43. package/dist/test/unit/bin/dockerignore.test.js.map +1 -1
  44. package/dist/test/unit/bin/utils/config/load-config.test.js +40 -4
  45. package/dist/test/unit/bin/utils/config/load-config.test.js.map +1 -1
  46. package/dist/test/unit/bin/utils/path/repo-relative.test.js +5 -0
  47. package/dist/test/unit/bin/utils/path/repo-relative.test.js.map +1 -1
  48. package/dist/test/unit/should-built-and-test.test.js +55 -116
  49. package/dist/test/unit/should-built-and-test.test.js.map +1 -1
  50. package/dist/tsconfig.tsbuildinfo +1 -1
  51. package/package.json +65 -65
  52. package/test/unit/bin/actor-filtering.test.ts +8 -2
  53. package/test/unit/bin/build-from-local.test.ts +54 -8
  54. package/test/unit/bin/diff-changes.test.ts +133 -133
  55. package/test/unit/bin/dockerignore.test.ts +28 -28
  56. package/test/unit/bin/utils/config/load-config.test.ts +54 -4
  57. package/test/unit/bin/utils/path/repo-relative.test.ts +6 -0
  58. package/test/unit/should-built-and-test.test.ts +98 -121
@@ -21,8 +21,6 @@ const findOverlappingContextPaths = (contextPaths) => {
21
21
  }
22
22
  return undefined;
23
23
  };
24
- // Downstream ActorConfig consumers still use "" for the repo root.
25
- const legacyPath = (dir) => (dir.path === '.' ? '' : dir.path);
26
24
  // #endregion
27
25
  // #region stages
28
26
  /** Stage 1 — the config file as a plain object, or a failure phrased for whoever wrote it. */
@@ -79,13 +77,6 @@ export const loadActorConfig = (entry) => {
79
77
  contextPaths,
80
78
  };
81
79
  };
82
- const toLegacyActorConfig = (entry) => ({
83
- actorFullName: entry.actorFullName,
84
- folder: legacyPath(entry.folder),
85
- tokenEnvVar: entry.tokenEnvVar,
86
- dockerContextDir: legacyPath(entry.dockerContextDir),
87
- contextPaths: entry.contextPaths.map(legacyPath),
88
- });
89
80
  // #endregion
90
81
  export const readConfigFile = async (selection) => {
91
82
  const rawFileContents = await readConfigFileContents();
@@ -93,7 +84,7 @@ export const readConfigFile = async (selection) => {
93
84
  const actorConfigs = [];
94
85
  for (const parsed of parsedConfigs) {
95
86
  // Sequential on purpose: the first actor with a problem should be the one reported.
96
- actorConfigs.push(toLegacyActorConfig(loadActorConfig(parsed)));
87
+ actorConfigs.push(loadActorConfig(parsed));
97
88
  }
98
89
  return selectActors(selection, actorConfigs);
99
90
  };
@@ -1 +1 @@
1
- {"version":3,"file":"load-config.js","sourceRoot":"","sources":["../../../../bin/utils/config/load-config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"load-config.js","sourceRoot":"","sources":["../../../../bin/utils/config/load-config.ts"],"names":[],"mappings":"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"}
@@ -9,8 +9,11 @@ export declare abstract class AbstractPath {
9
9
  }
10
10
  export declare class RelativeDir extends AbstractPath {
11
11
  static readonly ROOT: RelativeDir;
12
+ isRoot(): boolean;
12
13
  joinDir(relativePath: string): RelativeDir;
13
14
  joinFile(relativePath: string): RelativeFile;
15
+ relativePathTo(filePath: string): string;
16
+ containsPath(filePath: string): boolean;
14
17
  contains(other: AbstractPath): boolean;
15
18
  isStrictAncestorOf(other: AbstractPath): boolean;
16
19
  assertIsDir(): this;
@@ -26,6 +29,7 @@ export declare class RelativeFile extends AbstractPath {
26
29
  joinDir(relativePath: string): RelativeDir;
27
30
  joinFile(relativePath: string): RelativeFile;
28
31
  isWithin(scope: RelativeDir): boolean;
32
+ exists(): boolean;
29
33
  assertIsFile(): this;
30
34
  }
31
35
  export declare class ExistingFile extends RelativeFile {
@@ -1 +1 @@
1
- {"version":3,"file":"repo-relative.d.ts","sourceRoot":"","sources":["../../../../bin/utils/path/repo-relative.ts"],"names":[],"mappings":"AAgBA,8BAAsB,YAAY;;gBAElB,OAAO,EAAE,MAAM;IAW3B,SAAS,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO;IAMvC,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,QAAQ,IAAI,MAAM;IAIlB,MAAM,IAAI,MAAM;IAIhB,OAAO,CAAC,cAAc;CAKzB;AAED,qBAAa,WAAY,SAAQ,YAAY;IACzC,MAAM,CAAC,QAAQ,CAAC,IAAI,cAAwB;IAE5C,OAAO,CAAC,YAAY,EAAE,MAAM,GAAG,WAAW;IAI1C,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,YAAY;IAO5C,QAAQ,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO;IAMtC,kBAAkB,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO;IAOhD,WAAW,IAAI,IAAI;IAQnB,OAAO,CAAC,IAAI;CAOf;AAED,qBAAa,WAAY,SAAQ,WAAW;gBAC5B,OAAO,EAAE,MAAM;IAK3B,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,WAAW,GAAG,WAAW;CAGnD;AAED,qBAAa,YAAa,SAAQ,YAAY;gBAC9B,OAAO,EAAE,MAAM;IAM3B,IAAI,MAAM,IAAI,WAAW,CAExB;IAID,OAAO,CAAC,YAAY,EAAE,MAAM,GAAG,WAAW;IAK1C,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,YAAY;IAI5C,QAAQ,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO;IAMrC,YAAY,IAAI,IAAI;CAOvB;AAED,qBAAa,YAAa,SAAQ,YAAY;gBAC9B,OAAO,EAAE,MAAM;IAK3B,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,YAAY,GAAG,YAAY;CAGtD"}
1
+ {"version":3,"file":"repo-relative.d.ts","sourceRoot":"","sources":["../../../../bin/utils/path/repo-relative.ts"],"names":[],"mappings":"AAgBA,8BAAsB,YAAY;;gBAElB,OAAO,EAAE,MAAM;IAW3B,SAAS,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO;IAMvC,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,QAAQ,IAAI,MAAM;IAIlB,MAAM,IAAI,MAAM;IAIhB,OAAO,CAAC,cAAc;CAKzB;AAED,qBAAa,WAAY,SAAQ,YAAY;IACzC,MAAM,CAAC,QAAQ,CAAC,IAAI,cAAwB;IAE5C,MAAM,IAAI,OAAO;IAIjB,OAAO,CAAC,YAAY,EAAE,MAAM,GAAG,WAAW;IAI1C,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,YAAY;IAM5C,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM;IAKxC,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;IAUvC,QAAQ,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO;IAMtC,kBAAkB,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO;IAOhD,WAAW,IAAI,IAAI;IAQnB,OAAO,CAAC,IAAI;CAOf;AAED,qBAAa,WAAY,SAAQ,WAAW;gBAC5B,OAAO,EAAE,MAAM;IAK3B,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,WAAW,GAAG,WAAW;CAGnD;AAED,qBAAa,YAAa,SAAQ,YAAY;gBAC9B,OAAO,EAAE,MAAM;IAM3B,IAAI,MAAM,IAAI,WAAW,CAExB;IAID,OAAO,CAAC,YAAY,EAAE,MAAM,GAAG,WAAW;IAK1C,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,YAAY;IAI5C,QAAQ,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO;IAIrC,MAAM,IAAI,OAAO;IAOjB,YAAY,IAAI,IAAI;CAOvB;AAED,qBAAa,YAAa,SAAQ,YAAY;gBAC9B,OAAO,EAAE,MAAM;IAK3B,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,YAAY,GAAG,YAAY;CAGtD"}
@@ -45,6 +45,9 @@ export class AbstractPath {
45
45
  }
46
46
  export class RelativeDir extends AbstractPath {
47
47
  static ROOT = new RelativeDir('.');
48
+ isRoot() {
49
+ return this.path === RelativeDir.ROOT.path;
50
+ }
48
51
  joinDir(relativePath) {
49
52
  return new RelativeDir(this.join(relativePath));
50
53
  }
@@ -53,10 +56,23 @@ export class RelativeDir extends AbstractPath {
53
56
  assertNamesFile(relativePath);
54
57
  return new RelativeFile(this.join(relativePath));
55
58
  }
59
+ relativePathTo(filePath) {
60
+ // mainly for matching against .dockerignore since paths consumed by it are relative to the docker context dir
61
+ return posix.relative(this.path, filePath);
62
+ }
63
+ containsPath(filePath) {
64
+ try {
65
+ // should be OK even if not a directory (e.g. a file)
66
+ return this.contains(new RelativeDir(filePath));
67
+ }
68
+ catch {
69
+ return false;
70
+ }
71
+ }
56
72
  // True when `other` is this directory itself or lies inside it.
57
73
  contains(other) {
58
74
  // the root contains every path
59
- if (this.path === '.')
75
+ if (this.isRoot())
60
76
  return true;
61
77
  return this.isEqualTo(other) || other.path.startsWith(`${this.path}/`);
62
78
  }
@@ -113,16 +129,19 @@ export class RelativeFile extends AbstractPath {
113
129
  isWithin(scope) {
114
130
  return scope.contains(this);
115
131
  }
132
+ exists() {
133
+ // `stat`, not `lstat`: a symlink must resolve to its target, matching what reading it does.
134
+ return statSync(this.path, { throwIfNoEntry: false })?.isFile() ?? false;
135
+ }
116
136
  // Throws unless this path exists and is a file. Paths resolve against the process working
117
137
  // directory, which is the repo root.
118
138
  assertIsFile() {
119
- // `stat`, not `lstat`: a symlink must resolve to its target, matching what reading it does.
139
+ if (this.exists())
140
+ return this;
120
141
  const stats = statSync(this.path, { throwIfNoEntry: false });
121
142
  if (!stats)
122
143
  throw new Error(`Expected file "${this}" to exist.`);
123
- if (!stats.isFile())
124
- throw new Error(`Expected "${this}" to be a file.`);
125
- return this;
144
+ throw new Error(`Expected "${this}" to be a file.`);
126
145
  }
127
146
  }
128
147
  export class ExistingFile extends RelativeFile {
@@ -1 +1 @@
1
- {"version":3,"file":"repo-relative.js","sourceRoot":"","sources":["../../../../bin/utils/path/repo-relative.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"repo-relative.js","sourceRoot":"","sources":["../../../../bin/utils/path/repo-relative.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,16 @@
1
1
  import { describe, expect, it } from 'vitest';
2
2
  import { selectActors } from '../../../bin/actor-filtering.js';
3
+ import { ExistingDir, ExistingFile, RelativeDir } from '../../../bin/utils/path/repo-relative.js';
3
4
  const actor = (actorFullName) => ({
4
5
  actorFullName,
5
- folder: actorFullName.split('/')[1],
6
+ folder: new ExistingDir('.'),
6
7
  tokenEnvVar: 'TOKEN',
7
- dockerContextDir: '.',
8
+ actorJson: {
9
+ // kind of a hack, but its not supposed to be read here
10
+ file: new ExistingFile('package.json'),
11
+ dockerContextDir: RelativeDir.ROOT,
12
+ },
13
+ dockerContextDir: new RelativeDir('.'),
8
14
  contextPaths: [],
9
15
  });
10
16
  const configs = [actor('owner/a'), actor('owner/b'), actor('owner/c')];
@@ -1 +1 @@
1
- {"version":3,"file":"actor-filtering.test.js","sourceRoot":"","sources":["../../../../test/unit/bin/actor-filtering.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAE9C,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAG/D,MAAM,KAAK,GAAG,CAAC,aAAqB,EAAe,EAAE,CAAC,CAAC;IACnD,aAAa;IACb,MAAM,EAAE,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACnC,WAAW,EAAE,OAAO;IACpB,gBAAgB,EAAE,GAAG;IACrB,YAAY,EAAE,EAAE;CACnB,CAAC,CAAC;AAEH,MAAM,OAAO,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;AACvE,MAAM,KAAK,GAAG,CAAC,MAAqB,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;AAE5E,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;IAC1B,EAAE,CAAC,+CAA+C,EAAE,GAAG,EAAE;QACrD,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC;YAC3E,SAAS;YACT,SAAS;YACT,SAAS;SACZ,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0CAA0C,EAAE,GAAG,EAAE;QAChD,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC;YAC/F,SAAS;YACT,SAAS;SACZ,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qCAAqC,EAAE,GAAG,EAAE;QAC3C,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,SAAS,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC;IACpH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gEAAgE,EAAE,GAAG,EAAE;QACtE,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,SAAS,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC;YACxG,SAAS;SACZ,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qEAAqE,EAAE,GAAG,EAAE;QAC3E,MAAM,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,SAAS,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;IAClG,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uDAAuD,EAAE,GAAG,EAAE;QAC7D,MAAM,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,SAAS,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CACrF,4EAA4E,CAC/E,CAAC;IACN,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"actor-filtering.test.js","sourceRoot":"","sources":["../../../../test/unit/bin/actor-filtering.test.ts"],"names":[],"mappings":"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"}
@@ -8,6 +8,7 @@ import { collectNonIgnoredFiles, collectSourceFiles, flattenMonorepoContext, rew
8
8
  // tsconfig (used for the real build and for eslint's type-aware linting) has no such restriction.
9
9
  } from '../../../bin/build-from-local.js';
10
10
  import * as Utils from '../../../bin/utils.js';
11
+ import { ExistingDir, ExistingFile, RelativeDir } from '../../../bin/utils/path/repo-relative.js';
11
12
  const mkTempDir = async (prefix) => fs.mkdtemp(path.join(os.tmpdir(), prefix));
12
13
  describe('build-from-local helpers', () => {
13
14
  const tempDirs = [];
@@ -21,12 +22,48 @@ describe('build-from-local helpers', () => {
21
22
  tempDirs.push(rootDir);
22
23
  await fs.writeFile(path.join(rootDir, 'main.js'), 'console.log(1)');
23
24
  await fs.writeFile(path.join(rootDir, '.env'), 'SECRET=1');
25
+ await fs.writeFile(path.join(rootDir, 'docker-ignored.txt'), 'ignored');
26
+ await fs.writeFile(path.join(rootDir, '.dockerignore'), 'docker-ignored.txt\n');
24
27
  await fs.mkdir(path.join(rootDir, 'sub'));
25
28
  await fs.writeFile(path.join(rootDir, 'sub', 'ignored.log'), 'log');
26
- vi.spyOn(Utils, 'listRepoFilePaths').mockResolvedValue(['main.js', '.env', 'sub/ignored.log']);
29
+ vi.spyOn(Utils, 'listRepoFilePaths').mockResolvedValue([
30
+ 'main.js',
31
+ '.env',
32
+ 'docker-ignored.txt',
33
+ 'sub/ignored.log',
34
+ ]);
27
35
  vi.spyOn(Utils, 'getGitignoredPaths').mockImplementation(async (relativePaths) => new Set(relativePaths.filter((p) => p.endsWith('.log'))));
28
- const result = await collectNonIgnoredFiles(rootDir, rootDir);
29
- expect(result).toStrictEqual([path.join(rootDir, 'main.js')]);
36
+ const originalCwd = process.cwd();
37
+ process.chdir(rootDir);
38
+ try {
39
+ expect(await collectNonIgnoredFiles(RelativeDir.ROOT, rootDir)).toStrictEqual([
40
+ path.join(rootDir, 'main.js'),
41
+ ]);
42
+ }
43
+ finally {
44
+ process.chdir(originalCwd);
45
+ }
46
+ });
47
+ it('matches .dockerignore relative to a nested Docker context', async () => {
48
+ const rootDir = await mkTempDir('apify-test-tools-nested-context-');
49
+ tempDirs.push(rootDir);
50
+ await fs.mkdir(path.join(rootDir, 'actors', 'shopify'), { recursive: true });
51
+ await fs.writeFile(path.join(rootDir, 'actors', 'shopify', '.dockerignore'), 'dist/\n');
52
+ vi.spyOn(Utils, 'listRepoFilePaths').mockResolvedValue([
53
+ 'actors/shopify/dist/bundle.js',
54
+ 'actors/shopify/src/main.ts',
55
+ ]);
56
+ vi.spyOn(Utils, 'getGitignoredPaths').mockResolvedValue(new Set());
57
+ const originalCwd = process.cwd();
58
+ process.chdir(rootDir);
59
+ try {
60
+ expect(await collectNonIgnoredFiles(new RelativeDir('actors/shopify'), rootDir)).toStrictEqual([
61
+ path.join(rootDir, 'actors', 'shopify', 'src', 'main.ts'),
62
+ ]);
63
+ }
64
+ finally {
65
+ process.chdir(originalCwd);
66
+ }
30
67
  });
31
68
  });
32
69
  describe('flattenMonorepoContext', () => {
@@ -100,8 +137,19 @@ describe('build-from-local helpers', () => {
100
137
  'actors/owner_actor/.actor/actor.json',
101
138
  'package.json',
102
139
  ]);
103
- vi.spyOn(Utils, 'getGitignoredPaths').mockResolvedValue(new Set(['actors/owner_actor/.actor/actor.json']));
104
- const sourceFiles = await collectSourceFiles('owner/actor', actorDir);
140
+ vi.spyOn(Utils, 'getGitignoredPaths').mockResolvedValue(new Set());
141
+ const actorConfig = {
142
+ actorFullName: 'owner/actor',
143
+ folder: new ExistingDir('actors/owner_actor'),
144
+ tokenEnvVar: 'APIFY_TOKEN',
145
+ actorJson: {
146
+ file: new ExistingFile('actors/owner_actor/.actor/actor.json'),
147
+ dockerContextDir: RelativeDir.ROOT,
148
+ },
149
+ dockerContextDir: RelativeDir.ROOT,
150
+ contextPaths: [RelativeDir.ROOT],
151
+ };
152
+ const sourceFiles = await collectSourceFiles(actorConfig);
105
153
  expect(sourceFiles.map((file) => file.name)).toContain('.actor/actor.json');
106
154
  }
107
155
  finally {
@@ -1 +1 @@
1
- {"version":3,"file":"build-from-local.test.js","sourceRoot":"","sources":["../../../../test/unit/bin/build-from-local.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"build-from-local.test.js","sourceRoot":"","sources":["../../../../test/unit/bin/build-from-local.test.ts"],"names":[],"mappings":"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"}