old_contents: /*global lolex */
  
  /**
   * Fake timer API
   * setTimeout
   * setInterval
   * clearTimeout
   * clearInterval
   * tick
   * reset
   * Date
   *
   * Inspired by jsUnitMockTimeOut from JsUnit
   *
   * @author Christian Johansen (christian@cjohansen.no)
   * @license BSD
   *
   * Copyright (c) 2010-2013 Christian Johansen
   */
  "use strict";
  
  if (typeof sinon == "undefined") {
      var sinon = {};
  }
  
  (function (global) {
      function makeApi(sinon, lol) {
          var llx = typeof lolex !== "undefined" ? lolex : lol;
  
          sinon.useFakeTimers = function () {
              var now, methods = Array.prototype.slice.call(arguments);
  
              if (typeof methods[0] === "string") {
                  now = 0;
              } else {
                  now = methods.shift();
              }
  
              var clock = llx.install(now || 0, methods);
              clock.restore = clock.uninstall;
              return clock;
          };
  
          sinon.clock = {
              create: function (now) {
                  return llx.createClock(now);
              }
          };
  
          sinon.timers = {
              setTimeout: setTimeout,
              clearTimeout: clearTimeout,
              setImmediate: (typeof setImmediate !== "undefined" ? setImmediate : undefined),
              clearImmediate: (typeof clearImmediate !== "undefined" ? clearImmediate : undefined),
              setInterval: setInterval,
              clearInterval: clearInterval,
              Date: Date
          };
      }
  
      var isNode = typeof module !== "undefined" && module.exports && typeof require == "function";
      var isAMD = typeof define === "function" && typeof define.amd === "object" && define.amd;
  
      function loadDependencies(require, epxorts, module) {
          var sinon = require("./core");
          makeApi(sinon, require("lolex"));
          module.exports = sinon;
      }
  
      if (isAMD) {
          define(loadDependencies);
      } else if (isNode) {
          loadDependencies(require, module.exports, module);
      } else {
          makeApi(sinon);
      }
  }(typeof global != "undefined" && typeof global !== "function" ? global : this));
  
new_contents: /*global lolex */
  
  /**
   * Fake timer API
   * setTimeout
   * setInterval
   * clearTimeout
   * clearInterval
   * tick
   * reset
   * Date
   *
   * Inspired by jsUnitMockTimeOut from JsUnit
   *
   * @author Christian Johansen (christian@cjohansen.no)
   * @license BSD
   *
   * Copyright (c) 2010-2013 Christian Johansen
   */
  "use strict";
  
  if (typeof sinon == "undefined") {
      var sinon = {};
  }
  
  (function (global) {
      function makeApi(sinon, lol) {
          var llx = typeof lolex !== "undefined" ? lolex : lol;
  
          sinon.useFakeTimers = function () {
              var now, methods = Array.prototype.slice.call(arguments);
  
              if (typeof methods[0] === "string") {
                  now = 0;
              } else {
                  now = methods.shift();
              }
  
              var clock = llx.install(now || 0, methods);
              clock.restore = clock.uninstall;
              return clock;
          };
  
          sinon.clock = {
              create: function (now) {
                  return llx.createClock(now);
              }
          };
  
          sinon.timers = {
              setTimeout: setTimeout,
              clearTimeout: clearTimeout,
              setImmediate: (typeof setImmediate !== "undefined" ? setImmediate : undefined),
              clearImmediate: (typeof clearImmediate !== "undefined" ? clearImmediate : undefined),
              setInterval: (typeof setInterval !== "undefined" ? setInterval : undefined),
              clearInterval: (typeof clearInterval !== "undefined" ? clearInterval : undefined),
              Date: Date
          };
      }
  
      var isNode = typeof module !== "undefined" && module.exports && typeof require == "function";
      var isAMD = typeof define === "function" && typeof define.amd === "object" && define.amd;
  
      function loadDependencies(require, epxorts, module) {
          var sinon = require("./core");
          makeApi(sinon, require("lolex"));
          module.exports = sinon;
      }
  
      if (isAMD) {
          define(loadDependencies);
      } else if (isNode) {
          loadDependencies(require, module.exports, module);
      } else {
          makeApi(sinon);
      }
  }(typeof global != "undefined" && typeof global !== "function" ? global : this));
  
subject: Add check for setInterval/clearInterval