@@ -19,36 +19,74 @@ describe('Split panel: Header slots', () => {
19
19
} ) ;
20
20
21
21
describeEachAppLayout ( { sizes : [ 'desktop' , 'mobile' ] } , ( ) => {
22
- test ( 'renders headerActions' , ( ) => {
23
- const { wrapper } = renderSplitPanel ( {
24
- props : { headerActions : < button > Action</ button > } ,
22
+ describe ( 'with the panel open' , ( ) => {
23
+ test ( 'renders headerBefore' , ( ) => {
24
+ const { wrapper } = renderSplitPanel ( {
25
+ props : { headerBefore : < span > Before</ span > } ,
26
+ } ) ;
27
+ expect ( wrapper ! . findHeaderBefore ( ) ) . not . toBeNull ( ) ;
28
+ expect ( wrapper ! . findHeaderBefore ( ) ! . getElement ( ) ) . toHaveTextContent ( 'Before' ) ;
25
29
} ) ;
26
- expect ( wrapper ! . findHeaderActions ( ) ) . not . toBeNull ( ) ;
27
- expect ( wrapper ! . findHeaderActions ( ) ! . getElement ( ) ) . toHaveTextContent ( 'Action' ) ;
28
- } ) ;
29
30
30
- test ( 'renders headerBefore' , ( ) => {
31
- const { wrapper } = renderSplitPanel ( {
32
- props : { headerBefore : < span > Before</ span > } ,
31
+ test ( 'renders headerInfo' , ( ) => {
32
+ const { wrapper } = renderSplitPanel ( {
33
+ props : { headerInfo : < span > Info</ span > } ,
34
+ } ) ;
35
+ expect ( wrapper ! . findHeaderInfo ( ) ) . not . toBeNull ( ) ;
36
+ expect ( wrapper ! . findHeaderInfo ( ) ! . getElement ( ) ) . toHaveTextContent ( 'Info' ) ;
33
37
} ) ;
34
- expect ( wrapper ! . findHeaderBefore ( ) ) . not . toBeNull ( ) ;
35
- expect ( wrapper ! . findHeaderBefore ( ) ! . getElement ( ) ) . toHaveTextContent ( 'Before' ) ;
36
- } ) ;
37
38
38
- test ( 'renders headerDescription' , ( ) => {
39
- const { wrapper } = renderSplitPanel ( {
40
- props : { headerDescription : 'Header description' } ,
39
+ test ( 'renders headerActions' , ( ) => {
40
+ const { wrapper } = renderSplitPanel ( {
41
+ props : { headerActions : < button > Action</ button > } ,
42
+ } ) ;
43
+ expect ( wrapper ! . findHeaderActions ( ) ) . not . toBeNull ( ) ;
44
+ expect ( wrapper ! . findHeaderActions ( ) ! . getElement ( ) ) . toHaveTextContent ( 'Action' ) ;
45
+ } ) ;
46
+
47
+ test ( 'renders headerDescription' , ( ) => {
48
+ const { wrapper } = renderSplitPanel ( {
49
+ props : { headerDescription : 'Header description' } ,
50
+ } ) ;
51
+ expect ( wrapper ! . findHeaderDescription ( ) ) . not . toBeNull ( ) ;
52
+ expect ( wrapper ! . findHeaderDescription ( ) ! . getElement ( ) ) . toHaveTextContent ( 'Header description' ) ;
41
53
} ) ;
42
- expect ( wrapper ! . findHeaderDescription ( ) ) . not . toBeNull ( ) ;
43
- expect ( wrapper ! . findHeaderDescription ( ) ! . getElement ( ) ) . toHaveTextContent ( 'Header description' ) ;
44
54
} ) ;
45
55
46
- test ( 'renders headerInfo' , ( ) => {
47
- const { wrapper } = renderSplitPanel ( {
48
- props : { headerInfo : < span > Info</ span > } ,
56
+ describe ( 'with the panel closed' , ( ) => {
57
+ test ( 'renders headerBefore' , ( ) => {
58
+ const { wrapper } = renderSplitPanel ( {
59
+ props : { headerBefore : < span > Before</ span > } ,
60
+ contextProps : { isOpen : false } ,
61
+ } ) ;
62
+ expect ( wrapper ! . findHeaderBefore ( ) ) . not . toBeNull ( ) ;
63
+ expect ( wrapper ! . findHeaderBefore ( ) ! . getElement ( ) ) . toHaveTextContent ( 'Before' ) ;
64
+ } ) ;
65
+
66
+ test ( 'renders headerInfo' , ( ) => {
67
+ const { wrapper } = renderSplitPanel ( {
68
+ props : { headerInfo : < span > Info</ span > } ,
69
+ contextProps : { isOpen : false } ,
70
+ } ) ;
71
+ expect ( wrapper ! . findHeaderInfo ( ) ) . not . toBeNull ( ) ;
72
+ expect ( wrapper ! . findHeaderInfo ( ) ! . getElement ( ) ) . toHaveTextContent ( 'Info' ) ;
73
+ } ) ;
74
+
75
+ test ( 'does not render headerActions' , ( ) => {
76
+ const { wrapper } = renderSplitPanel ( {
77
+ props : { headerActions : < button > Action</ button > } ,
78
+ contextProps : { isOpen : false } ,
79
+ } ) ;
80
+ expect ( wrapper ! . findHeaderActions ( ) ) . toBeNull ( ) ;
81
+ } ) ;
82
+
83
+ test ( 'does not render headerDescription' , ( ) => {
84
+ const { wrapper } = renderSplitPanel ( {
85
+ props : { headerDescription : 'Header description' } ,
86
+ contextProps : { isOpen : false } ,
87
+ } ) ;
88
+ expect ( wrapper ! . findHeaderDescription ( ) ) . toBeNull ( ) ;
49
89
} ) ;
50
- expect ( wrapper ! . findHeaderInfo ( ) ) . not . toBeNull ( ) ;
51
- expect ( wrapper ! . findHeaderInfo ( ) ! . getElement ( ) ) . toHaveTextContent ( 'Info' ) ;
52
90
} ) ;
53
91
54
92
test ( 'does not render header properties when not provided' , ( ) => {
0 commit comments