1 | var assert = require('assert'),
|
2 | nodeuuid = require('../'),
|
3 | uuidjs = require('uuid-js'),
|
4 | util = require('util'),
|
5 | exec = require('child_process').exec,
|
6 | os = require('os');
|
7 |
|
8 |
|
9 |
|
10 | var uuidCmd = os.type() === 'Darwin' ? 'uuid -1' : 'uuidgen -t';
|
11 |
|
12 | function compare(ids) {
|
13 | console.log(ids);
|
14 | for (var i = 0; i < ids.length; i++) {
|
15 | var id = ids[i].split('-');
|
16 | id = [id[2], id[1], id[0]].join('');
|
17 | ids[i] = id;
|
18 | }
|
19 | var sorted = ([].concat(ids)).sort();
|
20 |
|
21 | if (sorted.toString() !== ids.toString()) {
|
22 | console.log('Warning: sorted !== ids');
|
23 | } else {
|
24 | console.log('everything in order!');
|
25 | }
|
26 | }
|
27 |
|
28 |
|
29 | var ids = [];
|
30 | while (ids.length < 10e3) ids.push(nodeuuid.v1());
|
31 |
|
32 | var max = 10;
|
33 | console.log('node-uuid:');
|
34 | ids = [];
|
35 | for (var i = 0; i < max; i++) ids.push(nodeuuid.v1());
|
36 | compare(ids);
|
37 |
|
38 | console.log('');
|
39 | console.log('uuidjs:');
|
40 | ids = [];
|
41 | for (var i = 0; i < max; i++) ids.push(uuidjs.create(1).toString());
|
42 | compare(ids);
|
43 |
|
44 | console.log('');
|
45 | console.log('libuuid:');
|
46 | ids = [];
|
47 | var count = 0;
|
48 | var last = function() {
|
49 | compare(ids);
|
50 | }
|
51 | var cb = function(err, stdout, stderr) {
|
52 | ids.push(stdout.substring(0, stdout.length-1));
|
53 | count++;
|
54 | if (count < max) {
|
55 | return next();
|
56 | }
|
57 | last();
|
58 | };
|
59 | var next = function() {
|
60 | exec(uuidCmd, cb);
|
61 | };
|
62 | next();
|