estktap

    0.1.6 • Public • Published

    estktap

    tap(tape) wrapper for testing adobe extendscript

    usage

    The estktap function takes 4 arguments:

    estktap(message, jsx_script_path, is_a, targets)
    
    1. message String: Description

    2. jsx_script_path String: Path to script to test

    3. is_a Number, String, Boolean, Function: Comparitor

    4. targets Array: (Optional) List of targets

    version number needs to be specified in targets [indesign-7.0,indesign-11] see versions.json

    example

    script to test

    • myfn.jsx
    Myfn = this.Myfn || {};
     
    // return Document page length
    Myfn.count = function(doc){
      if(doc.hasOwnProperty("pages")){
        return doc.pages.length
      }else{
        return undefined
      }
    };
     
    // add new Page to Document
    Myfn.add = function(doc){
      if(doc instanceof Document){
        doc.pages.add();
      }
      return doc;
    };

    write test

    • test.jsx (for testing myfn.jsx)
    #target InDesign-7.0
    #include "../myfn.jsx"
     
    var doc = (app.documents.length===0)? app.documents.add() : app.activeDocument;
    $.write(Myfn.count(doc)===1); // must

    You should append $.write(xxx) at end in extendscript code for the test, because it uses tap test as output.

    create runner

    • test.js (for running test.js)
    var test = require('tape'),
        estktap = require('estktap');
     
    test('this is adobe extendscript tap test',function(t){
      estktap('this must be true',__dirname+'/test/fixtures/test/test.jsx',true);
      t.end();
    });

    run

    $ node test.js
    

    or

    $ tape test.js
    

    more examples

    See example.js

    Keywords

    none

    Install

    npm i estktap

    DownloadsWeekly Downloads

    1

    Version

    0.1.6

    License

    MIT

    Unpacked Size

    6.33 kB

    Total Files

    9

    Last publish

    Collaborators

    • avatar