-
Notifications
You must be signed in to change notification settings - Fork 11
/
Copy pathdummy.js
104 lines (100 loc) · 1.7 KB
/
dummy.js
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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
"use strict";
function DummyContext() {}
const contextPrototype = [
"drawImage",
"beginPath",
"stroke",
"fillRect",
"fillText",
"bindBuffer",
"createBuffer",
"createProgram",
"getInternalformatParameter",
"getExtension",
"getError",
"shaderSource",
"compileShader",
"attachShader",
"deleteShader",
"linkProgram",
"getProgramParameter",
"getShaderParameter",
"deleteProgram",
"enable",
"disable",
"blendFunc",
"pixelStorei",
"texParameteri",
"frontFace",
"blendEquationSeparate",
"createTexture",
"bindTexture",
"texImage2D",
"activeTexture",
"canvas",
"globalAlpha",
"globalCompositeOperation",
"filter",
"imageSmoothingEnabled",
"imageSmoothingQuality",
"strokeStyle",
"fillStyle",
"shadowOffsetX",
"shadowOffsetY",
"shadowBlur",
"shadowColor",
"lineWidth",
"lineCap",
"lineJoin",
"miterLimit",
"lineDashOffset",
"font",
"textAlign",
"textBaseline",
"direction",
"clip",
"createImageData",
"createLinearGradient",
"createPattern",
"createRadialGradient",
"drawFocusIfNeeded",
"fill",
"getContextAttributes",
"getLineDash",
"getTransform",
"isPointInPath",
"isPointInStroke",
"measureText",
"putImageData",
"save",
"scale",
"setLineDash",
"setTransform",
"strokeText",
"transform",
"translate",
"arc",
"arcTo",
"bezierCurveTo",
"clearRect",
"closePath",
"ellipse",
"lineTo",
"moveTo",
"quadraticCurveTo",
"rect",
"resetTransform",
"restore",
"rotate",
"strokeRect",
];
DummyContext.prototype = contextPrototype.reduce(
(context, key) => ({
...context,
[key]: () => ({}),
}),
{
getImageData: () => false,
},
);
module.exports = DummyContext;