@@ -10,27 +10,53 @@ async function setup(page: Page, exampleName: string) {
10
10
return { driver, getRoot, getProgressState, getProgressValue, getProgressIndicator } ;
11
11
}
12
12
13
- test . describe ( 'Progress Bar usaged' , ( ) => {
14
- test ( `should have root and indicator` , async ( { page } ) => {
13
+ test . describe ( 'Critical functionality' , ( ) => {
14
+ test ( `GIVEN a progress
15
+ WHEN the progress is rendered
16
+ THEN it should have root and indicator` , async ( { page } ) => {
15
17
const { driver : d } = await setup ( page , 'hero' ) ;
16
18
17
19
await expect ( d . getRoot ( ) ) . toBeVisible ( ) ;
18
20
await expect ( d . getProgressIndicator ( ) ) . toBeVisible ( ) ;
19
21
} ) ;
20
22
21
- test ( `should have progress state loading if is not completed` , async ( { page } ) => {
23
+ test ( `GIVEN a progress
24
+ WHEN progress is not completed
25
+ THEN it should have progress state loading` , async ( { page } ) => {
22
26
const { driver : d } = await setup ( page , 'hero' ) ;
23
27
24
- expect ( d . getProgressIndicator ( ) ) . toBeVisible ( ) ;
28
+ await expect ( d . getProgressIndicator ( ) ) . toBeVisible ( ) ;
25
29
expect ( await d . getProgressState ( ) ) . toBe ( 'loading' ) ;
26
30
expect ( await d . getProgressValue ( ) ) . toBe ( '30' ) ;
27
31
} ) ;
32
+ } ) ;
28
33
29
- test ( `should have aria attributes` , async ( { page } ) => {
34
+ test . describe ( 'A11y' , ( ) => {
35
+ test ( `GIVEN a progress
36
+ WHEN the progress is rendered
37
+ THEN it should have aria-valuemin attribute` , async ( { page } ) => {
30
38
const { driver : d } = await setup ( page , 'hero' ) ;
31
39
await expect ( d . getRoot ( ) ) . toHaveAttribute ( 'aria-valuemin' , '0' ) ;
40
+ } ) ;
41
+
42
+ test ( `GIVEN a progress
43
+ WHEN the progress is rendered
44
+ THEN it should have aria-valuemax attribute` , async ( { page } ) => {
45
+ const { driver : d } = await setup ( page , 'hero' ) ;
32
46
await expect ( d . getRoot ( ) ) . toHaveAttribute ( 'aria-valuemax' , '100' ) ;
47
+ } ) ;
48
+
49
+ test ( `GIVEN a progress
50
+ WHEN the progress is rendered
51
+ THEN it should have aria-valuenow attribute` , async ( { page } ) => {
52
+ const { driver : d } = await setup ( page , 'hero' ) ;
33
53
await expect ( d . getRoot ( ) ) . toHaveAttribute ( 'aria-valuenow' , '30' ) ;
54
+ } ) ;
55
+
56
+ test ( `GIVEN a progress
57
+ WHEN the progress is rendered
58
+ THEN it should have aria-valuetext attribute` , async ( { page } ) => {
59
+ const { driver : d } = await setup ( page , 'hero' ) ;
34
60
await expect ( d . getRoot ( ) ) . toHaveAttribute ( 'aria-valuetext' , '30%' ) ;
35
61
} ) ;
36
62
} ) ;
0 commit comments