-
Notifications
You must be signed in to change notification settings - Fork 40
/
serialize-image-srcset.test.js
51 lines (40 loc) · 1.82 KB
/
serialize-image-srcset.test.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
import { withExample, platforms } from './helpers';
import { loadAllSrcsetLinks } from '@percy/dom';
describe('loadAllSrcsetLinks', () => {
let imgTags;
platforms.forEach((platform) => {
it(`${platform}: capture url from img srcset`, async () => {
withExample(`
<img srcset="base/test/assets/example.webp, base/test/assets/example.png 100px" />
`);
imgTags = loadAllSrcsetLinks();
expect(imgTags.map(s => s.src)).toEqual(['http://localhost:9876/base/test/assets/example.webp', 'http://localhost:9876/base/test/assets/example.png']);
});
it(`${platform}: capture url from source of picture`, async () => {
withExample(`
<picture>
<source srcset='//locahost:9876/base/test/assets/example.webp, //localhost:9876/base/test/assets/example.png 2x' />
<source srcset='//locahost:9876/base/test/assets/example.jpeg 100px, //locahost:9876/base/test/assets/example1.jpeg 200px' />
</picture>
`);
imgTags = loadAllSrcsetLinks();
expect(imgTags.map(s => s.src)).toEqual([
'http://locahost:9876/base/test/assets/example.webp',
'http://localhost:9876/base/test/assets/example.png',
'http://locahost:9876/base/test/assets/example.jpeg',
'http://locahost:9876/base/test/assets/example1.jpeg'
]);
});
it(`${platform}: srcset inside shadowroot`, () => {
withExample(`
<img srcset="/base/test/assets/example.webp, /base/test/assets/example.png 100px, /base/test/assets/example1.png 2x" />
`, { withShadow: true });
imgTags = loadAllSrcsetLinks();
expect(imgTags.map(s => s.src)).toEqual([
'http://localhost:9876/base/test/assets/example.webp',
'http://localhost:9876/base/test/assets/example.png',
'http://localhost:9876/base/test/assets/example1.png'
]);
});
});
});