Blog2013 ≫ Vows skeleton test generator update

Updated my Vows skeleton test generator1 for node.js so it now parses the original file looking for comments that say what the method should return, like phpunit does2. For examples, see the source code3 and tests it creates4:

/**
 * @assert ( 'foo' ) === 'foo'
 * @assert ( 66 ) === '66'
 */

creates

vows.describe( 'skelgen' ).addBatch( {
  'skelgen.sanitise': {
    'handles good input': function ( ) {
      assert.deepEqual( skelgen.sanitise('foo'), 'foo' );
      assert.deepEqual( skelgen.sanitise(66), '66' );
    },
    'handles bad input': function ( ) {
      assert.doesNotThrow(
        function ( ) {
          skelgen.sanitise( 'foo' );
          skelgen.sanitise( 66 );
          skelgen.sanitise( undefined );
          skelgen.sanitise( null );
          skelgen.sanitise( [] );
          skelgen.sanitise( {} );
          skelgen.sanitise( new Date( ) );
        }
      );
    }
  }
} ).run( );

See the repo1 for how to install it and use it.

All those links to twitter are not relevant, just something that coincidentally looks like a twitter account...

UPDATE: wow this is old I don't code like this any more, nor use Vows.

⬅️ :: ➡️

Paul Clarke's weblog - I live in Hythe in Kent. Wed + father to two, I'm a full stack web engineer, + I do js / Node, some ruby, other languages etc. I like pubbing, parkrun, eating, home-automation and other diy stuff, history, tree stuff, Television, squirrels, pirates, lego, + TIME TRAVEL.