Skip to content

Adds AV Tests and Caption Functionality - #1796

Open
K8Sewell wants to merge 9 commits into
devfrom
issue-1750-add-av-tests
Open

Adds AV Tests and Caption Functionality#1796
K8Sewell wants to merge 9 commits into
devfrom
issue-1750-add-av-tests

Conversation

@K8Sewell

@K8Sewell K8Sewell commented Jul 2, 2026

Copy link
Copy Markdown
Contributor

Description of what you did:

  • Added tests for AV media
  • Added functionality to read transcripts from cookbook examples

Related Issue

#1750

@vercel

vercel Bot commented Jul 2, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
universalviewer Ready Ready Preview Sep 8, 2026 7:36pm UTC
universalviewer.dev Ready Ready Preview Sep 8, 2026 7:36pm UTC

Request Review

return typeGroup === "audio" || typeGroup === "video";
}

// vtt, srt, csv

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Was unable to find support for csv.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Have added tests that confirm functionality of both vtt and srt.

return false;
}

const captionTypes = new Set<String>(["text/vtt", "text/srt"]);

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@K8Sewell
K8Sewell marked this pull request as ready for review July 2, 2026 21:53
@demiankatz

Copy link
Copy Markdown
Contributor

Thanks, @K8Sewell, this is great! I haven't had a chance to look closely since I'm preparing to leave for my trip and need to choose my battles -- but I'll be happy to look closer when I get back if you want me to. In the meantime, I imagine that @LanieOkorodudu might be a good candidate for reviewing, since she's been more heavily involved in test code lately and probably has some good insights!

Comment thread __tests__/av_tests.js
});
}, 60000);

it("loads the AV manifest into the mediaelement player", async () => {

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@K8Sewell, Thanks for putting this together, Do you think it's worth adding the canvas title displays "Video Example 3", and that the video can actually play, continue for around 10 seconds, and then pause successfully.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@LanieOkorodudu thank you so much for this suggestion! I implemented it in the reintegrate AV PR but forgot to add them here as well. Will get that fixed asap and will re-request your review when they are ready. Thanks again!

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've added a play and pause test to the first AV manifest but to conserve speed of our tests I only included it for that single manifest. If you think I should add it for multiple I can certainly do that. Because the other tests of the other manifests confirm the loading I thought one play/pause expectation was sufficient given the 10 second time expenditure but am happy to defer to what you think is best! Really appreciate your insight!

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Okay we probably leave this one to just play/pause. Thanks for all your work here.

Comment thread __tests__/av_tests.js
});

// Play/pause button.
const playButton = await avPage.$(

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same here, like play for 10 seconds and and pause to confirm the video is actually play for seconds.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fix incoming.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I wasn't sure with the 10 second time expenditure if it should be included for each manifest so I only included one but will happily update for each to have that expectation if you think that is better.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I could also shorten the time to 3 seconds or something like that if you would prefer.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @K8Sewell. yes you are aright 3 sec is okay to confirm the video actually play.

Comment thread __tests__/av_tests.js
});
}, 60000);

it("loads the AV manifest into the AV center panel", async () => {

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Also confirmed that the title has "Preludio e Coro d'introduzione – Bel conforto al mietitore" as it loaded.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you for confirming this! I can add an expectation for this as well.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I ended up adding tests for each manifest's title. Thank you for this suggestion!

@LanieOkorodudu

Copy link
Copy Markdown
Contributor

I really like the approach of creating a separate folder for each component to test. It makes everything much easier to maintain. Thanks! @K8Sewell

@K8Sewell

K8Sewell commented Sep 8, 2026

Copy link
Copy Markdown
Contributor Author

I really like the approach of creating a separate folder for each component to test. It makes everything much easier to maintain. Thanks! @K8Sewell

Happy to! Hopefully this is just the start of adding many more helpful tests. :)

@K8Sewell

K8Sewell commented Sep 8, 2026

Copy link
Copy Markdown
Contributor Author

May be able to close ticket #747 and PR #95 with this work if accepted.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: In testing

Development

Successfully merging this pull request may close these issues.

3 participants