Files
wings88/tests/unit/loading.test.js
T
2026-03-22 11:37:11 +00:00

47 lines
1.3 KiB
JavaScript

/**
* Unit tests for LoadingScreen class
*/
const LoadingScreen = require('../../src/js/screens/loading');
describe('LoadingScreen', () => {
let loadingScreen;
beforeEach(() => {
loadingScreen = new LoadingScreen();
});
describe('constructor', () => {
it('should initialize with progress 0', () => {
expect(loadingScreen.getProgress()).toBe(0);
});
it('should have assets array', () => {
expect(loadingScreen.assets).toBeDefined();
expect(Array.isArray(loadingScreen.assets)).toBe(true);
expect(loadingScreen.assets.length).toBeGreaterThan(0);
});
});
describe('getProgress', () => {
it('should return current progress', () => {
expect(loadingScreen.getProgress()).toBe(0);
// Simulate progress update
loadingScreen.progress = 50;
expect(loadingScreen.getProgress()).toBe(50);
});
});
describe('asset loading', () => {
it('should have expected assets', () => {
expect(loadingScreen.assets).toContain('texture1.png');
expect(loadingScreen.assets).toContain('texture2.png');
expect(loadingScreen.assets).toContain('sound1.mp3');
expect(loadingScreen.assets).toContain('sound2.mp3');
expect(loadingScreen.assets).toContain('model1.obj');
expect(loadingScreen.assets).toContain('model2.obj');
});
});
});