 825 



** Test slider accessibility attributes
RUN(sliderAXObject = accessibilityController.focusedElement)
EXPECTED (sliderAXObject.minValue == '0') OK
EXPECTED (sliderAXObject.maxValue == '100') OK
EXPECTED (sliderAXObject.childrenCount == '0') OK
EXPECTED (sliderAXObject.role == 'AXRole: AXSlider') OK

** Increment the slider, test slider value and div set on 'update' event
RUN(sliderAXObject.increment())
EXPECTED (sliderInput.value == '55') OK
EXPECTED (valueDiv.innerText == '55') OK

** Decrement the slider, test slider value and div set on 'update' event
RUN(sliderInput.value = 22)
RUN(sliderAXObject.decrement())
EXPECTED (sliderInput.value == '17') OK
EXPECTED (valueDiv.innerText == '17') OK

** Change slider range
RUN(sliderInput.setAttribute('max', 1000))
RUN(sliderInput.setAttribute('min', 500))
EXPECTED (sliderAXObject.minValue == '500') OK
EXPECTED (sliderAXObject.maxValue == '1000') OK

** Re-test incrementing the slider
RUN(sliderInput.value = 600)
RUN(sliderAXObject.increment())
EXPECTED (sliderInput.value == '625') OK
EXPECTED (valueDiv.innerText == '625') OK

** Re-test decrementing the slider
RUN(sliderInput.value = 850)
RUN(sliderAXObject.decrement())
EXPECTED (sliderInput.value == '825') OK
EXPECTED (valueDiv.innerText == '825') OK

