@browserless/test 10.2.4 → 10.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/index.js +35 -16
- package/package.json +5 -4
package/index.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
const { imgDiff } = require('img-diff-js')
|
|
4
4
|
const { onExit } = require('signal-exit')
|
|
5
|
-
const {
|
|
5
|
+
const { runServer } = require('./util')
|
|
6
6
|
const { copy } = require('fs-extra')
|
|
7
7
|
const temp = require('temperment')
|
|
8
8
|
const pdf = require('pdf-parse')
|
|
@@ -29,8 +29,8 @@ const imageComparison = async (t, expectedFilename, filename) => {
|
|
|
29
29
|
return looksSame(expectedFilename, actualFilename)
|
|
30
30
|
}
|
|
31
31
|
|
|
32
|
-
const
|
|
33
|
-
|
|
32
|
+
const getUrl = t =>
|
|
33
|
+
runServer(t, ({ res }) => {
|
|
34
34
|
res.setHeader('Content-Type', 'text/html')
|
|
35
35
|
return res.end(`<!DOCTYPE html>
|
|
36
36
|
<html lang="en">
|
|
@@ -43,10 +43,7 @@ const serverUrl = (() => {
|
|
|
43
43
|
<p>hello world</p>
|
|
44
44
|
</body>
|
|
45
45
|
</html>`)
|
|
46
|
-
})
|
|
47
|
-
|
|
48
|
-
return `http://[::]:${server.address().port}`
|
|
49
|
-
})()
|
|
46
|
+
})
|
|
50
47
|
|
|
51
48
|
module.exports = (browser, teardown = browser.close) => {
|
|
52
49
|
onExit(teardown)
|
|
@@ -54,24 +51,33 @@ module.exports = (browser, teardown = browser.close) => {
|
|
|
54
51
|
test('.html', async t => {
|
|
55
52
|
const browserless = await browser.createContext()
|
|
56
53
|
t.teardown(browserless.destroyContext)
|
|
57
|
-
const
|
|
54
|
+
const url = await getUrl(t)
|
|
55
|
+
const html = await browserless.html(url, {
|
|
56
|
+
adblock: false
|
|
57
|
+
})
|
|
58
58
|
t.snapshot(html)
|
|
59
59
|
})
|
|
60
60
|
|
|
61
61
|
test('.text', async t => {
|
|
62
62
|
const browserless = await browser.createContext()
|
|
63
63
|
t.teardown(browserless.destroyContext)
|
|
64
|
-
const
|
|
64
|
+
const url = await getUrl(t)
|
|
65
|
+
const text = await browserless.text(url)
|
|
65
66
|
|
|
66
67
|
t.snapshot(text)
|
|
67
68
|
})
|
|
68
69
|
|
|
69
70
|
test('.screenshot (png)', async t => {
|
|
70
|
-
const filepath = temp.file({
|
|
71
|
+
const filepath = temp.file({
|
|
72
|
+
extension: 'png'
|
|
73
|
+
})
|
|
71
74
|
|
|
72
75
|
const browserless = await browser.createContext()
|
|
73
76
|
t.teardown(browserless.destroyContext)
|
|
74
|
-
|
|
77
|
+
const url = await getUrl(t)
|
|
78
|
+
await browserless.screenshot(url, {
|
|
79
|
+
path: filepath
|
|
80
|
+
})
|
|
75
81
|
|
|
76
82
|
const { diffCount } = await imageComparison(t, filepath, 'example.png')
|
|
77
83
|
|
|
@@ -82,11 +88,17 @@ module.exports = (browser, teardown = browser.close) => {
|
|
|
82
88
|
})
|
|
83
89
|
|
|
84
90
|
test('.screenshot (jpeg)', async t => {
|
|
85
|
-
const filepath = temp.file({
|
|
91
|
+
const filepath = temp.file({
|
|
92
|
+
extension: 'jpeg'
|
|
93
|
+
})
|
|
86
94
|
|
|
87
95
|
const browserless = await browser.createContext()
|
|
88
96
|
t.teardown(browserless.destroyContext)
|
|
89
|
-
|
|
97
|
+
const url = await getUrl(t)
|
|
98
|
+
await browserless.screenshot(url, {
|
|
99
|
+
type: 'jpeg',
|
|
100
|
+
path: filepath
|
|
101
|
+
})
|
|
90
102
|
|
|
91
103
|
const { diffCount } = await imageComparison(t, filepath, 'example.jpeg')
|
|
92
104
|
|
|
@@ -97,11 +109,17 @@ module.exports = (browser, teardown = browser.close) => {
|
|
|
97
109
|
})
|
|
98
110
|
|
|
99
111
|
test('.screenshot with device emulation', async t => {
|
|
100
|
-
const filepath = temp.file({
|
|
112
|
+
const filepath = temp.file({
|
|
113
|
+
extension: 'png'
|
|
114
|
+
})
|
|
101
115
|
|
|
102
116
|
const browserless = await browser.createContext()
|
|
103
117
|
t.teardown(browserless.destroyContext)
|
|
104
|
-
|
|
118
|
+
const url = await getUrl(t)
|
|
119
|
+
await browserless.screenshot(url, {
|
|
120
|
+
device: 'iPhone 6',
|
|
121
|
+
path: filepath
|
|
122
|
+
})
|
|
105
123
|
|
|
106
124
|
const { diffCount } = await imageComparison(t, filepath, 'iphone.png')
|
|
107
125
|
|
|
@@ -114,7 +132,8 @@ module.exports = (browser, teardown = browser.close) => {
|
|
|
114
132
|
test('.pdf', async t => {
|
|
115
133
|
const browserless = await browser.createContext()
|
|
116
134
|
t.teardown(browserless.destroyContext)
|
|
117
|
-
const
|
|
135
|
+
const url = await getUrl(t)
|
|
136
|
+
const buffer = await browserless.pdf(url)
|
|
118
137
|
|
|
119
138
|
const data = await pdf(buffer)
|
|
120
139
|
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "@browserless/test",
|
|
3
3
|
"description": "A test suite for browserless API",
|
|
4
4
|
"homepage": "https://browserless.js.org",
|
|
5
|
-
"version": "10.
|
|
5
|
+
"version": "10.3.0",
|
|
6
6
|
"main": "index.js",
|
|
7
7
|
"author": {
|
|
8
8
|
"email": "hello@microlink.io",
|
|
@@ -29,12 +29,13 @@
|
|
|
29
29
|
"test"
|
|
30
30
|
],
|
|
31
31
|
"devDependencies": {
|
|
32
|
-
"
|
|
32
|
+
"async-listen": "latest",
|
|
33
|
+
"ava": "5",
|
|
33
34
|
"browserless": "latest",
|
|
34
35
|
"fs-extra": "latest",
|
|
35
36
|
"img-diff-js": "latest",
|
|
36
37
|
"pdf-parse": "latest",
|
|
37
|
-
"puppeteer": "
|
|
38
|
+
"puppeteer": "latest",
|
|
38
39
|
"signal-exit": "latest",
|
|
39
40
|
"temperment": "latest"
|
|
40
41
|
},
|
|
@@ -46,7 +47,7 @@
|
|
|
46
47
|
"index.js"
|
|
47
48
|
],
|
|
48
49
|
"license": "MIT",
|
|
49
|
-
"gitHead": "
|
|
50
|
+
"gitHead": "6de02ac566c97aa7f31a3faaca0a02668884cd9c",
|
|
50
51
|
"scripts": {
|
|
51
52
|
"coverage": "exit 0",
|
|
52
53
|
"test": "exit 0"
|