Mercurial > bugzilla-dashboard
annotate js/modules/mocks.js @ 81:e3de1fe32f40
made cache module require 'storage' instead of 'window'
author | Atul Varma <avarma@mozilla.com> |
---|---|
date | Sun, 25 Apr 2010 22:44:00 -0700 |
parents | 51c1829956d9 |
children | 544d339d2b4c |
rev | line source |
---|---|
69
51c1829956d9
Added mock XHR object and a simple bugzilla ajax test
Atul Varma <avarma@mozilla.com>
parents:
diff
changeset
|
1 Require.modules["mocks"] = function(exports, require) { |
51c1829956d9
Added mock XHR object and a simple bugzilla ajax test
Atul Varma <avarma@mozilla.com>
parents:
diff
changeset
|
2 function MockXMLHttpRequest(delegate) { |
51c1829956d9
Added mock XHR object and a simple bugzilla ajax test
Atul Varma <avarma@mozilla.com>
parents:
diff
changeset
|
3 var self = this; |
51c1829956d9
Added mock XHR object and a simple bugzilla ajax test
Atul Varma <avarma@mozilla.com>
parents:
diff
changeset
|
4 |
51c1829956d9
Added mock XHR object and a simple bugzilla ajax test
Atul Varma <avarma@mozilla.com>
parents:
diff
changeset
|
5 var listeners = { |
51c1829956d9
Added mock XHR object and a simple bugzilla ajax test
Atul Varma <avarma@mozilla.com>
parents:
diff
changeset
|
6 "load": [], |
51c1829956d9
Added mock XHR object and a simple bugzilla ajax test
Atul Varma <avarma@mozilla.com>
parents:
diff
changeset
|
7 "progress": [], |
51c1829956d9
Added mock XHR object and a simple bugzilla ajax test
Atul Varma <avarma@mozilla.com>
parents:
diff
changeset
|
8 "error": [], |
51c1829956d9
Added mock XHR object and a simple bugzilla ajax test
Atul Varma <avarma@mozilla.com>
parents:
diff
changeset
|
9 "abort": [] |
51c1829956d9
Added mock XHR object and a simple bugzilla ajax test
Atul Varma <avarma@mozilla.com>
parents:
diff
changeset
|
10 }; |
51c1829956d9
Added mock XHR object and a simple bugzilla ajax test
Atul Varma <avarma@mozilla.com>
parents:
diff
changeset
|
11 |
51c1829956d9
Added mock XHR object and a simple bugzilla ajax test
Atul Varma <avarma@mozilla.com>
parents:
diff
changeset
|
12 function verifyEventType(eventType) { |
51c1829956d9
Added mock XHR object and a simple bugzilla ajax test
Atul Varma <avarma@mozilla.com>
parents:
diff
changeset
|
13 if (!(eventType in listeners)) |
51c1829956d9
Added mock XHR object and a simple bugzilla ajax test
Atul Varma <avarma@mozilla.com>
parents:
diff
changeset
|
14 throw new Error("unknown event type: " + eventType); |
51c1829956d9
Added mock XHR object and a simple bugzilla ajax test
Atul Varma <avarma@mozilla.com>
parents:
diff
changeset
|
15 } |
51c1829956d9
Added mock XHR object and a simple bugzilla ajax test
Atul Varma <avarma@mozilla.com>
parents:
diff
changeset
|
16 |
51c1829956d9
Added mock XHR object and a simple bugzilla ajax test
Atul Varma <avarma@mozilla.com>
parents:
diff
changeset
|
17 self.addEventListener = function(eventType, handler, useCapture) { |
51c1829956d9
Added mock XHR object and a simple bugzilla ajax test
Atul Varma <avarma@mozilla.com>
parents:
diff
changeset
|
18 verifyEventType(eventType); |
51c1829956d9
Added mock XHR object and a simple bugzilla ajax test
Atul Varma <avarma@mozilla.com>
parents:
diff
changeset
|
19 listeners[eventType].push(handler); |
51c1829956d9
Added mock XHR object and a simple bugzilla ajax test
Atul Varma <avarma@mozilla.com>
parents:
diff
changeset
|
20 delegate("addEventListener", [eventType, handler, useCapture]); |
51c1829956d9
Added mock XHR object and a simple bugzilla ajax test
Atul Varma <avarma@mozilla.com>
parents:
diff
changeset
|
21 }; |
51c1829956d9
Added mock XHR object and a simple bugzilla ajax test
Atul Varma <avarma@mozilla.com>
parents:
diff
changeset
|
22 |
51c1829956d9
Added mock XHR object and a simple bugzilla ajax test
Atul Varma <avarma@mozilla.com>
parents:
diff
changeset
|
23 self.removeEventListener = function(eventType, handler, useCapture) { |
51c1829956d9
Added mock XHR object and a simple bugzilla ajax test
Atul Varma <avarma@mozilla.com>
parents:
diff
changeset
|
24 verifyEventType(eventType); |
51c1829956d9
Added mock XHR object and a simple bugzilla ajax test
Atul Varma <avarma@mozilla.com>
parents:
diff
changeset
|
25 var index = listeners[eventType].indexOf(handler); |
51c1829956d9
Added mock XHR object and a simple bugzilla ajax test
Atul Varma <avarma@mozilla.com>
parents:
diff
changeset
|
26 if (index == -1) |
51c1829956d9
Added mock XHR object and a simple bugzilla ajax test
Atul Varma <avarma@mozilla.com>
parents:
diff
changeset
|
27 throw new Error("handler not registered for event: " + eventType); |
51c1829956d9
Added mock XHR object and a simple bugzilla ajax test
Atul Varma <avarma@mozilla.com>
parents:
diff
changeset
|
28 listeners[eventType].splice(index, 1); |
51c1829956d9
Added mock XHR object and a simple bugzilla ajax test
Atul Varma <avarma@mozilla.com>
parents:
diff
changeset
|
29 delegate("removeEventListener", [eventType, handler, useCapture]); |
51c1829956d9
Added mock XHR object and a simple bugzilla ajax test
Atul Varma <avarma@mozilla.com>
parents:
diff
changeset
|
30 }; |
51c1829956d9
Added mock XHR object and a simple bugzilla ajax test
Atul Varma <avarma@mozilla.com>
parents:
diff
changeset
|
31 |
51c1829956d9
Added mock XHR object and a simple bugzilla ajax test
Atul Varma <avarma@mozilla.com>
parents:
diff
changeset
|
32 self.setRequestHeader = function(header, value) { |
51c1829956d9
Added mock XHR object and a simple bugzilla ajax test
Atul Varma <avarma@mozilla.com>
parents:
diff
changeset
|
33 delegate("setRequestHeader", [header, value]); |
51c1829956d9
Added mock XHR object and a simple bugzilla ajax test
Atul Varma <avarma@mozilla.com>
parents:
diff
changeset
|
34 }; |
51c1829956d9
Added mock XHR object and a simple bugzilla ajax test
Atul Varma <avarma@mozilla.com>
parents:
diff
changeset
|
35 |
51c1829956d9
Added mock XHR object and a simple bugzilla ajax test
Atul Varma <avarma@mozilla.com>
parents:
diff
changeset
|
36 self.send = function(data) { |
51c1829956d9
Added mock XHR object and a simple bugzilla ajax test
Atul Varma <avarma@mozilla.com>
parents:
diff
changeset
|
37 delegate("send", [data]); |
51c1829956d9
Added mock XHR object and a simple bugzilla ajax test
Atul Varma <avarma@mozilla.com>
parents:
diff
changeset
|
38 }; |
51c1829956d9
Added mock XHR object and a simple bugzilla ajax test
Atul Varma <avarma@mozilla.com>
parents:
diff
changeset
|
39 |
51c1829956d9
Added mock XHR object and a simple bugzilla ajax test
Atul Varma <avarma@mozilla.com>
parents:
diff
changeset
|
40 self.open = function open(method, url) { |
51c1829956d9
Added mock XHR object and a simple bugzilla ajax test
Atul Varma <avarma@mozilla.com>
parents:
diff
changeset
|
41 delegate("open", [method, url]); |
51c1829956d9
Added mock XHR object and a simple bugzilla ajax test
Atul Varma <avarma@mozilla.com>
parents:
diff
changeset
|
42 }; |
51c1829956d9
Added mock XHR object and a simple bugzilla ajax test
Atul Varma <avarma@mozilla.com>
parents:
diff
changeset
|
43 |
51c1829956d9
Added mock XHR object and a simple bugzilla ajax test
Atul Varma <avarma@mozilla.com>
parents:
diff
changeset
|
44 self.mockTriggerEvent = function(event) { |
51c1829956d9
Added mock XHR object and a simple bugzilla ajax test
Atul Varma <avarma@mozilla.com>
parents:
diff
changeset
|
45 verifyEventType(event.type); |
51c1829956d9
Added mock XHR object and a simple bugzilla ajax test
Atul Varma <avarma@mozilla.com>
parents:
diff
changeset
|
46 listeners.forEach( |
51c1829956d9
Added mock XHR object and a simple bugzilla ajax test
Atul Varma <avarma@mozilla.com>
parents:
diff
changeset
|
47 function(listener) { |
51c1829956d9
Added mock XHR object and a simple bugzilla ajax test
Atul Varma <avarma@mozilla.com>
parents:
diff
changeset
|
48 listener(event); |
51c1829956d9
Added mock XHR object and a simple bugzilla ajax test
Atul Varma <avarma@mozilla.com>
parents:
diff
changeset
|
49 }); |
51c1829956d9
Added mock XHR object and a simple bugzilla ajax test
Atul Varma <avarma@mozilla.com>
parents:
diff
changeset
|
50 }; |
51c1829956d9
Added mock XHR object and a simple bugzilla ajax test
Atul Varma <avarma@mozilla.com>
parents:
diff
changeset
|
51 } |
51c1829956d9
Added mock XHR object and a simple bugzilla ajax test
Atul Varma <avarma@mozilla.com>
parents:
diff
changeset
|
52 |
51c1829956d9
Added mock XHR object and a simple bugzilla ajax test
Atul Varma <avarma@mozilla.com>
parents:
diff
changeset
|
53 exports.xhr = function xhr(delegate) { |
51c1829956d9
Added mock XHR object and a simple bugzilla ajax test
Atul Varma <avarma@mozilla.com>
parents:
diff
changeset
|
54 return new MockXMLHttpRequest(delegate); |
51c1829956d9
Added mock XHR object and a simple bugzilla ajax test
Atul Varma <avarma@mozilla.com>
parents:
diff
changeset
|
55 }; |
51c1829956d9
Added mock XHR object and a simple bugzilla ajax test
Atul Varma <avarma@mozilla.com>
parents:
diff
changeset
|
56 }; |