jasmine 0.10.3.5 → 0.10.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/jasmine/lib/{jasmine-0.10.3.js → jasmine-0.10.4.js} +203 -185
- metadata +17 -17
| @@ -57,6 +57,10 @@ jasmine.MessageResult = function(text) { | |
| 57 57 | 
             
              this.trace = new Error(); // todo: test better
         | 
| 58 58 | 
             
            };
         | 
| 59 59 |  | 
| 60 | 
            +
            jasmine.MessageResult.prototype.toString = function() {
         | 
| 61 | 
            +
              return this.text;
         | 
| 62 | 
            +
            };
         | 
| 63 | 
            +
             | 
| 60 64 | 
             
            jasmine.ExpectationResult = function(params) {
         | 
| 61 65 | 
             
              this.type = 'ExpectationResult';
         | 
| 62 66 | 
             
              this.matcherName = params.matcherName;
         | 
| @@ -71,6 +75,10 @@ jasmine.ExpectationResult = function(params) { | |
| 71 75 | 
             
              this.trace = this.passed_ ? '' : new Error(this.message);
         | 
| 72 76 | 
             
            };
         | 
| 73 77 |  | 
| 78 | 
            +
            jasmine.ExpectationResult.prototype.toString = function () {
         | 
| 79 | 
            +
              return this.message;
         | 
| 80 | 
            +
            };
         | 
| 81 | 
            +
             | 
| 74 82 | 
             
            jasmine.ExpectationResult.prototype.passed = function () {
         | 
| 75 83 | 
             
              return this.passed_;
         | 
| 76 84 | 
             
            };
         | 
| @@ -741,10 +749,21 @@ jasmine.Env.prototype.describe = function(description, specDefinitions) { | |
| 741 749 |  | 
| 742 750 | 
             
              this.currentSuite = suite;
         | 
| 743 751 |  | 
| 744 | 
            -
               | 
| 752 | 
            +
              var declarationError = null;
         | 
| 753 | 
            +
              try {
         | 
| 754 | 
            +
                specDefinitions.call(suite);
         | 
| 755 | 
            +
              } catch(e) {
         | 
| 756 | 
            +
                declarationError = e;
         | 
| 757 | 
            +
              }
         | 
| 745 758 |  | 
| 746 759 | 
             
              this.currentSuite = parentSuite;
         | 
| 747 760 |  | 
| 761 | 
            +
              if (declarationError) {
         | 
| 762 | 
            +
                this.it("encountered a declaration exception", function() {
         | 
| 763 | 
            +
                  throw declarationError;
         | 
| 764 | 
            +
                });
         | 
| 765 | 
            +
              }
         | 
| 766 | 
            +
             | 
| 748 767 | 
             
              return suite;
         | 
| 749 768 | 
             
            };
         | 
| 750 769 |  | 
| @@ -1777,12 +1796,12 @@ jasmine.Runner.prototype.execute = function() { | |
| 1777 1796 |  | 
| 1778 1797 | 
             
            jasmine.Runner.prototype.beforeEach = function(beforeEachFunction) {
         | 
| 1779 1798 | 
             
              beforeEachFunction.typeName = 'beforeEach';
         | 
| 1780 | 
            -
              this.before_. | 
| 1799 | 
            +
              this.before_.splice(0,0,beforeEachFunction);
         | 
| 1781 1800 | 
             
            };
         | 
| 1782 1801 |  | 
| 1783 1802 | 
             
            jasmine.Runner.prototype.afterEach = function(afterEachFunction) {
         | 
| 1784 1803 | 
             
              afterEachFunction.typeName = 'afterEach';
         | 
| 1785 | 
            -
              this.after_. | 
| 1804 | 
            +
              this.after_.splice(0,0,afterEachFunction);
         | 
| 1786 1805 | 
             
            };
         | 
| 1787 1806 |  | 
| 1788 1807 |  | 
| @@ -2063,12 +2082,12 @@ jasmine.Suite.prototype.finish = function(onComplete) { | |
| 2063 2082 |  | 
| 2064 2083 | 
             
            jasmine.Suite.prototype.beforeEach = function(beforeEachFunction) {
         | 
| 2065 2084 | 
             
              beforeEachFunction.typeName = 'beforeEach';
         | 
| 2066 | 
            -
              this.before_. | 
| 2085 | 
            +
              this.before_.unshift(beforeEachFunction);
         | 
| 2067 2086 | 
             
            };
         | 
| 2068 2087 |  | 
| 2069 2088 | 
             
            jasmine.Suite.prototype.afterEach = function(afterEachFunction) {
         | 
| 2070 2089 | 
             
              afterEachFunction.typeName = 'afterEach';
         | 
| 2071 | 
            -
              this.after_. | 
| 2090 | 
            +
              this.after_.unshift(afterEachFunction);
         | 
| 2072 2091 | 
             
            };
         | 
| 2073 2092 |  | 
| 2074 2093 | 
             
            jasmine.Suite.prototype.results = function() {
         | 
| @@ -2139,193 +2158,192 @@ jasmine.WaitsForBlock.prototype.execute = function (onComplete) { | |
| 2139 2158 | 
             
                  name: 'timeout',
         | 
| 2140 2159 | 
             
                  message: message
         | 
| 2141 2160 | 
             
                });
         | 
| 2142 | 
            -
                self.spec._next();
         | 
| 2143 2161 | 
             
              } else {
         | 
| 2144 2162 | 
             
                self.totalTimeSpentWaitingForLatch += jasmine.WaitsForBlock.TIMEOUT_INCREMENT;
         | 
| 2145 2163 | 
             
                self.env.setTimeout(function () { self.execute(onComplete); }, jasmine.WaitsForBlock.TIMEOUT_INCREMENT);
         | 
| 2146 2164 | 
             
              }
         | 
| 2147 2165 | 
             
            };
         | 
| 2148 | 
            -
            // Mock setTimeout, clearTimeout
         | 
| 2149 | 
            -
            // Contributed by Pivotal Computer Systems, www.pivotalsf.com
         | 
| 2150 | 
            -
             | 
| 2151 | 
            -
            jasmine.FakeTimer = function() {
         | 
| 2152 | 
            -
              this.reset();
         | 
| 2153 | 
            -
             | 
| 2154 | 
            -
              var self = this;
         | 
| 2155 | 
            -
              self.setTimeout = function(funcToCall, millis) {
         | 
| 2156 | 
            -
                self.timeoutsMade++;
         | 
| 2157 | 
            -
                self.scheduleFunction(self.timeoutsMade, funcToCall, millis, false);
         | 
| 2158 | 
            -
                return self.timeoutsMade;
         | 
| 2159 | 
            -
              };
         | 
| 2160 | 
            -
             | 
| 2161 | 
            -
              self.setInterval = function(funcToCall, millis) {
         | 
| 2162 | 
            -
                self.timeoutsMade++;
         | 
| 2163 | 
            -
                self.scheduleFunction(self.timeoutsMade, funcToCall, millis, true);
         | 
| 2164 | 
            -
                return self.timeoutsMade;
         | 
| 2165 | 
            -
              };
         | 
| 2166 | 
            -
             | 
| 2167 | 
            -
              self.clearTimeout = function(timeoutKey) {
         | 
| 2168 | 
            -
                self.scheduledFunctions[timeoutKey] = jasmine.undefined;
         | 
| 2169 | 
            -
              };
         | 
| 2170 | 
            -
             | 
| 2171 | 
            -
              self.clearInterval = function(timeoutKey) {
         | 
| 2172 | 
            -
                self.scheduledFunctions[timeoutKey] = jasmine.undefined;
         | 
| 2173 | 
            -
              };
         | 
| 2174 | 
            -
             | 
| 2175 | 
            -
            };
         | 
| 2176 | 
            -
             | 
| 2177 | 
            -
            jasmine.FakeTimer.prototype.reset = function() {
         | 
| 2178 | 
            -
              this.timeoutsMade = 0;
         | 
| 2179 | 
            -
              this.scheduledFunctions = {};
         | 
| 2180 | 
            -
              this.nowMillis = 0;
         | 
| 2181 | 
            -
            };
         | 
| 2182 | 
            -
             | 
| 2183 | 
            -
            jasmine.FakeTimer.prototype.tick = function(millis) {
         | 
| 2184 | 
            -
              var oldMillis = this.nowMillis;
         | 
| 2185 | 
            -
              var newMillis = oldMillis + millis;
         | 
| 2186 | 
            -
              this.runFunctionsWithinRange(oldMillis, newMillis);
         | 
| 2187 | 
            -
              this.nowMillis = newMillis;
         | 
| 2188 | 
            -
            };
         | 
| 2189 | 
            -
             | 
| 2190 | 
            -
            jasmine.FakeTimer.prototype.runFunctionsWithinRange = function(oldMillis, nowMillis) {
         | 
| 2191 | 
            -
              var scheduledFunc;
         | 
| 2192 | 
            -
              var funcsToRun = [];
         | 
| 2193 | 
            -
              for (var timeoutKey in this.scheduledFunctions) {
         | 
| 2194 | 
            -
                scheduledFunc = this.scheduledFunctions[timeoutKey];
         | 
| 2195 | 
            -
                if (scheduledFunc != jasmine.undefined &&
         | 
| 2196 | 
            -
                    scheduledFunc.runAtMillis >= oldMillis &&
         | 
| 2197 | 
            -
                    scheduledFunc.runAtMillis <= nowMillis) {
         | 
| 2198 | 
            -
                  funcsToRun.push(scheduledFunc);
         | 
| 2199 | 
            -
                  this.scheduledFunctions[timeoutKey] = jasmine.undefined;
         | 
| 2200 | 
            -
                }
         | 
| 2201 | 
            -
              }
         | 
| 2202 | 
            -
             | 
| 2203 | 
            -
              if (funcsToRun.length > 0) {
         | 
| 2204 | 
            -
                funcsToRun.sort(function(a, b) {
         | 
| 2205 | 
            -
                  return a.runAtMillis - b.runAtMillis;
         | 
| 2206 | 
            -
                });
         | 
| 2207 | 
            -
                for (var i = 0; i < funcsToRun.length; ++i) {
         | 
| 2208 | 
            -
                  try {
         | 
| 2209 | 
            -
                    var funcToRun = funcsToRun[i];
         | 
| 2210 | 
            -
                    this.nowMillis = funcToRun.runAtMillis;
         | 
| 2211 | 
            -
                    funcToRun.funcToCall();
         | 
| 2212 | 
            -
                    if (funcToRun.recurring) {
         | 
| 2213 | 
            -
                      this.scheduleFunction(funcToRun.timeoutKey,
         | 
| 2214 | 
            -
                        funcToRun.funcToCall,
         | 
| 2215 | 
            -
                        funcToRun.millis,
         | 
| 2216 | 
            -
                        true);
         | 
| 2217 | 
            -
                    }
         | 
| 2218 | 
            -
                  } catch(e) {
         | 
| 2219 | 
            -
                  }
         | 
| 2220 | 
            -
                }
         | 
| 2221 | 
            -
                this.runFunctionsWithinRange(oldMillis, nowMillis);
         | 
| 2222 | 
            -
              }
         | 
| 2223 | 
            -
            };
         | 
| 2224 | 
            -
             | 
| 2225 | 
            -
            jasmine.FakeTimer.prototype.scheduleFunction = function(timeoutKey, funcToCall, millis, recurring) {
         | 
| 2226 | 
            -
              this.scheduledFunctions[timeoutKey] = {
         | 
| 2227 | 
            -
                runAtMillis: this.nowMillis + millis,
         | 
| 2228 | 
            -
                funcToCall: funcToCall,
         | 
| 2229 | 
            -
                recurring: recurring,
         | 
| 2230 | 
            -
                timeoutKey: timeoutKey,
         | 
| 2231 | 
            -
                millis: millis
         | 
| 2232 | 
            -
              };
         | 
| 2233 | 
            -
            };
         | 
| 2234 | 
            -
             | 
| 2235 | 
            -
            /**
         | 
| 2236 | 
            -
             * @namespace
         | 
| 2237 | 
            -
             */
         | 
| 2238 | 
            -
            jasmine.Clock = {
         | 
| 2239 | 
            -
              defaultFakeTimer: new jasmine.FakeTimer(),
         | 
| 2240 | 
            -
             | 
| 2241 | 
            -
              reset: function() {
         | 
| 2242 | 
            -
                jasmine.Clock.assertInstalled();
         | 
| 2243 | 
            -
                jasmine.Clock.defaultFakeTimer.reset();
         | 
| 2244 | 
            -
              },
         | 
| 2245 | 
            -
             | 
| 2246 | 
            -
              tick: function(millis) {
         | 
| 2247 | 
            -
                jasmine.Clock.assertInstalled();
         | 
| 2248 | 
            -
                jasmine.Clock.defaultFakeTimer.tick(millis);
         | 
| 2249 | 
            -
              },
         | 
| 2250 | 
            -
             | 
| 2251 | 
            -
              runFunctionsWithinRange: function(oldMillis, nowMillis) {
         | 
| 2252 | 
            -
                jasmine.Clock.defaultFakeTimer.runFunctionsWithinRange(oldMillis, nowMillis);
         | 
| 2253 | 
            -
              },
         | 
| 2254 | 
            -
             | 
| 2255 | 
            -
              scheduleFunction: function(timeoutKey, funcToCall, millis, recurring) {
         | 
| 2256 | 
            -
                jasmine.Clock.defaultFakeTimer.scheduleFunction(timeoutKey, funcToCall, millis, recurring);
         | 
| 2257 | 
            -
              },
         | 
| 2258 | 
            -
             | 
| 2259 | 
            -
              useMock: function() {
         | 
| 2260 | 
            -
                var spec = jasmine.getEnv().currentSpec;
         | 
| 2261 | 
            -
                spec.after(jasmine.Clock.uninstallMock);
         | 
| 2262 | 
            -
             | 
| 2263 | 
            -
                jasmine.Clock.installMock();
         | 
| 2264 | 
            -
              },
         | 
| 2265 | 
            -
             | 
| 2266 | 
            -
              installMock: function() {
         | 
| 2267 | 
            -
                jasmine.Clock.installed = jasmine.Clock.defaultFakeTimer;
         | 
| 2268 | 
            -
              },
         | 
| 2269 | 
            -
             | 
| 2270 | 
            -
              uninstallMock: function() {
         | 
| 2271 | 
            -
                jasmine.Clock.assertInstalled();
         | 
| 2272 | 
            -
                jasmine.Clock.installed = jasmine.Clock.real;
         | 
| 2273 | 
            -
              },
         | 
| 2274 | 
            -
             | 
| 2275 | 
            -
              real: {
         | 
| 2276 | 
            -
                setTimeout: window.setTimeout,
         | 
| 2277 | 
            -
                clearTimeout: window.clearTimeout,
         | 
| 2278 | 
            -
                setInterval: window.setInterval,
         | 
| 2279 | 
            -
                clearInterval: window.clearInterval
         | 
| 2280 | 
            -
              },
         | 
| 2281 | 
            -
             | 
| 2282 | 
            -
              assertInstalled: function() {
         | 
| 2283 | 
            -
                if (jasmine.Clock.installed != jasmine.Clock.defaultFakeTimer) {
         | 
| 2284 | 
            -
                  throw new Error("Mock clock is not installed, use jasmine.Clock.useMock()");
         | 
| 2285 | 
            -
                }
         | 
| 2286 | 
            -
              },
         | 
| 2287 | 
            -
             | 
| 2288 | 
            -
              installed: null
         | 
| 2289 | 
            -
            };
         | 
| 2290 | 
            -
            jasmine.Clock.installed = jasmine.Clock.real;
         | 
| 2291 | 
            -
             | 
| 2292 | 
            -
            //else for IE support
         | 
| 2293 | 
            -
            window.setTimeout = function(funcToCall, millis) {
         | 
| 2294 | 
            -
              if (jasmine.Clock.installed.setTimeout.apply) {
         | 
| 2295 | 
            -
                return jasmine.Clock.installed.setTimeout.apply(this, arguments);
         | 
| 2296 | 
            -
              } else {
         | 
| 2297 | 
            -
                return jasmine.Clock.installed.setTimeout(funcToCall, millis);
         | 
| 2298 | 
            -
              }
         | 
| 2299 | 
            -
            };
         | 
| 2300 | 
            -
             | 
| 2301 | 
            -
            window.setInterval = function(funcToCall, millis) {
         | 
| 2302 | 
            -
              if (jasmine.Clock.installed.setInterval.apply) {
         | 
| 2303 | 
            -
                return jasmine.Clock.installed.setInterval.apply(this, arguments);
         | 
| 2304 | 
            -
              } else {
         | 
| 2305 | 
            -
                return jasmine.Clock.installed.setInterval(funcToCall, millis);
         | 
| 2306 | 
            -
              }
         | 
| 2307 | 
            -
            };
         | 
| 2308 | 
            -
             | 
| 2309 | 
            -
            window.clearTimeout = function(timeoutKey) {
         | 
| 2310 | 
            -
              if (jasmine.Clock.installed.clearTimeout.apply) {
         | 
| 2311 | 
            -
                return jasmine.Clock.installed.clearTimeout.apply(this, arguments);
         | 
| 2312 | 
            -
              } else {
         | 
| 2313 | 
            -
                return jasmine.Clock.installed.clearTimeout(timeoutKey);
         | 
| 2314 | 
            -
              }
         | 
| 2315 | 
            -
            };
         | 
| 2316 | 
            -
             | 
| 2317 | 
            -
            window.clearInterval = function(timeoutKey) {
         | 
| 2318 | 
            -
              if (jasmine.Clock.installed.clearTimeout.apply) {
         | 
| 2319 | 
            -
                return jasmine.Clock.installed.clearInterval.apply(this, arguments);
         | 
| 2320 | 
            -
              } else {
         | 
| 2321 | 
            -
              return jasmine.Clock.installed.clearInterval(timeoutKey);
         | 
| 2322 | 
            -
              }
         | 
| 2323 | 
            -
            };
         | 
| 2324 | 
            -
             | 
| 2166 | 
            +
            // Mock setTimeout, clearTimeout
         | 
| 2167 | 
            +
            // Contributed by Pivotal Computer Systems, www.pivotalsf.com
         | 
| 2168 | 
            +
             | 
| 2169 | 
            +
            jasmine.FakeTimer = function() {
         | 
| 2170 | 
            +
              this.reset();
         | 
| 2171 | 
            +
             | 
| 2172 | 
            +
              var self = this;
         | 
| 2173 | 
            +
              self.setTimeout = function(funcToCall, millis) {
         | 
| 2174 | 
            +
                self.timeoutsMade++;
         | 
| 2175 | 
            +
                self.scheduleFunction(self.timeoutsMade, funcToCall, millis, false);
         | 
| 2176 | 
            +
                return self.timeoutsMade;
         | 
| 2177 | 
            +
              };
         | 
| 2178 | 
            +
             | 
| 2179 | 
            +
              self.setInterval = function(funcToCall, millis) {
         | 
| 2180 | 
            +
                self.timeoutsMade++;
         | 
| 2181 | 
            +
                self.scheduleFunction(self.timeoutsMade, funcToCall, millis, true);
         | 
| 2182 | 
            +
                return self.timeoutsMade;
         | 
| 2183 | 
            +
              };
         | 
| 2184 | 
            +
             | 
| 2185 | 
            +
              self.clearTimeout = function(timeoutKey) {
         | 
| 2186 | 
            +
                self.scheduledFunctions[timeoutKey] = jasmine.undefined;
         | 
| 2187 | 
            +
              };
         | 
| 2188 | 
            +
             | 
| 2189 | 
            +
              self.clearInterval = function(timeoutKey) {
         | 
| 2190 | 
            +
                self.scheduledFunctions[timeoutKey] = jasmine.undefined;
         | 
| 2191 | 
            +
              };
         | 
| 2192 | 
            +
             | 
| 2193 | 
            +
            };
         | 
| 2194 | 
            +
             | 
| 2195 | 
            +
            jasmine.FakeTimer.prototype.reset = function() {
         | 
| 2196 | 
            +
              this.timeoutsMade = 0;
         | 
| 2197 | 
            +
              this.scheduledFunctions = {};
         | 
| 2198 | 
            +
              this.nowMillis = 0;
         | 
| 2199 | 
            +
            };
         | 
| 2200 | 
            +
             | 
| 2201 | 
            +
            jasmine.FakeTimer.prototype.tick = function(millis) {
         | 
| 2202 | 
            +
              var oldMillis = this.nowMillis;
         | 
| 2203 | 
            +
              var newMillis = oldMillis + millis;
         | 
| 2204 | 
            +
              this.runFunctionsWithinRange(oldMillis, newMillis);
         | 
| 2205 | 
            +
              this.nowMillis = newMillis;
         | 
| 2206 | 
            +
            };
         | 
| 2207 | 
            +
             | 
| 2208 | 
            +
            jasmine.FakeTimer.prototype.runFunctionsWithinRange = function(oldMillis, nowMillis) {
         | 
| 2209 | 
            +
              var scheduledFunc;
         | 
| 2210 | 
            +
              var funcsToRun = [];
         | 
| 2211 | 
            +
              for (var timeoutKey in this.scheduledFunctions) {
         | 
| 2212 | 
            +
                scheduledFunc = this.scheduledFunctions[timeoutKey];
         | 
| 2213 | 
            +
                if (scheduledFunc != jasmine.undefined &&
         | 
| 2214 | 
            +
                    scheduledFunc.runAtMillis >= oldMillis &&
         | 
| 2215 | 
            +
                    scheduledFunc.runAtMillis <= nowMillis) {
         | 
| 2216 | 
            +
                  funcsToRun.push(scheduledFunc);
         | 
| 2217 | 
            +
                  this.scheduledFunctions[timeoutKey] = jasmine.undefined;
         | 
| 2218 | 
            +
                }
         | 
| 2219 | 
            +
              }
         | 
| 2220 | 
            +
             | 
| 2221 | 
            +
              if (funcsToRun.length > 0) {
         | 
| 2222 | 
            +
                funcsToRun.sort(function(a, b) {
         | 
| 2223 | 
            +
                  return a.runAtMillis - b.runAtMillis;
         | 
| 2224 | 
            +
                });
         | 
| 2225 | 
            +
                for (var i = 0; i < funcsToRun.length; ++i) {
         | 
| 2226 | 
            +
                  try {
         | 
| 2227 | 
            +
                    var funcToRun = funcsToRun[i];
         | 
| 2228 | 
            +
                    this.nowMillis = funcToRun.runAtMillis;
         | 
| 2229 | 
            +
                    funcToRun.funcToCall();
         | 
| 2230 | 
            +
                    if (funcToRun.recurring) {
         | 
| 2231 | 
            +
                      this.scheduleFunction(funcToRun.timeoutKey,
         | 
| 2232 | 
            +
                        funcToRun.funcToCall,
         | 
| 2233 | 
            +
                        funcToRun.millis,
         | 
| 2234 | 
            +
                        true);
         | 
| 2235 | 
            +
                    }
         | 
| 2236 | 
            +
                  } catch(e) {
         | 
| 2237 | 
            +
                  }
         | 
| 2238 | 
            +
                }
         | 
| 2239 | 
            +
                this.runFunctionsWithinRange(oldMillis, nowMillis);
         | 
| 2240 | 
            +
              }
         | 
| 2241 | 
            +
            };
         | 
| 2242 | 
            +
             | 
| 2243 | 
            +
            jasmine.FakeTimer.prototype.scheduleFunction = function(timeoutKey, funcToCall, millis, recurring) {
         | 
| 2244 | 
            +
              this.scheduledFunctions[timeoutKey] = {
         | 
| 2245 | 
            +
                runAtMillis: this.nowMillis + millis,
         | 
| 2246 | 
            +
                funcToCall: funcToCall,
         | 
| 2247 | 
            +
                recurring: recurring,
         | 
| 2248 | 
            +
                timeoutKey: timeoutKey,
         | 
| 2249 | 
            +
                millis: millis
         | 
| 2250 | 
            +
              };
         | 
| 2251 | 
            +
            };
         | 
| 2252 | 
            +
             | 
| 2253 | 
            +
            /**
         | 
| 2254 | 
            +
             * @namespace
         | 
| 2255 | 
            +
             */
         | 
| 2256 | 
            +
            jasmine.Clock = {
         | 
| 2257 | 
            +
              defaultFakeTimer: new jasmine.FakeTimer(),
         | 
| 2258 | 
            +
             | 
| 2259 | 
            +
              reset: function() {
         | 
| 2260 | 
            +
                jasmine.Clock.assertInstalled();
         | 
| 2261 | 
            +
                jasmine.Clock.defaultFakeTimer.reset();
         | 
| 2262 | 
            +
              },
         | 
| 2263 | 
            +
             | 
| 2264 | 
            +
              tick: function(millis) {
         | 
| 2265 | 
            +
                jasmine.Clock.assertInstalled();
         | 
| 2266 | 
            +
                jasmine.Clock.defaultFakeTimer.tick(millis);
         | 
| 2267 | 
            +
              },
         | 
| 2268 | 
            +
             | 
| 2269 | 
            +
              runFunctionsWithinRange: function(oldMillis, nowMillis) {
         | 
| 2270 | 
            +
                jasmine.Clock.defaultFakeTimer.runFunctionsWithinRange(oldMillis, nowMillis);
         | 
| 2271 | 
            +
              },
         | 
| 2272 | 
            +
             | 
| 2273 | 
            +
              scheduleFunction: function(timeoutKey, funcToCall, millis, recurring) {
         | 
| 2274 | 
            +
                jasmine.Clock.defaultFakeTimer.scheduleFunction(timeoutKey, funcToCall, millis, recurring);
         | 
| 2275 | 
            +
              },
         | 
| 2276 | 
            +
             | 
| 2277 | 
            +
              useMock: function() {
         | 
| 2278 | 
            +
                var spec = jasmine.getEnv().currentSpec;
         | 
| 2279 | 
            +
                spec.after(jasmine.Clock.uninstallMock);
         | 
| 2280 | 
            +
             | 
| 2281 | 
            +
                jasmine.Clock.installMock();
         | 
| 2282 | 
            +
              },
         | 
| 2283 | 
            +
             | 
| 2284 | 
            +
              installMock: function() {
         | 
| 2285 | 
            +
                jasmine.Clock.installed = jasmine.Clock.defaultFakeTimer;
         | 
| 2286 | 
            +
              },
         | 
| 2287 | 
            +
             | 
| 2288 | 
            +
              uninstallMock: function() {
         | 
| 2289 | 
            +
                jasmine.Clock.assertInstalled();
         | 
| 2290 | 
            +
                jasmine.Clock.installed = jasmine.Clock.real;
         | 
| 2291 | 
            +
              },
         | 
| 2292 | 
            +
             | 
| 2293 | 
            +
              real: {
         | 
| 2294 | 
            +
                setTimeout: window.setTimeout,
         | 
| 2295 | 
            +
                clearTimeout: window.clearTimeout,
         | 
| 2296 | 
            +
                setInterval: window.setInterval,
         | 
| 2297 | 
            +
                clearInterval: window.clearInterval
         | 
| 2298 | 
            +
              },
         | 
| 2299 | 
            +
             | 
| 2300 | 
            +
              assertInstalled: function() {
         | 
| 2301 | 
            +
                if (jasmine.Clock.installed != jasmine.Clock.defaultFakeTimer) {
         | 
| 2302 | 
            +
                  throw new Error("Mock clock is not installed, use jasmine.Clock.useMock()");
         | 
| 2303 | 
            +
                }
         | 
| 2304 | 
            +
              },
         | 
| 2305 | 
            +
             | 
| 2306 | 
            +
              installed: null
         | 
| 2307 | 
            +
            };
         | 
| 2308 | 
            +
            jasmine.Clock.installed = jasmine.Clock.real;
         | 
| 2309 | 
            +
             | 
| 2310 | 
            +
            //else for IE support
         | 
| 2311 | 
            +
            window.setTimeout = function(funcToCall, millis) {
         | 
| 2312 | 
            +
              if (jasmine.Clock.installed.setTimeout.apply) {
         | 
| 2313 | 
            +
                return jasmine.Clock.installed.setTimeout.apply(this, arguments);
         | 
| 2314 | 
            +
              } else {
         | 
| 2315 | 
            +
                return jasmine.Clock.installed.setTimeout(funcToCall, millis);
         | 
| 2316 | 
            +
              }
         | 
| 2317 | 
            +
            };
         | 
| 2318 | 
            +
             | 
| 2319 | 
            +
            window.setInterval = function(funcToCall, millis) {
         | 
| 2320 | 
            +
              if (jasmine.Clock.installed.setInterval.apply) {
         | 
| 2321 | 
            +
                return jasmine.Clock.installed.setInterval.apply(this, arguments);
         | 
| 2322 | 
            +
              } else {
         | 
| 2323 | 
            +
                return jasmine.Clock.installed.setInterval(funcToCall, millis);
         | 
| 2324 | 
            +
              }
         | 
| 2325 | 
            +
            };
         | 
| 2326 | 
            +
             | 
| 2327 | 
            +
            window.clearTimeout = function(timeoutKey) {
         | 
| 2328 | 
            +
              if (jasmine.Clock.installed.clearTimeout.apply) {
         | 
| 2329 | 
            +
                return jasmine.Clock.installed.clearTimeout.apply(this, arguments);
         | 
| 2330 | 
            +
              } else {
         | 
| 2331 | 
            +
                return jasmine.Clock.installed.clearTimeout(timeoutKey);
         | 
| 2332 | 
            +
              }
         | 
| 2333 | 
            +
            };
         | 
| 2334 | 
            +
             | 
| 2335 | 
            +
            window.clearInterval = function(timeoutKey) {
         | 
| 2336 | 
            +
              if (jasmine.Clock.installed.clearTimeout.apply) {
         | 
| 2337 | 
            +
                return jasmine.Clock.installed.clearInterval.apply(this, arguments);
         | 
| 2338 | 
            +
              } else {
         | 
| 2339 | 
            +
              return jasmine.Clock.installed.clearInterval(timeoutKey);
         | 
| 2340 | 
            +
              }
         | 
| 2341 | 
            +
            };
         | 
| 2342 | 
            +
             | 
| 2325 2343 |  | 
| 2326 2344 | 
             
            jasmine.version_= {
         | 
| 2327 2345 | 
             
              "major": 0,
         | 
| 2328 2346 | 
             
              "minor": 10,
         | 
| 2329 | 
            -
              "build":  | 
| 2330 | 
            -
              "revision":  | 
| 2347 | 
            +
              "build": 4,
         | 
| 2348 | 
            +
              "revision": 1275748595
         | 
| 2331 2349 | 
             
              };
         | 
    
        metadata
    CHANGED
    
    | @@ -5,9 +5,9 @@ version: !ruby/object:Gem::Version | |
| 5 5 | 
             
              segments: 
         | 
| 6 6 | 
             
              - 0
         | 
| 7 7 | 
             
              - 10
         | 
| 8 | 
            -
              -  | 
| 9 | 
            -
              -  | 
| 10 | 
            -
              version: 0.10. | 
| 8 | 
            +
              - 4
         | 
| 9 | 
            +
              - 0
         | 
| 10 | 
            +
              version: 0.10.4.0
         | 
| 11 11 | 
             
            platform: ruby
         | 
| 12 12 | 
             
            authors: 
         | 
| 13 13 | 
             
            - Rajan Agaskar
         | 
| @@ -16,10 +16,12 @@ autorequire: | |
| 16 16 | 
             
            bindir: bin
         | 
| 17 17 | 
             
            cert_chain: []
         | 
| 18 18 |  | 
| 19 | 
            -
            date: 2010- | 
| 19 | 
            +
            date: 2010-06-05 00:00:00 -04:00
         | 
| 20 20 | 
             
            default_executable: jasmine
         | 
| 21 21 | 
             
            dependencies: 
         | 
| 22 22 | 
             
            - !ruby/object:Gem::Dependency 
         | 
| 23 | 
            +
              name: rspec
         | 
| 24 | 
            +
              type: :runtime
         | 
| 23 25 | 
             
              version_requirements: &id001 !ruby/object:Gem::Requirement 
         | 
| 24 26 | 
             
                requirements: 
         | 
| 25 27 | 
             
                - - ">="
         | 
| @@ -29,11 +31,11 @@ dependencies: | |
| 29 31 | 
             
                    - 1
         | 
| 30 32 | 
             
                    - 5
         | 
| 31 33 | 
             
                    version: 1.1.5
         | 
| 32 | 
            -
              name: rspec
         | 
| 33 | 
            -
              requirement: *id001
         | 
| 34 34 | 
             
              prerelease: false
         | 
| 35 | 
            -
               | 
| 35 | 
            +
              requirement: *id001
         | 
| 36 36 | 
             
            - !ruby/object:Gem::Dependency 
         | 
| 37 | 
            +
              name: rack
         | 
| 38 | 
            +
              type: :runtime
         | 
| 37 39 | 
             
              version_requirements: &id002 !ruby/object:Gem::Requirement 
         | 
| 38 40 | 
             
                requirements: 
         | 
| 39 41 | 
             
                - - ">="
         | 
| @@ -43,11 +45,11 @@ dependencies: | |
| 43 45 | 
             
                    - 0
         | 
| 44 46 | 
             
                    - 0
         | 
| 45 47 | 
             
                    version: 1.0.0
         | 
| 46 | 
            -
              name: rack
         | 
| 47 | 
            -
              requirement: *id002
         | 
| 48 48 | 
             
              prerelease: false
         | 
| 49 | 
            -
               | 
| 49 | 
            +
              requirement: *id002
         | 
| 50 50 | 
             
            - !ruby/object:Gem::Dependency 
         | 
| 51 | 
            +
              name: selenium-rc
         | 
| 52 | 
            +
              type: :runtime
         | 
| 51 53 | 
             
              version_requirements: &id003 !ruby/object:Gem::Requirement 
         | 
| 52 54 | 
             
                requirements: 
         | 
| 53 55 | 
             
                - - ">="
         | 
| @@ -57,11 +59,11 @@ dependencies: | |
| 57 59 | 
             
                    - 1
         | 
| 58 60 | 
             
                    - 0
         | 
| 59 61 | 
             
                    version: 2.1.0
         | 
| 60 | 
            -
              name: selenium-rc
         | 
| 61 | 
            -
              requirement: *id003
         | 
| 62 62 | 
             
              prerelease: false
         | 
| 63 | 
            -
               | 
| 63 | 
            +
              requirement: *id003
         | 
| 64 64 | 
             
            - !ruby/object:Gem::Dependency 
         | 
| 65 | 
            +
              name: selenium-client
         | 
| 66 | 
            +
              type: :runtime
         | 
| 65 67 | 
             
              version_requirements: &id004 !ruby/object:Gem::Requirement 
         | 
| 66 68 | 
             
                requirements: 
         | 
| 67 69 | 
             
                - - ">="
         | 
| @@ -71,10 +73,8 @@ dependencies: | |
| 71 73 | 
             
                    - 2
         | 
| 72 74 | 
             
                    - 17
         | 
| 73 75 | 
             
                    version: 1.2.17
         | 
| 74 | 
            -
              name: selenium-client
         | 
| 75 | 
            -
              requirement: *id004
         | 
| 76 76 | 
             
              prerelease: false
         | 
| 77 | 
            -
               | 
| 77 | 
            +
              requirement: *id004
         | 
| 78 78 | 
             
            description: Javascript BDD test framework
         | 
| 79 79 | 
             
            email: ragaskar@gmail.com
         | 
| 80 80 | 
             
            executables: 
         | 
| @@ -94,7 +94,7 @@ files: | |
| 94 94 | 
             
            - generators/jasmine/templates/spec/javascripts/support/jasmine_runner.rb
         | 
| 95 95 | 
             
            - jasmine/lib/TrivialReporter.js
         | 
| 96 96 | 
             
            - jasmine/lib/consolex.js
         | 
| 97 | 
            -
            - jasmine/lib/jasmine-0.10. | 
| 97 | 
            +
            - jasmine/lib/jasmine-0.10.4.js
         | 
| 98 98 | 
             
            - jasmine/lib/jasmine.css
         | 
| 99 99 | 
             
            - jasmine/lib/json2.js
         | 
| 100 100 | 
             
            - lib/jasmine.rb
         |