old_contents: var test = require('tape')
  var crypto = require('../')
  
  test('randomBytes', function (t) {
      t.plan(5);
      t.equal(crypto.randomBytes(10).length, 10);
      t.ok(Buffer.isBuffer(crypto.randomBytes(10)))
      crypto.randomBytes(10, function(ex, bytes) {
          t.error(ex);
          t.equal(bytes.length, 10);
          t.ok(Buffer.isBuffer(bytes))
          t.end();
    });
  });
  
  test('randomBytes seem random', function (t) {
  
    var L = 1000
    var b = crypto.randomBytes(L)
  
    var mean = [].reduce.call(b, function (a, b) { return a + b}, 0) / L
  
    // test that the random numbers are plausably random.
    // Math.random() will pass this, but this will catch
    // terrible mistakes such as this blunder:
    // https://github.com/dominictarr/crypto-browserify/commit/3267955e1df7edd1680e52aeede9a89506ed2464#commitcomment-7916835
  
    // this doesn't check that the bytes are in a random *order*
    // but it's better than nothing.
  
    var expected = 256/2
    var smean = Math.sqrt(mean)
    //console.log doesn't work right on testling, *grumble grumble*
    console.log(JSON.stringify([expected - smean, mean, expected + smean]))
    t.ok(mean < expected + smean)
    t.ok(mean > expected - smean)
  
    t.end()
  
  })
  
  
  
new_contents: var test = require('tape')
  var crypto = require('../')
  
  test('get error message', function (t) {
  
    try {
      var b = crypto.randomBytes(10)
      t.ok(Buffer.isBuffer(b))
      t.end()
    } catch (err) {
      t.ok(/not supported/.test(err.message), '"not supported"  is in error message')
      t.end()
    }
  
  })
  
  test('randomBytes', function (t) {
      t.plan(5);
      t.equal(crypto.randomBytes(10).length, 10);
      t.ok(Buffer.isBuffer(crypto.randomBytes(10)))
      crypto.randomBytes(10, function(ex, bytes) {
          t.error(ex);
          t.equal(bytes.length, 10);
          t.ok(Buffer.isBuffer(bytes))
          t.end();
    });
  });
  
  test('randomBytes seem random', function (t) {
  
    var L = 1000
    var b = crypto.randomBytes(L)
  
    var mean = [].reduce.call(b, function (a, b) { return a + b}, 0) / L
  
    // test that the random numbers are plausably random.
    // Math.random() will pass this, but this will catch
    // terrible mistakes such as this blunder:
    // https://github.com/dominictarr/crypto-browserify/commit/3267955e1df7edd1680e52aeede9a89506ed2464#commitcomment-7916835
  
    // this doesn't check that the bytes are in a random *order*
    // but it's better than nothing.
  
    var expected = 256/2
    var smean = Math.sqrt(mean)
    //console.log doesn't work right on testling, *grumble grumble*
    console.log(JSON.stringify([expected - smean, mean, expected + smean]))
    t.ok(mean < expected + smean)
    t.ok(mean > expected - smean)
  
    t.end()
  
  })
  
  
  
subject: test that the error message is right, or a buffer is returned