feat(html): add PlayerElement to createPlayer (#376)

This commit is contained in:
rahim
2026-02-02 22:52:02 +11:00
committed by GitHub
parent 43cf39cbf3
commit 9c8d9cd8ed
9 changed files with 105 additions and 58 deletions
@@ -0,0 +1,34 @@
import { features } from '@videojs/core/dom';
import { describe, expect, it } from 'vitest';
import { createPlayer } from '../create-player';
describe('createPlayer', () => {
it('returns expected exports', () => {
const result = createPlayer({ features: [...features.video] });
expect(result.context).toBeDefined();
expect(result.create).toBeInstanceOf(Function);
expect(result.PlayerController).toBeDefined();
expect(result.PlayerElement).toBeDefined();
expect(result.PlayerMixin).toBeInstanceOf(Function);
expect(result.ProviderMixin).toBeInstanceOf(Function);
expect(result.ContainerMixin).toBeInstanceOf(Function);
});
it('create() returns a store instance', () => {
const { create } = createPlayer({ features: [...features.video] });
const store = create();
expect(store.attach).toBeInstanceOf(Function);
expect(store.subscribe).toBeInstanceOf(Function);
expect(store.destroy).toBeInstanceOf(Function);
});
it('PlayerElement is a valid custom element class', () => {
const { PlayerElement } = createPlayer({ features: [...features.video] });
expect(typeof PlayerElement).toBe('function');
expect(PlayerElement.prototype).toBeDefined();
});
});