Skip to content

Commit

Permalink
Add sleep
Browse files Browse the repository at this point in the history
  • Loading branch information
compulim committed Oct 18, 2019
1 parent 238c4da commit 313f787
Showing 1 changed file with 10 additions and 4 deletions.
14 changes: 10 additions & 4 deletions __tests__/setup/conditions/mediaBuffered.js
Original file line number Diff line number Diff line change
@@ -1,13 +1,19 @@
import { Condition } from 'selenium-webdriver';

export default function mediaBuffered(mediaElement) {
return new Condition('for audio to finish loading', driver =>
driver.executeScript(mediaElement => {
return new Condition('for audio to finish buffering', async driver => {
const result = await driver.executeScript(mediaElement => {
return (
mediaElement.readyState === HTMLMediaElement.HAVE_ENOUGH_DATA &&
mediaElement.buffered.length &&
mediaElement.buffered.end(0) === mediaElement.duration
);
}, mediaElement)
);
}, mediaElement);

// TODO: If the result is positive, audio finished buffering, we still need to wait for an unknown time to refresh the UI.
// Will be great if we can remove this sleep.
result && (await driver.sleep(2000));

return result;
});
}

0 comments on commit 313f787

Please sign in to comment.