polylabel 0.1.11

A Rust implementation of the Polylabel algorithm
Documentation
'use strict';

var test = require('tape');
var tinyQueue = require('./index');

var data = [];
for (var i = 0; i < 100; i++) {
    data.push(Math.floor(100 * Math.random()));
}

var sorted = data.slice().sort(function (a, b) {
    return a - b;
});

test('maintains a priority queue', function (t) {
    var queue = tinyQueue();
    for (var i = 0; i < data.length; i++) queue.push(data[i]);

    t.equal(queue.peek(), sorted[0]);

    var result = [];
    while (queue.length) result.push(queue.pop());

    t.same(result, sorted);

    t.end();
});

test('accepts data in constructor', function (t) {
    var queue = tinyQueue(data.slice());

    var result = [];
    while (queue.length) result.push(queue.pop());

    t.same(result, sorted);

    t.end();
});