summaryrefslogtreecommitdiff
path: root/metrics/tests
diff options
context:
space:
mode:
authorThiago Marcos P. Santos <tmpsantos@gmail.com>2019-12-10 17:10:48 +0200
committerThiago Marcos P. Santos <tmpsantos@gmail.com>2019-12-16 22:52:01 +0200
commit970cabe0eb441270ca3af44e495a5fee997ab54c (patch)
treef84735c55ba8830055a1cbac2ce9960082e49ef0 /metrics/tests
parentdc61aa7691d70b9cc74c5077b49472e64a921f74 (diff)
downloadqtlocation-mapboxgl-970cabe0eb441270ca3af44e495a5fee997ab54c.tar.gz
[build] Reorganize the render tests
Move everything that might collect metrics to the metrics/ directory, the only test manifests inside the render-test/ directory are the unit tests of the probes.
Diffstat (limited to 'metrics/tests')
-rw-r--r--metrics/tests/probes/file-size/fail-file-doesnt-match/expected.pngbin0 -> 169 bytes
-rw-r--r--metrics/tests/probes/file-size/fail-file-doesnt-match/metrics.json14
-rw-r--r--metrics/tests/probes/file-size/fail-file-doesnt-match/style.json32
-rw-r--r--metrics/tests/probes/file-size/fail-file-not-found/expected.pngbin0 -> 169 bytes
-rw-r--r--metrics/tests/probes/file-size/fail-file-not-found/style.json32
-rw-r--r--metrics/tests/probes/file-size/fail-size-is-over/expected.pngbin0 -> 169 bytes
-rw-r--r--metrics/tests/probes/file-size/fail-size-is-over/metrics.json14
-rw-r--r--metrics/tests/probes/file-size/fail-size-is-over/style.json32
-rw-r--r--metrics/tests/probes/file-size/fail-size-is-under/expected.pngbin0 -> 169 bytes
-rw-r--r--metrics/tests/probes/file-size/fail-size-is-under/metrics.json14
-rw-r--r--metrics/tests/probes/file-size/fail-size-is-under/style.json32
-rw-r--r--metrics/tests/probes/file-size/pass-size-is-in-tolerance-higher/expected.pngbin0 -> 169 bytes
-rw-r--r--metrics/tests/probes/file-size/pass-size-is-in-tolerance-higher/metrics.json14
-rw-r--r--metrics/tests/probes/file-size/pass-size-is-in-tolerance-higher/style.json32
-rw-r--r--metrics/tests/probes/file-size/pass-size-is-in-tolerance-lower/expected.pngbin0 -> 169 bytes
-rw-r--r--metrics/tests/probes/file-size/pass-size-is-in-tolerance-lower/metrics.json14
-rw-r--r--metrics/tests/probes/file-size/pass-size-is-in-tolerance-lower/style.json32
-rw-r--r--metrics/tests/probes/file-size/pass-size-is-same/expected.pngbin0 -> 169 bytes
-rw-r--r--metrics/tests/probes/file-size/pass-size-is-same/metrics.json24
-rw-r--r--metrics/tests/probes/file-size/pass-size-is-same/style.json34
-rw-r--r--metrics/tests/probes/gfx/fail-ib-mem-mismatch/expected.pngbin0 -> 46431 bytes
-rw-r--r--metrics/tests/probes/gfx/fail-ib-mem-mismatch/metrics.json5
-rw-r--r--metrics/tests/probes/gfx/fail-ib-mem-mismatch/style.json20
-rw-r--r--metrics/tests/probes/gfx/fail-negative-framebuffer-count/expected.pngbin0 -> 46431 bytes
-rw-r--r--metrics/tests/probes/gfx/fail-negative-framebuffer-count/metrics.json5
-rw-r--r--metrics/tests/probes/gfx/fail-negative-framebuffer-count/style.json20
-rw-r--r--metrics/tests/probes/gfx/fail-texture-mem-mismatch/expected.pngbin0 -> 46431 bytes
-rw-r--r--metrics/tests/probes/gfx/fail-texture-mem-mismatch/metrics.json5
-rw-r--r--metrics/tests/probes/gfx/fail-texture-mem-mismatch/style.json20
-rw-r--r--metrics/tests/probes/gfx/fail-too-few-buffers/expected.pngbin0 -> 46431 bytes
-rw-r--r--metrics/tests/probes/gfx/fail-too-few-buffers/metrics.json5
-rw-r--r--metrics/tests/probes/gfx/fail-too-few-buffers/style.json20
-rw-r--r--metrics/tests/probes/gfx/fail-too-few-textures/expected.pngbin0 -> 46431 bytes
-rw-r--r--metrics/tests/probes/gfx/fail-too-few-textures/metrics.json5
-rw-r--r--metrics/tests/probes/gfx/fail-too-few-textures/style.json20
-rw-r--r--metrics/tests/probes/gfx/fail-too-many-drawcalls/expected.pngbin0 -> 46431 bytes
-rw-r--r--metrics/tests/probes/gfx/fail-too-many-drawcalls/metrics.json5
-rw-r--r--metrics/tests/probes/gfx/fail-too-many-drawcalls/style.json20
-rw-r--r--metrics/tests/probes/gfx/fail-vb-mem-mismatch/expected.pngbin0 -> 46431 bytes
-rw-r--r--metrics/tests/probes/gfx/fail-vb-mem-mismatch/metrics.json5
-rw-r--r--metrics/tests/probes/gfx/fail-vb-mem-mismatch/style.json20
-rw-r--r--metrics/tests/probes/gfx/pass-double-probe/expected.pngbin0 -> 42373 bytes
-rw-r--r--metrics/tests/probes/gfx/pass-double-probe/metrics.json6
-rw-r--r--metrics/tests/probes/gfx/pass-double-probe/style.json22
-rw-r--r--metrics/tests/probes/gfx/pass-probe-reset/expected.pngbin0 -> 42373 bytes
-rw-r--r--metrics/tests/probes/gfx/pass-probe-reset/metrics.json6
-rw-r--r--metrics/tests/probes/gfx/pass-probe-reset/style.json24
-rw-r--r--metrics/tests/probes/gfx/pass/expected.pngbin0 -> 46431 bytes
-rw-r--r--metrics/tests/probes/gfx/pass/metrics.json5
-rw-r--r--metrics/tests/probes/gfx/pass/style.json20
-rw-r--r--metrics/tests/probes/memory/fail-memory-size-is-too-big/expected.pngbin0 -> 96 bytes
-rw-r--r--metrics/tests/probes/memory/fail-memory-size-is-too-big/metrics.json19
-rw-r--r--metrics/tests/probes/memory/fail-memory-size-is-too-big/style.json52
-rw-r--r--metrics/tests/probes/memory/fail-memory-size-is-too-small/expected.pngbin0 -> 96 bytes
-rw-r--r--metrics/tests/probes/memory/fail-memory-size-is-too-small/metrics.json19
-rw-r--r--metrics/tests/probes/memory/fail-memory-size-is-too-small/style.json52
-rw-r--r--metrics/tests/probes/memory/pass-memory-size-is-same/expected.pngbin0 -> 96 bytes
-rw-r--r--metrics/tests/probes/memory/pass-memory-size-is-same/metrics.json19
-rw-r--r--metrics/tests/probes/memory/pass-memory-size-is-same/style.json52
-rw-r--r--metrics/tests/probes/network/fail-requests-transferred/expected.pngbin0 -> 17383 bytes
-rw-r--r--metrics/tests/probes/network/fail-requests-transferred/metrics.json14
-rw-r--r--metrics/tests/probes/network/fail-requests-transferred/style.json67
-rw-r--r--metrics/tests/probes/network/fail-requests/expected.pngbin0 -> 17383 bytes
-rw-r--r--metrics/tests/probes/network/fail-requests/metrics.json14
-rw-r--r--metrics/tests/probes/network/fail-requests/style.json67
-rw-r--r--metrics/tests/probes/network/fail-transferred/expected.pngbin0 -> 17383 bytes
-rw-r--r--metrics/tests/probes/network/fail-transferred/metrics.json14
-rw-r--r--metrics/tests/probes/network/fail-transferred/style.json67
-rw-r--r--metrics/tests/probes/network/pass/expected.pngbin0 -> 17383 bytes
-rw-r--r--metrics/tests/probes/network/pass/metrics.json14
-rw-r--r--metrics/tests/probes/network/pass/style.json67
71 files changed, 1115 insertions, 0 deletions
diff --git a/metrics/tests/probes/file-size/fail-file-doesnt-match/expected.png b/metrics/tests/probes/file-size/fail-file-doesnt-match/expected.png
new file mode 100644
index 0000000000..83d01c4e5d
--- /dev/null
+++ b/metrics/tests/probes/file-size/fail-file-doesnt-match/expected.png
Binary files differ
diff --git a/metrics/tests/probes/file-size/fail-file-doesnt-match/metrics.json b/metrics/tests/probes/file-size/fail-file-doesnt-match/metrics.json
new file mode 100644
index 0000000000..c0002163d6
--- /dev/null
+++ b/metrics/tests/probes/file-size/fail-file-doesnt-match/metrics.json
@@ -0,0 +1,14 @@
+{
+ "file-size": [
+ [
+ "image",
+ "expected.aaa",
+ 169
+ ],
+ [
+ "style",
+ "style.bbbb",
+ 510
+ ]
+ ]
+}
diff --git a/metrics/tests/probes/file-size/fail-file-doesnt-match/style.json b/metrics/tests/probes/file-size/fail-file-doesnt-match/style.json
new file mode 100644
index 0000000000..839a8d4a12
--- /dev/null
+++ b/metrics/tests/probes/file-size/fail-file-doesnt-match/style.json
@@ -0,0 +1,32 @@
+{
+ "version": 8,
+ "metadata": {
+ "test": {
+ "operations": [
+ ["probeFileSize", "style", "style.json", 0],
+ ["probeFileSize", "image", "expected.png", 0]
+ ],
+ "width": 64,
+ "height": 64
+ }
+ },
+ "sources": {
+ "geojson": {
+ "type": "geojson",
+ "data": {
+ "type": "Point",
+ "coordinates": [
+ 0,
+ 0
+ ]
+ }
+ }
+ },
+ "layers": [
+ {
+ "id": "circle",
+ "type": "circle",
+ "source": "geojson"
+ }
+ ]
+}
diff --git a/metrics/tests/probes/file-size/fail-file-not-found/expected.png b/metrics/tests/probes/file-size/fail-file-not-found/expected.png
new file mode 100644
index 0000000000..83d01c4e5d
--- /dev/null
+++ b/metrics/tests/probes/file-size/fail-file-not-found/expected.png
Binary files differ
diff --git a/metrics/tests/probes/file-size/fail-file-not-found/style.json b/metrics/tests/probes/file-size/fail-file-not-found/style.json
new file mode 100644
index 0000000000..74054e1f40
--- /dev/null
+++ b/metrics/tests/probes/file-size/fail-file-not-found/style.json
@@ -0,0 +1,32 @@
+{
+ "version": 8,
+ "metadata": {
+ "test": {
+ "operations": [
+ ["probeFileSize", "style", "style.aaaa", 0],
+ ["probeFileSize", "image", "expected.bbb", 0]
+ ],
+ "width": 64,
+ "height": 64
+ }
+ },
+ "sources": {
+ "geojson": {
+ "type": "geojson",
+ "data": {
+ "type": "Point",
+ "coordinates": [
+ 0,
+ 0
+ ]
+ }
+ }
+ },
+ "layers": [
+ {
+ "id": "circle",
+ "type": "circle",
+ "source": "geojson"
+ }
+ ]
+}
diff --git a/metrics/tests/probes/file-size/fail-size-is-over/expected.png b/metrics/tests/probes/file-size/fail-size-is-over/expected.png
new file mode 100644
index 0000000000..83d01c4e5d
--- /dev/null
+++ b/metrics/tests/probes/file-size/fail-size-is-over/expected.png
Binary files differ
diff --git a/metrics/tests/probes/file-size/fail-size-is-over/metrics.json b/metrics/tests/probes/file-size/fail-size-is-over/metrics.json
new file mode 100644
index 0000000000..bc194081cf
--- /dev/null
+++ b/metrics/tests/probes/file-size/fail-size-is-over/metrics.json
@@ -0,0 +1,14 @@
+{
+ "file-size": [
+ [
+ "image",
+ "expected.png",
+ 999
+ ],
+ [
+ "style",
+ "style.json",
+ 999
+ ]
+ ]
+}
diff --git a/metrics/tests/probes/file-size/fail-size-is-over/style.json b/metrics/tests/probes/file-size/fail-size-is-over/style.json
new file mode 100644
index 0000000000..839a8d4a12
--- /dev/null
+++ b/metrics/tests/probes/file-size/fail-size-is-over/style.json
@@ -0,0 +1,32 @@
+{
+ "version": 8,
+ "metadata": {
+ "test": {
+ "operations": [
+ ["probeFileSize", "style", "style.json", 0],
+ ["probeFileSize", "image", "expected.png", 0]
+ ],
+ "width": 64,
+ "height": 64
+ }
+ },
+ "sources": {
+ "geojson": {
+ "type": "geojson",
+ "data": {
+ "type": "Point",
+ "coordinates": [
+ 0,
+ 0
+ ]
+ }
+ }
+ },
+ "layers": [
+ {
+ "id": "circle",
+ "type": "circle",
+ "source": "geojson"
+ }
+ ]
+}
diff --git a/metrics/tests/probes/file-size/fail-size-is-under/expected.png b/metrics/tests/probes/file-size/fail-size-is-under/expected.png
new file mode 100644
index 0000000000..83d01c4e5d
--- /dev/null
+++ b/metrics/tests/probes/file-size/fail-size-is-under/expected.png
Binary files differ
diff --git a/metrics/tests/probes/file-size/fail-size-is-under/metrics.json b/metrics/tests/probes/file-size/fail-size-is-under/metrics.json
new file mode 100644
index 0000000000..d288c2ceee
--- /dev/null
+++ b/metrics/tests/probes/file-size/fail-size-is-under/metrics.json
@@ -0,0 +1,14 @@
+{
+ "file-size": [
+ [
+ "image",
+ "expected.png",
+ 100
+ ],
+ [
+ "style",
+ "style.json",
+ 100
+ ]
+ ]
+}
diff --git a/metrics/tests/probes/file-size/fail-size-is-under/style.json b/metrics/tests/probes/file-size/fail-size-is-under/style.json
new file mode 100644
index 0000000000..839a8d4a12
--- /dev/null
+++ b/metrics/tests/probes/file-size/fail-size-is-under/style.json
@@ -0,0 +1,32 @@
+{
+ "version": 8,
+ "metadata": {
+ "test": {
+ "operations": [
+ ["probeFileSize", "style", "style.json", 0],
+ ["probeFileSize", "image", "expected.png", 0]
+ ],
+ "width": 64,
+ "height": 64
+ }
+ },
+ "sources": {
+ "geojson": {
+ "type": "geojson",
+ "data": {
+ "type": "Point",
+ "coordinates": [
+ 0,
+ 0
+ ]
+ }
+ }
+ },
+ "layers": [
+ {
+ "id": "circle",
+ "type": "circle",
+ "source": "geojson"
+ }
+ ]
+}
diff --git a/metrics/tests/probes/file-size/pass-size-is-in-tolerance-higher/expected.png b/metrics/tests/probes/file-size/pass-size-is-in-tolerance-higher/expected.png
new file mode 100644
index 0000000000..83d01c4e5d
--- /dev/null
+++ b/metrics/tests/probes/file-size/pass-size-is-in-tolerance-higher/expected.png
Binary files differ
diff --git a/metrics/tests/probes/file-size/pass-size-is-in-tolerance-higher/metrics.json b/metrics/tests/probes/file-size/pass-size-is-in-tolerance-higher/metrics.json
new file mode 100644
index 0000000000..d0c0c9d7b6
--- /dev/null
+++ b/metrics/tests/probes/file-size/pass-size-is-in-tolerance-higher/metrics.json
@@ -0,0 +1,14 @@
+{
+ "file-size": [
+ [
+ "image",
+ "expected.png",
+ 177
+ ],
+ [
+ "style",
+ "style.json",
+ 548
+ ]
+ ]
+}
diff --git a/metrics/tests/probes/file-size/pass-size-is-in-tolerance-higher/style.json b/metrics/tests/probes/file-size/pass-size-is-in-tolerance-higher/style.json
new file mode 100644
index 0000000000..d021673ba5
--- /dev/null
+++ b/metrics/tests/probes/file-size/pass-size-is-in-tolerance-higher/style.json
@@ -0,0 +1,32 @@
+{
+ "version": 8,
+ "metadata": {
+ "test": {
+ "operations": [
+ ["probeFileSize", "style", "style.json", 0.05],
+ ["probeFileSize", "image", "expected.png", 0.05]
+ ],
+ "width": 64,
+ "height": 64
+ }
+ },
+ "sources": {
+ "geojson": {
+ "type": "geojson",
+ "data": {
+ "type": "Point",
+ "coordinates": [
+ 0,
+ 0
+ ]
+ }
+ }
+ },
+ "layers": [
+ {
+ "id": "circle",
+ "type": "circle",
+ "source": "geojson"
+ }
+ ]
+}
diff --git a/metrics/tests/probes/file-size/pass-size-is-in-tolerance-lower/expected.png b/metrics/tests/probes/file-size/pass-size-is-in-tolerance-lower/expected.png
new file mode 100644
index 0000000000..83d01c4e5d
--- /dev/null
+++ b/metrics/tests/probes/file-size/pass-size-is-in-tolerance-lower/expected.png
Binary files differ
diff --git a/metrics/tests/probes/file-size/pass-size-is-in-tolerance-lower/metrics.json b/metrics/tests/probes/file-size/pass-size-is-in-tolerance-lower/metrics.json
new file mode 100644
index 0000000000..d62b751d5a
--- /dev/null
+++ b/metrics/tests/probes/file-size/pass-size-is-in-tolerance-lower/metrics.json
@@ -0,0 +1,14 @@
+{
+ "file-size": [
+ [
+ "image",
+ "expected.png",
+ 161
+ ],
+ [
+ "style",
+ "style.json",
+ 498
+ ]
+ ]
+}
diff --git a/metrics/tests/probes/file-size/pass-size-is-in-tolerance-lower/style.json b/metrics/tests/probes/file-size/pass-size-is-in-tolerance-lower/style.json
new file mode 100644
index 0000000000..d021673ba5
--- /dev/null
+++ b/metrics/tests/probes/file-size/pass-size-is-in-tolerance-lower/style.json
@@ -0,0 +1,32 @@
+{
+ "version": 8,
+ "metadata": {
+ "test": {
+ "operations": [
+ ["probeFileSize", "style", "style.json", 0.05],
+ ["probeFileSize", "image", "expected.png", 0.05]
+ ],
+ "width": 64,
+ "height": 64
+ }
+ },
+ "sources": {
+ "geojson": {
+ "type": "geojson",
+ "data": {
+ "type": "Point",
+ "coordinates": [
+ 0,
+ 0
+ ]
+ }
+ }
+ },
+ "layers": [
+ {
+ "id": "circle",
+ "type": "circle",
+ "source": "geojson"
+ }
+ ]
+}
diff --git a/metrics/tests/probes/file-size/pass-size-is-same/expected.png b/metrics/tests/probes/file-size/pass-size-is-same/expected.png
new file mode 100644
index 0000000000..83d01c4e5d
--- /dev/null
+++ b/metrics/tests/probes/file-size/pass-size-is-same/expected.png
Binary files differ
diff --git a/metrics/tests/probes/file-size/pass-size-is-same/metrics.json b/metrics/tests/probes/file-size/pass-size-is-same/metrics.json
new file mode 100644
index 0000000000..15f8c35617
--- /dev/null
+++ b/metrics/tests/probes/file-size/pass-size-is-same/metrics.json
@@ -0,0 +1,24 @@
+{
+ "file-size": [
+ [
+ "image",
+ "expected.png",
+ 169
+ ],
+ [
+ "image-compressed",
+ "expected.png",
+ 167
+ ],
+ [
+ "style",
+ "style.json",
+ 674
+ ],
+ [
+ "style-compressed",
+ "style.json",
+ 256
+ ]
+ ]
+}
diff --git a/metrics/tests/probes/file-size/pass-size-is-same/style.json b/metrics/tests/probes/file-size/pass-size-is-same/style.json
new file mode 100644
index 0000000000..b13f37500a
--- /dev/null
+++ b/metrics/tests/probes/file-size/pass-size-is-same/style.json
@@ -0,0 +1,34 @@
+{
+ "version": 8,
+ "metadata": {
+ "test": {
+ "operations": [
+ ["probeFileSize", "image", "expected.png", 0],
+ ["probeFileSize", "image-compressed", "expected.png", 0, "compressed"],
+ ["probeFileSize", "style", "style.json", 0],
+ ["probeFileSize", "style-compressed", "style.json", 0, "compressed"]
+ ],
+ "width": 64,
+ "height": 64
+ }
+ },
+ "sources": {
+ "geojson": {
+ "type": "geojson",
+ "data": {
+ "type": "Point",
+ "coordinates": [
+ 0,
+ 0
+ ]
+ }
+ }
+ },
+ "layers": [
+ {
+ "id": "circle",
+ "type": "circle",
+ "source": "geojson"
+ }
+ ]
+}
diff --git a/metrics/tests/probes/gfx/fail-ib-mem-mismatch/expected.png b/metrics/tests/probes/gfx/fail-ib-mem-mismatch/expected.png
new file mode 100644
index 0000000000..4b5ea75a25
--- /dev/null
+++ b/metrics/tests/probes/gfx/fail-ib-mem-mismatch/expected.png
Binary files differ
diff --git a/metrics/tests/probes/gfx/fail-ib-mem-mismatch/metrics.json b/metrics/tests/probes/gfx/fail-ib-mem-mismatch/metrics.json
new file mode 100644
index 0000000000..2b5c9c3eda
--- /dev/null
+++ b/metrics/tests/probes/gfx/fail-ib-mem-mismatch/metrics.json
@@ -0,0 +1,5 @@
+{
+ "gfx":[
+ ["gfx 0", 36, 14, 63, 1, [371208, 371208], [68598, 65536], [74592, 74592]]
+ ]
+}
diff --git a/metrics/tests/probes/gfx/fail-ib-mem-mismatch/style.json b/metrics/tests/probes/gfx/fail-ib-mem-mismatch/style.json
new file mode 100644
index 0000000000..6ae3eecb8c
--- /dev/null
+++ b/metrics/tests/probes/gfx/fail-ib-mem-mismatch/style.json
@@ -0,0 +1,20 @@
+{
+ "version": 8,
+ "metadata": {
+ "test": {
+ "width": 512,
+ "height": 512,
+ "operations": [
+ ["setStyle", "local://styles/uruguay.json"],
+ ["setZoom", 9 ],
+ ["probeGFXStart"],
+ ["setCenter", [-56.509552, -32.865788] ],
+ ["probeGFX", "gfx 0"],
+ ["probeGFXEnd"]
+ ]
+ }
+ },
+ "sources": {},
+ "layers": []
+ }
+ \ No newline at end of file
diff --git a/metrics/tests/probes/gfx/fail-negative-framebuffer-count/expected.png b/metrics/tests/probes/gfx/fail-negative-framebuffer-count/expected.png
new file mode 100644
index 0000000000..4b5ea75a25
--- /dev/null
+++ b/metrics/tests/probes/gfx/fail-negative-framebuffer-count/expected.png
Binary files differ
diff --git a/metrics/tests/probes/gfx/fail-negative-framebuffer-count/metrics.json b/metrics/tests/probes/gfx/fail-negative-framebuffer-count/metrics.json
new file mode 100644
index 0000000000..e92cffa571
--- /dev/null
+++ b/metrics/tests/probes/gfx/fail-negative-framebuffer-count/metrics.json
@@ -0,0 +1,5 @@
+{
+ "gfx":[
+ ["gfx 0", 36, 14, 63, -1, [371208, 371208], [68598, 68598], [74592, 74592]]
+ ]
+}
diff --git a/metrics/tests/probes/gfx/fail-negative-framebuffer-count/style.json b/metrics/tests/probes/gfx/fail-negative-framebuffer-count/style.json
new file mode 100644
index 0000000000..6ae3eecb8c
--- /dev/null
+++ b/metrics/tests/probes/gfx/fail-negative-framebuffer-count/style.json
@@ -0,0 +1,20 @@
+{
+ "version": 8,
+ "metadata": {
+ "test": {
+ "width": 512,
+ "height": 512,
+ "operations": [
+ ["setStyle", "local://styles/uruguay.json"],
+ ["setZoom", 9 ],
+ ["probeGFXStart"],
+ ["setCenter", [-56.509552, -32.865788] ],
+ ["probeGFX", "gfx 0"],
+ ["probeGFXEnd"]
+ ]
+ }
+ },
+ "sources": {},
+ "layers": []
+ }
+ \ No newline at end of file
diff --git a/metrics/tests/probes/gfx/fail-texture-mem-mismatch/expected.png b/metrics/tests/probes/gfx/fail-texture-mem-mismatch/expected.png
new file mode 100644
index 0000000000..4b5ea75a25
--- /dev/null
+++ b/metrics/tests/probes/gfx/fail-texture-mem-mismatch/expected.png
Binary files differ
diff --git a/metrics/tests/probes/gfx/fail-texture-mem-mismatch/metrics.json b/metrics/tests/probes/gfx/fail-texture-mem-mismatch/metrics.json
new file mode 100644
index 0000000000..fc6f55025f
--- /dev/null
+++ b/metrics/tests/probes/gfx/fail-texture-mem-mismatch/metrics.json
@@ -0,0 +1,5 @@
+{
+ "gfx":[
+ ["gfx 0", 36, 14, 63, 1, [371208, 370000], [68598, 68598], [74592, 74592]]
+ ]
+}
diff --git a/metrics/tests/probes/gfx/fail-texture-mem-mismatch/style.json b/metrics/tests/probes/gfx/fail-texture-mem-mismatch/style.json
new file mode 100644
index 0000000000..6ae3eecb8c
--- /dev/null
+++ b/metrics/tests/probes/gfx/fail-texture-mem-mismatch/style.json
@@ -0,0 +1,20 @@
+{
+ "version": 8,
+ "metadata": {
+ "test": {
+ "width": 512,
+ "height": 512,
+ "operations": [
+ ["setStyle", "local://styles/uruguay.json"],
+ ["setZoom", 9 ],
+ ["probeGFXStart"],
+ ["setCenter", [-56.509552, -32.865788] ],
+ ["probeGFX", "gfx 0"],
+ ["probeGFXEnd"]
+ ]
+ }
+ },
+ "sources": {},
+ "layers": []
+ }
+ \ No newline at end of file
diff --git a/metrics/tests/probes/gfx/fail-too-few-buffers/expected.png b/metrics/tests/probes/gfx/fail-too-few-buffers/expected.png
new file mode 100644
index 0000000000..4b5ea75a25
--- /dev/null
+++ b/metrics/tests/probes/gfx/fail-too-few-buffers/expected.png
Binary files differ
diff --git a/metrics/tests/probes/gfx/fail-too-few-buffers/metrics.json b/metrics/tests/probes/gfx/fail-too-few-buffers/metrics.json
new file mode 100644
index 0000000000..07b59adeed
--- /dev/null
+++ b/metrics/tests/probes/gfx/fail-too-few-buffers/metrics.json
@@ -0,0 +1,5 @@
+{
+ "gfx":[
+ ["gfx 0", 36, 14, 1000, 1, [371208, 371208], [68598, 68598], [74592, 74592]]
+ ]
+}
diff --git a/metrics/tests/probes/gfx/fail-too-few-buffers/style.json b/metrics/tests/probes/gfx/fail-too-few-buffers/style.json
new file mode 100644
index 0000000000..6ae3eecb8c
--- /dev/null
+++ b/metrics/tests/probes/gfx/fail-too-few-buffers/style.json
@@ -0,0 +1,20 @@
+{
+ "version": 8,
+ "metadata": {
+ "test": {
+ "width": 512,
+ "height": 512,
+ "operations": [
+ ["setStyle", "local://styles/uruguay.json"],
+ ["setZoom", 9 ],
+ ["probeGFXStart"],
+ ["setCenter", [-56.509552, -32.865788] ],
+ ["probeGFX", "gfx 0"],
+ ["probeGFXEnd"]
+ ]
+ }
+ },
+ "sources": {},
+ "layers": []
+ }
+ \ No newline at end of file
diff --git a/metrics/tests/probes/gfx/fail-too-few-textures/expected.png b/metrics/tests/probes/gfx/fail-too-few-textures/expected.png
new file mode 100644
index 0000000000..4b5ea75a25
--- /dev/null
+++ b/metrics/tests/probes/gfx/fail-too-few-textures/expected.png
Binary files differ
diff --git a/metrics/tests/probes/gfx/fail-too-few-textures/metrics.json b/metrics/tests/probes/gfx/fail-too-few-textures/metrics.json
new file mode 100644
index 0000000000..805d7035e2
--- /dev/null
+++ b/metrics/tests/probes/gfx/fail-too-few-textures/metrics.json
@@ -0,0 +1,5 @@
+{
+ "gfx":[
+ ["gfx 0", 36, 1000, 63, 1, [371208, 371208], [68598, 68598], [74592, 74592]]
+ ]
+}
diff --git a/metrics/tests/probes/gfx/fail-too-few-textures/style.json b/metrics/tests/probes/gfx/fail-too-few-textures/style.json
new file mode 100644
index 0000000000..6ae3eecb8c
--- /dev/null
+++ b/metrics/tests/probes/gfx/fail-too-few-textures/style.json
@@ -0,0 +1,20 @@
+{
+ "version": 8,
+ "metadata": {
+ "test": {
+ "width": 512,
+ "height": 512,
+ "operations": [
+ ["setStyle", "local://styles/uruguay.json"],
+ ["setZoom", 9 ],
+ ["probeGFXStart"],
+ ["setCenter", [-56.509552, -32.865788] ],
+ ["probeGFX", "gfx 0"],
+ ["probeGFXEnd"]
+ ]
+ }
+ },
+ "sources": {},
+ "layers": []
+ }
+ \ No newline at end of file
diff --git a/metrics/tests/probes/gfx/fail-too-many-drawcalls/expected.png b/metrics/tests/probes/gfx/fail-too-many-drawcalls/expected.png
new file mode 100644
index 0000000000..4b5ea75a25
--- /dev/null
+++ b/metrics/tests/probes/gfx/fail-too-many-drawcalls/expected.png
Binary files differ
diff --git a/metrics/tests/probes/gfx/fail-too-many-drawcalls/metrics.json b/metrics/tests/probes/gfx/fail-too-many-drawcalls/metrics.json
new file mode 100644
index 0000000000..9abb546450
--- /dev/null
+++ b/metrics/tests/probes/gfx/fail-too-many-drawcalls/metrics.json
@@ -0,0 +1,5 @@
+{
+ "gfx":[
+ ["gfx 0", 28, 14, 63, 1, [371208, 371208], [68598, 68598], [74592, 74592]]
+ ]
+}
diff --git a/metrics/tests/probes/gfx/fail-too-many-drawcalls/style.json b/metrics/tests/probes/gfx/fail-too-many-drawcalls/style.json
new file mode 100644
index 0000000000..6ae3eecb8c
--- /dev/null
+++ b/metrics/tests/probes/gfx/fail-too-many-drawcalls/style.json
@@ -0,0 +1,20 @@
+{
+ "version": 8,
+ "metadata": {
+ "test": {
+ "width": 512,
+ "height": 512,
+ "operations": [
+ ["setStyle", "local://styles/uruguay.json"],
+ ["setZoom", 9 ],
+ ["probeGFXStart"],
+ ["setCenter", [-56.509552, -32.865788] ],
+ ["probeGFX", "gfx 0"],
+ ["probeGFXEnd"]
+ ]
+ }
+ },
+ "sources": {},
+ "layers": []
+ }
+ \ No newline at end of file
diff --git a/metrics/tests/probes/gfx/fail-vb-mem-mismatch/expected.png b/metrics/tests/probes/gfx/fail-vb-mem-mismatch/expected.png
new file mode 100644
index 0000000000..4b5ea75a25
--- /dev/null
+++ b/metrics/tests/probes/gfx/fail-vb-mem-mismatch/expected.png
Binary files differ
diff --git a/metrics/tests/probes/gfx/fail-vb-mem-mismatch/metrics.json b/metrics/tests/probes/gfx/fail-vb-mem-mismatch/metrics.json
new file mode 100644
index 0000000000..fd25dbd68b
--- /dev/null
+++ b/metrics/tests/probes/gfx/fail-vb-mem-mismatch/metrics.json
@@ -0,0 +1,5 @@
+{
+ "gfx":[
+ ["gfx 0", 36, 14, 63, 1, [371208, 371208], [68598, 68598], [74592, 7654321]]
+ ]
+}
diff --git a/metrics/tests/probes/gfx/fail-vb-mem-mismatch/style.json b/metrics/tests/probes/gfx/fail-vb-mem-mismatch/style.json
new file mode 100644
index 0000000000..6ae3eecb8c
--- /dev/null
+++ b/metrics/tests/probes/gfx/fail-vb-mem-mismatch/style.json
@@ -0,0 +1,20 @@
+{
+ "version": 8,
+ "metadata": {
+ "test": {
+ "width": 512,
+ "height": 512,
+ "operations": [
+ ["setStyle", "local://styles/uruguay.json"],
+ ["setZoom", 9 ],
+ ["probeGFXStart"],
+ ["setCenter", [-56.509552, -32.865788] ],
+ ["probeGFX", "gfx 0"],
+ ["probeGFXEnd"]
+ ]
+ }
+ },
+ "sources": {},
+ "layers": []
+ }
+ \ No newline at end of file
diff --git a/metrics/tests/probes/gfx/pass-double-probe/expected.png b/metrics/tests/probes/gfx/pass-double-probe/expected.png
new file mode 100644
index 0000000000..9f4e48ab24
--- /dev/null
+++ b/metrics/tests/probes/gfx/pass-double-probe/expected.png
Binary files differ
diff --git a/metrics/tests/probes/gfx/pass-double-probe/metrics.json b/metrics/tests/probes/gfx/pass-double-probe/metrics.json
new file mode 100644
index 0000000000..f2641a9a16
--- /dev/null
+++ b/metrics/tests/probes/gfx/pass-double-probe/metrics.json
@@ -0,0 +1,6 @@
+{
+ "gfx":[
+ ["gfx 0", 36, 13, 63, 1, [240136, 240136], [68598, 68598], [74592, 74592]],
+ ["gfx 1", 32, 17, 85, 1, [325008, 325008], [84926, 84926], [100224, 100224]]
+ ]
+}
diff --git a/metrics/tests/probes/gfx/pass-double-probe/style.json b/metrics/tests/probes/gfx/pass-double-probe/style.json
new file mode 100644
index 0000000000..395f4ce50a
--- /dev/null
+++ b/metrics/tests/probes/gfx/pass-double-probe/style.json
@@ -0,0 +1,22 @@
+{
+ "version": 8,
+ "metadata": {
+ "test": {
+ "width": 512,
+ "height": 512,
+ "operations": [
+ ["setStyle", "local://styles/uruguay.json"],
+ ["setZoom", 9 ],
+ ["probeGFXStart"],
+ ["setCenter", [-56.509552, -32.865788] ],
+ ["probeGFX", "gfx 0"],
+ ["setCenter", [-56.509552, -32.745788] ],
+ ["probeGFX", "gfx 1"],
+ ["probeGFXEnd"]
+ ]
+ }
+ },
+ "sources": {},
+ "layers": []
+ }
+ \ No newline at end of file
diff --git a/metrics/tests/probes/gfx/pass-probe-reset/expected.png b/metrics/tests/probes/gfx/pass-probe-reset/expected.png
new file mode 100644
index 0000000000..9f4e48ab24
--- /dev/null
+++ b/metrics/tests/probes/gfx/pass-probe-reset/expected.png
Binary files differ
diff --git a/metrics/tests/probes/gfx/pass-probe-reset/metrics.json b/metrics/tests/probes/gfx/pass-probe-reset/metrics.json
new file mode 100644
index 0000000000..0e42bc1697
--- /dev/null
+++ b/metrics/tests/probes/gfx/pass-probe-reset/metrics.json
@@ -0,0 +1,6 @@
+{
+ "gfx":[
+ ["gfx 0", 36, 13, 63, 1, [240136, 240136], [68598, 68598], [74592, 74592]],
+ ["gfx 1", 32, 17, 85, 1, [84872, 84872], [16328, 16328], [25632, 25632]]
+ ]
+}
diff --git a/metrics/tests/probes/gfx/pass-probe-reset/style.json b/metrics/tests/probes/gfx/pass-probe-reset/style.json
new file mode 100644
index 0000000000..698d95bb74
--- /dev/null
+++ b/metrics/tests/probes/gfx/pass-probe-reset/style.json
@@ -0,0 +1,24 @@
+{
+ "version": 8,
+ "metadata": {
+ "test": {
+ "width": 512,
+ "height": 512,
+ "operations": [
+ ["setStyle", "local://styles/uruguay.json"],
+ ["setZoom", 9 ],
+ ["probeGFXStart"],
+ ["setCenter", [-56.509552, -32.865788] ],
+ ["probeGFX", "gfx 0"],
+ ["probeGFXEnd"],
+ ["probeGFXStart"],
+ ["setCenter", [-56.509552, -32.745788] ],
+ ["probeGFX", "gfx 1"],
+ ["probeGFXEnd"]
+ ]
+ }
+ },
+ "sources": {},
+ "layers": []
+ }
+ \ No newline at end of file
diff --git a/metrics/tests/probes/gfx/pass/expected.png b/metrics/tests/probes/gfx/pass/expected.png
new file mode 100644
index 0000000000..4b5ea75a25
--- /dev/null
+++ b/metrics/tests/probes/gfx/pass/expected.png
Binary files differ
diff --git a/metrics/tests/probes/gfx/pass/metrics.json b/metrics/tests/probes/gfx/pass/metrics.json
new file mode 100644
index 0000000000..67ecec5d78
--- /dev/null
+++ b/metrics/tests/probes/gfx/pass/metrics.json
@@ -0,0 +1,5 @@
+{
+ "gfx":[
+ ["gfx 0", 36, 13, 63, 1, [240136, 240136], [68598, 68598], [74592, 74592]]
+ ]
+}
diff --git a/metrics/tests/probes/gfx/pass/style.json b/metrics/tests/probes/gfx/pass/style.json
new file mode 100644
index 0000000000..6ae3eecb8c
--- /dev/null
+++ b/metrics/tests/probes/gfx/pass/style.json
@@ -0,0 +1,20 @@
+{
+ "version": 8,
+ "metadata": {
+ "test": {
+ "width": 512,
+ "height": 512,
+ "operations": [
+ ["setStyle", "local://styles/uruguay.json"],
+ ["setZoom", 9 ],
+ ["probeGFXStart"],
+ ["setCenter", [-56.509552, -32.865788] ],
+ ["probeGFX", "gfx 0"],
+ ["probeGFXEnd"]
+ ]
+ }
+ },
+ "sources": {},
+ "layers": []
+ }
+ \ No newline at end of file
diff --git a/metrics/tests/probes/memory/fail-memory-size-is-too-big/expected.png b/metrics/tests/probes/memory/fail-memory-size-is-too-big/expected.png
new file mode 100644
index 0000000000..0858c19f05
--- /dev/null
+++ b/metrics/tests/probes/memory/fail-memory-size-is-too-big/expected.png
Binary files differ
diff --git a/metrics/tests/probes/memory/fail-memory-size-is-too-big/metrics.json b/metrics/tests/probes/memory/fail-memory-size-is-too-big/metrics.json
new file mode 100644
index 0000000000..f13f54410d
--- /dev/null
+++ b/metrics/tests/probes/memory/fail-memory-size-is-too-big/metrics.json
@@ -0,0 +1,19 @@
+{
+ "memory": [
+ [
+ "after setZoom 0.9",
+ 21439,
+ 57
+ ],
+ [
+ "end",
+ 20000,
+ 108
+ ],
+ [
+ "start",
+ 0,
+ 0
+ ]
+ ]
+}
diff --git a/metrics/tests/probes/memory/fail-memory-size-is-too-big/style.json b/metrics/tests/probes/memory/fail-memory-size-is-too-big/style.json
new file mode 100644
index 0000000000..b2805ef34f
--- /dev/null
+++ b/metrics/tests/probes/memory/fail-memory-size-is-too-big/style.json
@@ -0,0 +1,52 @@
+{
+ "version": 8,
+ "metadata": {
+ "test": {
+ "width": 64,
+ "height": 64,
+ "operations": [
+ [ "wait" ],
+ [ "probeMemoryStart" ],
+ [ "probeMemory", "start" ],
+ [
+ "setZoom",
+ 0.9
+ ],
+ [
+ "wait"
+ ],
+ [ "probeMemory", "after setZoom 0.9", 0.005 ],
+ [
+ "setLayerZoomRange",
+ "circle",
+ 1,
+ 2
+ ],
+ [
+ "wait"
+ ],
+ [ "probeMemory", "end", 0.005 ],
+ [ "probeMemoryEnd" ]
+ ]
+ }
+ },
+ "sources": {
+ "geojson": {
+ "type": "geojson",
+ "data": {
+ "type": "Point",
+ "coordinates": [
+ 0,
+ 0
+ ]
+ }
+ }
+ },
+ "layers": [
+ {
+ "id": "circle",
+ "type": "circle",
+ "source": "geojson"
+ }
+ ]
+}
diff --git a/metrics/tests/probes/memory/fail-memory-size-is-too-small/expected.png b/metrics/tests/probes/memory/fail-memory-size-is-too-small/expected.png
new file mode 100644
index 0000000000..0858c19f05
--- /dev/null
+++ b/metrics/tests/probes/memory/fail-memory-size-is-too-small/expected.png
Binary files differ
diff --git a/metrics/tests/probes/memory/fail-memory-size-is-too-small/metrics.json b/metrics/tests/probes/memory/fail-memory-size-is-too-small/metrics.json
new file mode 100644
index 0000000000..9aba39584a
--- /dev/null
+++ b/metrics/tests/probes/memory/fail-memory-size-is-too-small/metrics.json
@@ -0,0 +1,19 @@
+{
+ "memory": [
+ [
+ "after setZoom 0.9",
+ 21439,
+ 57
+ ],
+ [
+ "end",
+ 60000,
+ 108
+ ],
+ [
+ "start",
+ 0,
+ 0
+ ]
+ ]
+}
diff --git a/metrics/tests/probes/memory/fail-memory-size-is-too-small/style.json b/metrics/tests/probes/memory/fail-memory-size-is-too-small/style.json
new file mode 100644
index 0000000000..b2805ef34f
--- /dev/null
+++ b/metrics/tests/probes/memory/fail-memory-size-is-too-small/style.json
@@ -0,0 +1,52 @@
+{
+ "version": 8,
+ "metadata": {
+ "test": {
+ "width": 64,
+ "height": 64,
+ "operations": [
+ [ "wait" ],
+ [ "probeMemoryStart" ],
+ [ "probeMemory", "start" ],
+ [
+ "setZoom",
+ 0.9
+ ],
+ [
+ "wait"
+ ],
+ [ "probeMemory", "after setZoom 0.9", 0.005 ],
+ [
+ "setLayerZoomRange",
+ "circle",
+ 1,
+ 2
+ ],
+ [
+ "wait"
+ ],
+ [ "probeMemory", "end", 0.005 ],
+ [ "probeMemoryEnd" ]
+ ]
+ }
+ },
+ "sources": {
+ "geojson": {
+ "type": "geojson",
+ "data": {
+ "type": "Point",
+ "coordinates": [
+ 0,
+ 0
+ ]
+ }
+ }
+ },
+ "layers": [
+ {
+ "id": "circle",
+ "type": "circle",
+ "source": "geojson"
+ }
+ ]
+}
diff --git a/metrics/tests/probes/memory/pass-memory-size-is-same/expected.png b/metrics/tests/probes/memory/pass-memory-size-is-same/expected.png
new file mode 100644
index 0000000000..0858c19f05
--- /dev/null
+++ b/metrics/tests/probes/memory/pass-memory-size-is-same/expected.png
Binary files differ
diff --git a/metrics/tests/probes/memory/pass-memory-size-is-same/metrics.json b/metrics/tests/probes/memory/pass-memory-size-is-same/metrics.json
new file mode 100644
index 0000000000..3ffbe1b732
--- /dev/null
+++ b/metrics/tests/probes/memory/pass-memory-size-is-same/metrics.json
@@ -0,0 +1,19 @@
+{
+ "memory": [
+ [
+ "after setZoom 0.9",
+ 21439,
+ 57
+ ],
+ [
+ "end",
+ 23385,
+ 108
+ ],
+ [
+ "start",
+ 0,
+ 0
+ ]
+ ]
+}
diff --git a/metrics/tests/probes/memory/pass-memory-size-is-same/style.json b/metrics/tests/probes/memory/pass-memory-size-is-same/style.json
new file mode 100644
index 0000000000..d1c09f69f9
--- /dev/null
+++ b/metrics/tests/probes/memory/pass-memory-size-is-same/style.json
@@ -0,0 +1,52 @@
+{
+ "version": 8,
+ "metadata": {
+ "test": {
+ "width": 64,
+ "height": 64,
+ "operations": [
+ [ "wait" ],
+ [ "probeMemoryStart" ],
+ [ "probeMemory", "start" ],
+ [
+ "setZoom",
+ 0.9
+ ],
+ [
+ "wait"
+ ],
+ [ "probeMemory", "after setZoom 0.9", 0.01 ],
+ [
+ "setLayerZoomRange",
+ "circle",
+ 1,
+ 2
+ ],
+ [
+ "wait"
+ ],
+ [ "probeMemory", "end", 0.01 ],
+ [ "probeMemoryEnd" ]
+ ]
+ }
+ },
+ "sources": {
+ "geojson": {
+ "type": "geojson",
+ "data": {
+ "type": "Point",
+ "coordinates": [
+ 0,
+ 0
+ ]
+ }
+ }
+ },
+ "layers": [
+ {
+ "id": "circle",
+ "type": "circle",
+ "source": "geojson"
+ }
+ ]
+}
diff --git a/metrics/tests/probes/network/fail-requests-transferred/expected.png b/metrics/tests/probes/network/fail-requests-transferred/expected.png
new file mode 100644
index 0000000000..b63b151765
--- /dev/null
+++ b/metrics/tests/probes/network/fail-requests-transferred/expected.png
Binary files differ
diff --git a/metrics/tests/probes/network/fail-requests-transferred/metrics.json b/metrics/tests/probes/network/fail-requests-transferred/metrics.json
new file mode 100644
index 0000000000..1a200ca38f
--- /dev/null
+++ b/metrics/tests/probes/network/fail-requests-transferred/metrics.json
@@ -0,0 +1,14 @@
+{
+ "network": [
+ [
+ "end",
+ 2,
+ 200000
+ ],
+ [
+ "start",
+ 0,
+ 0
+ ]
+ ]
+} \ No newline at end of file
diff --git a/metrics/tests/probes/network/fail-requests-transferred/style.json b/metrics/tests/probes/network/fail-requests-transferred/style.json
new file mode 100644
index 0000000000..ef94ddc748
--- /dev/null
+++ b/metrics/tests/probes/network/fail-requests-transferred/style.json
@@ -0,0 +1,67 @@
+{
+ "version": 8,
+ "metadata": {
+ "test": {
+ "operations": [
+ ["probeNetworkStart"],
+ ["probeNetwork", "start"],
+ ["wait"],
+ ["probeNetwork", "end"],
+ ["probeNetworkEnd"]
+ ],
+ "height": 256,
+ "width": 1024
+ }
+ },
+ "center": [
+ -73,
+ 15
+ ],
+ "zoom": 4.5,
+ "sources": {
+ "mapbox": {
+ "type": "vector",
+ "maxzoom": 14,
+ "tiles": [
+ "local://tiles/mapbox.mapbox-streets-v7/{z}-{x}-{y}.mvt"
+ ]
+ }
+ },
+ "glyphs": "local://glyphs/{fontstack}/{range}.pbf",
+ "layers": [
+ {
+ "id": "background",
+ "type": "background",
+ "paint": {
+ "background-color": "white"
+ }
+ },
+ {
+ "id": "line-center",
+ "type": "symbol",
+ "source": "mapbox",
+ "source-layer": "marine_label",
+ "layout": {
+ "text-field": "{name_en}",
+ "symbol-placement": "line-center",
+ "text-allow-overlap": true,
+ "text-size": 35,
+ "text-letter-spacing": 0.4,
+ "text-offset": [3, 0],
+ "text-font": [
+ "Open Sans Semibold",
+ "Arial Unicode MS Bold"
+ ]
+ }
+ },
+ {
+ "id": "line",
+ "type": "line",
+ "source": "mapbox",
+ "source-layer": "marine_label",
+ "paint": {
+ "line-width": 1
+ }
+ }
+ ]
+}
diff --git a/metrics/tests/probes/network/fail-requests/expected.png b/metrics/tests/probes/network/fail-requests/expected.png
new file mode 100644
index 0000000000..b63b151765
--- /dev/null
+++ b/metrics/tests/probes/network/fail-requests/expected.png
Binary files differ
diff --git a/metrics/tests/probes/network/fail-requests/metrics.json b/metrics/tests/probes/network/fail-requests/metrics.json
new file mode 100644
index 0000000000..81c9b8a5d4
--- /dev/null
+++ b/metrics/tests/probes/network/fail-requests/metrics.json
@@ -0,0 +1,14 @@
+{
+ "network": [
+ [
+ "end",
+ 2,
+ 183111
+ ],
+ [
+ "start",
+ 0,
+ 0
+ ]
+ ]
+} \ No newline at end of file
diff --git a/metrics/tests/probes/network/fail-requests/style.json b/metrics/tests/probes/network/fail-requests/style.json
new file mode 100644
index 0000000000..ef94ddc748
--- /dev/null
+++ b/metrics/tests/probes/network/fail-requests/style.json
@@ -0,0 +1,67 @@
+{
+ "version": 8,
+ "metadata": {
+ "test": {
+ "operations": [
+ ["probeNetworkStart"],
+ ["probeNetwork", "start"],
+ ["wait"],
+ ["probeNetwork", "end"],
+ ["probeNetworkEnd"]
+ ],
+ "height": 256,
+ "width": 1024
+ }
+ },
+ "center": [
+ -73,
+ 15
+ ],
+ "zoom": 4.5,
+ "sources": {
+ "mapbox": {
+ "type": "vector",
+ "maxzoom": 14,
+ "tiles": [
+ "local://tiles/mapbox.mapbox-streets-v7/{z}-{x}-{y}.mvt"
+ ]
+ }
+ },
+ "glyphs": "local://glyphs/{fontstack}/{range}.pbf",
+ "layers": [
+ {
+ "id": "background",
+ "type": "background",
+ "paint": {
+ "background-color": "white"
+ }
+ },
+ {
+ "id": "line-center",
+ "type": "symbol",
+ "source": "mapbox",
+ "source-layer": "marine_label",
+ "layout": {
+ "text-field": "{name_en}",
+ "symbol-placement": "line-center",
+ "text-allow-overlap": true,
+ "text-size": 35,
+ "text-letter-spacing": 0.4,
+ "text-offset": [3, 0],
+ "text-font": [
+ "Open Sans Semibold",
+ "Arial Unicode MS Bold"
+ ]
+ }
+ },
+ {
+ "id": "line",
+ "type": "line",
+ "source": "mapbox",
+ "source-layer": "marine_label",
+ "paint": {
+ "line-width": 1
+ }
+ }
+ ]
+}
diff --git a/metrics/tests/probes/network/fail-transferred/expected.png b/metrics/tests/probes/network/fail-transferred/expected.png
new file mode 100644
index 0000000000..b63b151765
--- /dev/null
+++ b/metrics/tests/probes/network/fail-transferred/expected.png
Binary files differ
diff --git a/metrics/tests/probes/network/fail-transferred/metrics.json b/metrics/tests/probes/network/fail-transferred/metrics.json
new file mode 100644
index 0000000000..20b42d5b9b
--- /dev/null
+++ b/metrics/tests/probes/network/fail-transferred/metrics.json
@@ -0,0 +1,14 @@
+{
+ "network": [
+ [
+ "end",
+ 3,
+ 100000
+ ],
+ [
+ "start",
+ 0,
+ 0
+ ]
+ ]
+} \ No newline at end of file
diff --git a/metrics/tests/probes/network/fail-transferred/style.json b/metrics/tests/probes/network/fail-transferred/style.json
new file mode 100644
index 0000000000..ef94ddc748
--- /dev/null
+++ b/metrics/tests/probes/network/fail-transferred/style.json
@@ -0,0 +1,67 @@
+{
+ "version": 8,
+ "metadata": {
+ "test": {
+ "operations": [
+ ["probeNetworkStart"],
+ ["probeNetwork", "start"],
+ ["wait"],
+ ["probeNetwork", "end"],
+ ["probeNetworkEnd"]
+ ],
+ "height": 256,
+ "width": 1024
+ }
+ },
+ "center": [
+ -73,
+ 15
+ ],
+ "zoom": 4.5,
+ "sources": {
+ "mapbox": {
+ "type": "vector",
+ "maxzoom": 14,
+ "tiles": [
+ "local://tiles/mapbox.mapbox-streets-v7/{z}-{x}-{y}.mvt"
+ ]
+ }
+ },
+ "glyphs": "local://glyphs/{fontstack}/{range}.pbf",
+ "layers": [
+ {
+ "id": "background",
+ "type": "background",
+ "paint": {
+ "background-color": "white"
+ }
+ },
+ {
+ "id": "line-center",
+ "type": "symbol",
+ "source": "mapbox",
+ "source-layer": "marine_label",
+ "layout": {
+ "text-field": "{name_en}",
+ "symbol-placement": "line-center",
+ "text-allow-overlap": true,
+ "text-size": 35,
+ "text-letter-spacing": 0.4,
+ "text-offset": [3, 0],
+ "text-font": [
+ "Open Sans Semibold",
+ "Arial Unicode MS Bold"
+ ]
+ }
+ },
+ {
+ "id": "line",
+ "type": "line",
+ "source": "mapbox",
+ "source-layer": "marine_label",
+ "paint": {
+ "line-width": 1
+ }
+ }
+ ]
+}
diff --git a/metrics/tests/probes/network/pass/expected.png b/metrics/tests/probes/network/pass/expected.png
new file mode 100644
index 0000000000..b63b151765
--- /dev/null
+++ b/metrics/tests/probes/network/pass/expected.png
Binary files differ
diff --git a/metrics/tests/probes/network/pass/metrics.json b/metrics/tests/probes/network/pass/metrics.json
new file mode 100644
index 0000000000..6afd106a45
--- /dev/null
+++ b/metrics/tests/probes/network/pass/metrics.json
@@ -0,0 +1,14 @@
+{
+ "network": [
+ [
+ "end",
+ 3,
+ 183111
+ ],
+ [
+ "start",
+ 0,
+ 0
+ ]
+ ]
+} \ No newline at end of file
diff --git a/metrics/tests/probes/network/pass/style.json b/metrics/tests/probes/network/pass/style.json
new file mode 100644
index 0000000000..ef94ddc748
--- /dev/null
+++ b/metrics/tests/probes/network/pass/style.json
@@ -0,0 +1,67 @@
+{
+ "version": 8,
+ "metadata": {
+ "test": {
+ "operations": [
+ ["probeNetworkStart"],
+ ["probeNetwork", "start"],
+ ["wait"],
+ ["probeNetwork", "end"],
+ ["probeNetworkEnd"]
+ ],
+ "height": 256,
+ "width": 1024
+ }
+ },
+ "center": [
+ -73,
+ 15
+ ],
+ "zoom": 4.5,
+ "sources": {
+ "mapbox": {
+ "type": "vector",
+ "maxzoom": 14,
+ "tiles": [
+ "local://tiles/mapbox.mapbox-streets-v7/{z}-{x}-{y}.mvt"
+ ]
+ }
+ },
+ "glyphs": "local://glyphs/{fontstack}/{range}.pbf",
+ "layers": [
+ {
+ "id": "background",
+ "type": "background",
+ "paint": {
+ "background-color": "white"
+ }
+ },
+ {
+ "id": "line-center",
+ "type": "symbol",
+ "source": "mapbox",
+ "source-layer": "marine_label",
+ "layout": {
+ "text-field": "{name_en}",
+ "symbol-placement": "line-center",
+ "text-allow-overlap": true,
+ "text-size": 35,
+ "text-letter-spacing": 0.4,
+ "text-offset": [3, 0],
+ "text-font": [
+ "Open Sans Semibold",
+ "Arial Unicode MS Bold"
+ ]
+ }
+ },
+ {
+ "id": "line",
+ "type": "line",
+ "source": "mapbox",
+ "source-layer": "marine_label",
+ "paint": {
+ "line-width": 1
+ }
+ }
+ ]
+}