text: 
  var test = require('tape')
  var _JSON = require('../')
  
  function clone (o) {
    return JSON.parse(JSON.stringify(o))
  }
  
  var examples = {
    simple: { foo: [], bar: {}, baz: new Buffer('some binary data') },
    just_buffer: new Buffer('JUST A BUFFER'),
    all_types: {
      string:'hello',
      number: 3145,
      null: null,
      object: {},
      array: [],
      boolean: true,
      boolean2: false
    },
    foo: new Buffer('foo'),
    foo2: new Buffer('foo2'),
    escape: {
      buffer: new Buffer('x'),
      string: _JSON.stringify(new Buffer('x'))
    },
    escape2: {
      buffer: new Buffer('x'),
      string: ':base64:'+ new Buffer('x').toString('base64')
    },
    undefined: {
      empty: undefined, test: true
    },
    undefined2: {
      first: 1, empty: undefined, test: true
    },
    undefinedArray: {
      array: [undefined, 1, 'two']
    },
    fn: {
      fn: function () {}    
    },
    undefined: undefined
  }
  
  for(k in examples)
  (function (value, k) { 
    test(k, function (t) {
      var s = _JSON.stringify(value)
      console.log('parse', s)
      if(JSON.stringify(value) !== undefined) {
        console.log(s)
        var _value = _JSON.parse(s)
        t.deepEqual(clone(_value), clone(value))
      }
      else
        t.equal(s, undefined)
      t.end()
    })
  })(examples[k], k)
  
  
  
  