1
- import { describe , expect , test } from 'vitest'
1
+ import { beforeEach , describe , expect , test } from 'vitest'
2
2
import { page } from '@vitest/browser/context'
3
3
import { createNode } from '#src/createNode'
4
4
import '../src/button.css'
5
5
6
6
describe ( 'dom related activity' , ( ) => {
7
- test ( 'renders div' , async ( ) => {
7
+ beforeEach ( ( ) => {
8
8
document . body . style . background = '#f3f3f3'
9
- const wrapper = document . createElement ( 'div' )
10
- wrapper . className = 'wrapper'
11
- document . body . appendChild ( wrapper )
9
+ document . body . replaceChildren ( )
10
+ } )
11
+
12
+ test ( 'renders div' , async ( ) => {
13
+ const wrapper = createWrapper ( )
12
14
const div = createNode ( )
13
15
wrapper . appendChild ( div )
16
+
14
17
await expect . element ( div ) . toHaveTextContent ( 'Hello World!' )
15
18
const screenshotPath = await page . screenshot ( {
16
19
element : wrapper ,
@@ -19,4 +22,27 @@ describe('dom related activity', () => {
19
22
/ _ _ s c r e e n s h o t s _ _ \/ d o m .t e s t .t s \/ d o m - r e l a t e d - a c t i v i t y - r e n d e r s - d i v - 1 .p n g / ,
20
23
)
21
24
} )
25
+
26
+ test ( 'resolves base64 screenshot' , async ( ) => {
27
+ const wrapper = createWrapper ( )
28
+ const div = createNode ( )
29
+ wrapper . appendChild ( div )
30
+
31
+ const { path, base64 } = await page . screenshot ( {
32
+ element : wrapper ,
33
+ base64 : true ,
34
+ } )
35
+ expect ( path ) . toMatch (
36
+ / _ _ s c r e e n s h o t s _ _ \/ d o m .t e s t .t s \/ d o m - r e l a t e d - a c t i v i t y - r e s o l v e s - b a s e 6 4 - s c r e e n s h o t - 1 .p n g / ,
37
+ )
38
+ expect ( base64 ) . toBeTypeOf ( 'string' )
39
+ } )
22
40
} )
41
+
42
+ function createWrapper ( ) {
43
+ document . body . style . background = '#f3f3f3'
44
+ const wrapper = document . createElement ( 'div' )
45
+ wrapper . className = 'wrapper'
46
+ document . body . appendChild ( wrapper )
47
+ return wrapper
48
+ }
0 commit comments