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
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
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 };