tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

onmessage.worker.js (1241B)


      1 importScripts("/resources/testharness.js");
      2 
      3 test(function() {
      4  self.onmessage = 1;
      5  assert_equals(self.onmessage, null,
      6                "attribute should return null after being set to a primitive");
      7 }, "Setting onmessage to 1");
      8 
      9 test(function() {
     10  var object = {
     11    handleEvent: this.unreached_func()
     12  };
     13  self.onmessage = object;
     14  assert_equals(self.onmessage, object,
     15                "attribute should return the object it was set to.");
     16 
     17  self.dispatchEvent(new Event("message"));
     18 }, "Setting onmessage to an object");
     19 
     20 test(function() {
     21  var triggered = false;
     22  var f = function(e) { triggered = true; };
     23  self.onmessage = f;
     24  assert_equals(self.onmessage, f,
     25                "attribute should return the function it was set to.");
     26 
     27  self.dispatchEvent(new Event("message"));
     28  assert_true(triggered, "event handler should have been triggered");
     29 }, "Setting onmessage to a function");
     30 
     31 
     32 test(function() {
     33  assert_not_equals(self.onmessage, null,
     34                    "attribute should not return null after being set to a function");
     35  self.onmessage = 1;
     36  assert_equals(self.onmessage, null,
     37                "attribute should return null after being set to a primitive");
     38 }, "Setting onmessage to 1 (again)");
     39 
     40 done();