mirror of
https://github.com/alibaba/lowcode-engine.git
synced 2026-01-13 17:48:13 +00:00
72 lines
2.3 KiB
TypeScript
72 lines
2.3 KiB
TypeScript
import '../fixtures/window';
|
|
import flagsCtrl from '../../src/flags';
|
|
import domready from 'domready';
|
|
|
|
jest.mock('domready', () => {
|
|
return (fn) => fn();
|
|
});
|
|
// domready.mockImplementation((fn) => fn());
|
|
|
|
describe('flags 测试', () => {
|
|
it('flags', () => {
|
|
const mockFlagsChange = jest.fn();
|
|
flagsCtrl.flags = [];
|
|
const off = flagsCtrl.onFlagsChange(mockFlagsChange);
|
|
flagsCtrl.add('a');
|
|
expect(mockFlagsChange).toHaveBeenCalledTimes(1);
|
|
off();
|
|
flagsCtrl.add('b');
|
|
expect(mockFlagsChange).toHaveBeenCalledTimes(1);
|
|
|
|
|
|
expect(flagsCtrl.getFlags()).toEqual(['a', 'b']);
|
|
|
|
flagsCtrl.flags = [];
|
|
flagsCtrl.setDragMode(true);
|
|
expect(flagsCtrl.getFlags()).toEqual(['drag-mode']);
|
|
flagsCtrl.setDragMode(false);
|
|
expect(flagsCtrl.getFlags()).toEqual([]);
|
|
|
|
flagsCtrl.setPreviewMode(true);
|
|
expect(flagsCtrl.getFlags()).toEqual(['preview-mode']);
|
|
flagsCtrl.setPreviewMode(false);
|
|
expect(flagsCtrl.getFlags()).toEqual(['design-mode']);
|
|
|
|
flagsCtrl.flags = [];
|
|
flagsCtrl.setHideSlate(true);
|
|
expect(flagsCtrl.getFlags()).toEqual(['hide-slate']);
|
|
flagsCtrl.setHideSlate(false);
|
|
expect(flagsCtrl.getFlags()).toEqual([]);
|
|
|
|
flagsCtrl.flags = [];
|
|
flagsCtrl.setSlateFixedMode(true);
|
|
expect(flagsCtrl.getFlags()).toEqual(['slate-fixed']);
|
|
flagsCtrl.setHideSlate(true);
|
|
expect(flagsCtrl.getFlags()).toEqual(['slate-fixed']);
|
|
flagsCtrl.setSlateFixedMode(false);
|
|
expect(flagsCtrl.getFlags()).toEqual([]);
|
|
|
|
flagsCtrl.flags = [];
|
|
flagsCtrl.setSlateFullMode(true);
|
|
expect(flagsCtrl.getFlags()).toEqual(['slate-full-screen']);
|
|
flagsCtrl.setSlateFullMode(false);
|
|
expect(flagsCtrl.getFlags()).toEqual([]);
|
|
|
|
expect([].slice.apply(document.documentElement.classList)).toEqual(flagsCtrl.getFlags());
|
|
|
|
flagsCtrl.flags = [];
|
|
// setWithShell
|
|
flagsCtrl.setWithShell('shellA');
|
|
expect(flagsCtrl.getFlags()).toEqual(['with-iphone6shell']);
|
|
flagsCtrl.setWithShell('iPhone6');
|
|
expect(flagsCtrl.getFlags()).toEqual(['with-iphone6shell']);
|
|
|
|
flagsCtrl.flags = [];
|
|
// setSimulator
|
|
flagsCtrl.setSimulator('simA');
|
|
expect(flagsCtrl.getFlags()).toEqual(['simulator-simA']);
|
|
flagsCtrl.setSimulator('simB');
|
|
expect(flagsCtrl.getFlags()).toEqual(['simulator-simB']);
|
|
});
|
|
});
|