npm.io
2.0.2 • Published 3 years ago

pascal-utils

Licence
MIT
Version
2.0.2
Deps
0
Size
22 kB
Vulns
0
Weekly
0
Stars
1

Pascal Utils

GitHub npm version Unit Tests codecov

Utility functions for compilation of simple pascal programs with the Free Pascal compiler in Node.js.

Contents

  1. Requirements
  2. Installation
  3. Usage
    1. Compiler Detection
    2. Compilation
  4. Examples

Requirements

  • The Free Pascal compiler.
  • Node.js v16.x or above.

Installation

Run yarn add pascal-utils -D or npm i pascal-utils --save-dev.

Usage

The documentation can be found here.

Compiler Detection

Run checkCompiler().then(({ version }) => ...) to check if the Free Pascal compiler is installed and is in the system path.

Compilation

Run compile(inputFile, outputFile).then(...) to compile a program.

Examples

const fs = require('fs/promises');
const pascalUtils = require('pascal-utils');

describe('Compiler detection', () => {
  it('Detects compiler', () => pascalUtils.checkCompiler()
    .then(() => {
      expect(true).toBeTruthy();
    }));
});

describe('Compilation', () => {
  const exeExtension = process.platform === 'win32' ? '.exe' : '';
  const sourceFile = './assets/hello.pas';
  const exeName = `./hello${exeExtension}`;
  it('Compiles and links', () => pascalUtils.compile(sourceFile, exeName)
    .then(() => {
      expect(true).toBeTruthy();
    }));
  afterAll(() => Promise.all([
    fs.unlink('./hello.o'),
    fs.unlink(exeName),
  ]));
});

Keywords