File tree Expand file tree Collapse file tree 2 files changed +15
-5
lines changed
packages/ui-progress/src/ProgressBar Expand file tree Collapse file tree 2 files changed +15
-5
lines changed Original file line number Diff line number Diff line change @@ -55,6 +55,19 @@ describe('<ProgressBar />', () => {
5555 expect ( progress ) . toHaveAttribute ( 'value' , '30' )
5656 } )
5757
58+ it ( 'should render a progress element with an aria-label attribute' , async ( ) => {
59+ const { container } = render (
60+ < ProgressBar
61+ screenReaderLabel = "Chapters read"
62+ valueMax = { 60 }
63+ valueNow = { 30 }
64+ />
65+ )
66+ const progress = container . querySelector ( 'progress' )
67+
68+ expect ( progress ) . toHaveAttribute ( 'aria-label' , 'Chapters read' )
69+ } )
70+
5871 it ( 'should format the displayed text' , async ( ) => {
5972 const current = 30
6073 const max = 60
Original file line number Diff line number Diff line change @@ -103,10 +103,6 @@ class ProgressBar extends Component<ProgressBarProps> {
103103 typeof formatScreenReaderValue === 'function'
104104 ? formatScreenReaderValue ( { valueNow : valueNow ! , valueMax : valueMax ! } )
105105 : undefined
106- // consolidating the label and aria-valuetext to put in aria-label because
107- // NVDA does not read aria-valuetext: https://github.com/nvaccess/nvda/issues/913
108- // But leaving aria-valuetext because JAWS ignores aria-label
109- const labelAndValueText = `${ screenReaderLabel } ${ valueText } `
110106
111107 const value = callRenderProp ( renderValue , {
112108 valueNow : valueNow ! ,
@@ -126,7 +122,8 @@ class ProgressBar extends Component<ProgressBarProps> {
126122 css = { styles ?. htmlProgress }
127123 max = { valueMax }
128124 value = { valueNow }
129- aria-valuetext = { labelAndValueText }
125+ aria-valuetext = { valueText }
126+ aria-label = { screenReaderLabel }
130127 />
131128
132129 < span css = { styles ?. track } role = "presentation" aria-hidden = "true" >
You can’t perform that action at this time.
0 commit comments