Mochitest runner

by jib1

HTML

<div id="div"></div>

JavaScript

var console = { log: msg => div.innerHTML += msg + "<br>",
                error: e => console.log(e) };
var getUserMedia = c => navigator.mediaDevices.getUserMedia(c);
var runTest = f => f().catch(e => console.log(e));
var info = msg => console.log(msg);
var ok = (ok, msg) => info((ok ? "OK " : "UNEXPECTED ") + msg);
var is = (a, b, msg) => info(((a == b)? "OK " : ("UNEXPECTED (got "+a+") ")) + msg);
var haveGumOn = () => navigator.mediaDevices.enumerateDevices()
  .then(([device]) => device && !!device.label.length);

// Put mochitest below:

    var pc = new mozRTCPeerConnection();
    var options = { mandatory: { OfferToReceiveVideo: true } }; // obsolete

    pc.createOffer(options).then(() => ok(false, "createOffer must not succeed"),
                                 e => is(e.name, "InternaslError",
                                         "createOffer must fail"))
    .catch(e => ok(false, e.message))