mirror of
				https://github.com/actions/setup-node.git
				synced 2025-10-26 07:16:44 +08:00 
			
		
		
		
	* Add project-dir * Fix find lock file * Remove package-dir input * format & resolve conflicts * Add unit tests * build dist * Apply change request fixes * handle non-dir cache-dependency-path * bump cache version * run checks * Handle globs in cacheDependencyPath * refactor, introduce `cacheDependencyPathToProjectsDirectories` it is necessary for the next PR related yarn optimization * Changes requests * Apply fixes * review fixes * add e2e * Add unique * review updates * review updates second stage * Review fixes 3 * imporve e2e tests
		
			
				
	
	
		
			30 lines
		
	
	
		
			680 B
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
			
		
		
	
	
			30 lines
		
	
	
		
			680 B
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
| import {Globber} from '@actions/glob';
 | |
| 
 | |
| export class MockGlobber implements Globber {
 | |
|   private readonly expected: string[];
 | |
|   constructor(expected: string[]) {
 | |
|     this.expected = expected;
 | |
|   }
 | |
|   getSearchPaths(): string[] {
 | |
|     return this.expected.slice();
 | |
|   }
 | |
| 
 | |
|   async glob(): Promise<string[]> {
 | |
|     const result: string[] = [];
 | |
|     for await (const itemPath of this.globGenerator()) {
 | |
|       result.push(itemPath);
 | |
|     }
 | |
|     return result;
 | |
|   }
 | |
| 
 | |
|   async *globGenerator(): AsyncGenerator<string, void> {
 | |
|     for (const e of this.expected) {
 | |
|       yield e;
 | |
|     }
 | |
|   }
 | |
| 
 | |
|   static async create(expected: string[]): Promise<MockGlobber> {
 | |
|     return new MockGlobber(expected);
 | |
|   }
 | |
| }
 |