var assert = require('assert');
var exec = require('child_process').exec;
var pkg = require('../package.json');

var json2defineCmd = 'node bin/json2define ';


describe('bin/json2define', function() {

  describe('help', function() {
    it('test --help option', function(done) {
      exec(json2defineCmd+'--help', function (error, stdout, stderr) {
        if (error) {
          assert.ok(false);
        } else {
          assert.ok(true);
        }
        done();
      });
    });
  });

  describe('version', function() {
    it('test --version option', function(done) {
      exec(json2defineCmd+'--version', function (error, stdout, stderr) {
        if (error) {
          assert.ok(false);
        } else {
          assert.deepEqual(pkg.version+'\n', stdout);
        }
        done();
      });
    });
  });

  describe('input', function() {
    it('test --input option', function(done) {
      exec(json2defineCmd+'--input test/samples/sample.json', function (error, stdout, stderr) {
        if (error) {
          assert.ok(false);
        } else {
          assert.ok(true);
        }
        done();
      });
    });
  });

});

@@ -942,15 +942,12 @@
 est/
-samples
+data
 /sam
@@ -1077,32 +1077,32 @@
 ssert.ok(true);%0A
-
         %7D%0A      
@@ -1120,28 +1120,561 @@
      %7D);%0A    %7D);
+%0A%0A    it('test --input option with broken json', function(done) %7B%0A      exec(json2defineCmd+'--input test/data/broken.json', function (error, stdout, stderr) %7B%0A        if (error) %7B%0A          assert.ok(false);%0A        %7D else %7B%0A          assert.ok(true);%0A        %7D%0A        done();%0A      %7D);%0A    %7D);%0A%0A    it('test --input option with broken filepath', function(done) %7B%0A      exec(json2defineCmd+'--input broken/filepath.json', function (error, stdout, stderr) %7B%0A        assert.deepEqual(error.code, 1);%0A        done();%0A      %7D);%0A    %7D);
 %0A  %7D);%0A%0A%7D);%0A

Update test.json2define.js