aboutsummaryrefslogtreecommitdiffstats
path: root/tests/dom_tests/chrome.coffee
blob: 1d04b6546bf25777ae9f48691ef701b6d1ebe5c7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
#
# Mock the Chrome extension API.
#

root = exports ? window
root.chromeMessages = []

document.hasFocus = -> true

window.forTrusted = (handler) -> handler

fakeManifest =
  version: "1.51"

root.chrome =
  runtime:
    connect: ->
      onMessage:
        addListener: ->
      onDisconnect:
        addListener: ->
      postMessage: ->
    onMessage:
      addListener: ->
    sendMessage: (message) -> chromeMessages.unshift message
    getManifest: -> fakeManifest
    getURL: (url) -> "../../#{url}"
  storage:
    local:
      get: ->
      set: ->
    sync:
      get: (_, callback) -> callback? {}
      set: ->
    onChanged:
      addListener: ->
  extension:
    inIncognitoContext: false
    getURL: (url) -> chrome.runtime.getURL url