All files / src/file-system-module/operations/read-file read-file-operation.function.ts

11.11% Statements 1/9
0% Branches 0/1
0% Functions 0/1
11.11% Lines 1/9

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31                              5x                              
/**
 * Exports read file operation function.
 *
 * @module
 */
import type { ReleaseLock } from '@agogpixel/pgmmv-resource-support/src/locks/release-lock.type';
 
import type { ReadFileOperationPayload } from './read-file-operation-payload.interface';
 
/**
 * Read file operation.
 *
 * @param payload Operation payload.
 * @param releaseLock Release lock callback.
 */
export function readFileOperation(payload: ReadFileOperationPayload, releaseLock: ReleaseLock) {
  const path = payload.path;
  const callback = payload.callback;
 
  const result = jsb.fileUtils.getStringFromFile(path);
 
  releaseLock();
 
  Iif (typeof result !== 'string') {
    callback(false, `Read operation of '${path}' failed immediately`);
    return;
  }
 
  callback(true, result);
}