Match-id-972cb959c025c0611a698aaf9d1e17f175dbd095
This commit is contained in:
commit
d190690474
|
@ -1,8 +1,17 @@
|
|||
import * as Horizon from '@cloudsop/horizon/index.ts';
|
||||
import { getLogUtils } from '../jest/testUtils';
|
||||
import {getLogUtils} from '../jest/testUtils';
|
||||
|
||||
describe('Keyboard Event', () => {
|
||||
const LogUtils = getLogUtils();
|
||||
const getKeyboardEvent = (type, keyCode, code, charCode) => {
|
||||
return new KeyboardEvent(type, {
|
||||
keyCode: keyCode ?? undefined,
|
||||
code: code ?? undefined,
|
||||
charCode: charCode ?? undefined,
|
||||
bubbles: true,
|
||||
cancelable: true,
|
||||
});
|
||||
};
|
||||
|
||||
it('keydown,keypress,keyup的keycode,charcode', () => {
|
||||
const node = Horizon.render(
|
||||
|
@ -16,26 +25,12 @@ describe('Keyboard Event', () => {
|
|||
/>,
|
||||
container,
|
||||
);
|
||||
node.dispatchEvent(
|
||||
new KeyboardEvent('keydown', {
|
||||
keyCode: 50,
|
||||
code: 'Digit2',
|
||||
bubbles: true,
|
||||
cancelable: true,
|
||||
}),
|
||||
);
|
||||
node.dispatchEvent(
|
||||
new KeyboardEvent('keyup', {
|
||||
keyCode: 50,
|
||||
code: 'Digit2',
|
||||
bubbles: true,
|
||||
cancelable: true,
|
||||
}),
|
||||
);
|
||||
node.dispatchEvent(getKeyboardEvent('keydown', 50, 'Digit2'));
|
||||
node.dispatchEvent(getKeyboardEvent('keyup', 50, 'Digit2'));
|
||||
|
||||
expect(LogUtils.getAndClear()).toEqual([
|
||||
'onKeyDown: keycode: 50,charcode: 0',
|
||||
'onKeyUp: keycode: 50,charcode: 0'
|
||||
'onKeyUp: keycode: 50,charcode: 0',
|
||||
]);
|
||||
});
|
||||
|
||||
|
@ -48,17 +43,10 @@ describe('Keyboard Event', () => {
|
|||
/>,
|
||||
container,
|
||||
);
|
||||
node.dispatchEvent(
|
||||
new KeyboardEvent('keypress', {
|
||||
charCode: 50,
|
||||
code: 'Digit2',
|
||||
bubbles: true,
|
||||
cancelable: true,
|
||||
}),
|
||||
);
|
||||
node.dispatchEvent(getKeyboardEvent('keypress', undefined, 'Digit2', 50));
|
||||
|
||||
expect(LogUtils.getAndClear()).toEqual([
|
||||
'onKeyPress: keycode: 0,charcode: 50'
|
||||
'onKeyPress: keycode: 0,charcode: 50',
|
||||
]);
|
||||
});
|
||||
|
||||
|
@ -71,15 +59,9 @@ describe('Keyboard Event', () => {
|
|||
/>,
|
||||
container,
|
||||
);
|
||||
node.dispatchEvent(
|
||||
new KeyboardEvent('keypress', {
|
||||
charCode: 13,
|
||||
bubbles: true,
|
||||
cancelable: true,
|
||||
}),
|
||||
);
|
||||
node.dispatchEvent(getKeyboardEvent('keypress', undefined, undefined, 13));
|
||||
expect(LogUtils.getAndClear()).toEqual([
|
||||
'onKeyPress: keycode: 0,charcode: 13'
|
||||
'onKeyPress: keycode: 0,charcode: 13',
|
||||
]);
|
||||
});
|
||||
|
||||
|
@ -98,22 +80,8 @@ describe('Keyboard Event', () => {
|
|||
/>,
|
||||
container,
|
||||
);
|
||||
node.dispatchEvent(
|
||||
new KeyboardEvent('keydown', {
|
||||
code: 'Digit2',
|
||||
bubbles: true,
|
||||
cancelable: true,
|
||||
}),
|
||||
);
|
||||
|
||||
node.dispatchEvent(
|
||||
new KeyboardEvent('keypress', {
|
||||
keyCode: 50,
|
||||
code: 'Digit2',
|
||||
bubbles: true,
|
||||
cancelable: true,
|
||||
}),
|
||||
);
|
||||
node.dispatchEvent(getKeyboardEvent('keydown', undefined, 'Digit2'));
|
||||
node.dispatchEvent(getKeyboardEvent('keypress', undefined, 'Digit2', 50));
|
||||
|
||||
node.dispatchEvent(
|
||||
new KeyboardEvent('keyup', {
|
||||
|
@ -126,7 +94,7 @@ describe('Keyboard Event', () => {
|
|||
expect(LogUtils.getAndClear()).toEqual([
|
||||
'onKeyDown: code: Digit2',
|
||||
'onKeyPress: code: Digit2',
|
||||
'onKeyUp: code: Digit2'
|
||||
'onKeyUp: code: Digit2',
|
||||
]);
|
||||
});
|
||||
|
||||
|
@ -149,32 +117,14 @@ describe('Keyboard Event', () => {
|
|||
/>,
|
||||
container,
|
||||
);
|
||||
div.dispatchEvent(getKeyboardEvent('keydown', 40));
|
||||
div.dispatchEvent(getKeyboardEvent('keyup', 40));
|
||||
div.dispatchEvent(getKeyboardEvent('keypress', 40));
|
||||
|
||||
div.dispatchEvent(
|
||||
new KeyboardEvent('keydown', {
|
||||
keyCode: 40,
|
||||
bubbles: true,
|
||||
cancelable: true,
|
||||
}),
|
||||
);
|
||||
div.dispatchEvent(
|
||||
new KeyboardEvent('keyup', {
|
||||
keyCode: 40,
|
||||
bubbles: true,
|
||||
cancelable: true,
|
||||
}),
|
||||
);
|
||||
div.dispatchEvent(
|
||||
new KeyboardEvent('keypress', {
|
||||
charCode: 40,
|
||||
bubbles: true,
|
||||
cancelable: true,
|
||||
}),
|
||||
);
|
||||
expect(LogUtils.getAndClear()).toEqual([
|
||||
'keydown handle',
|
||||
'keyup handle',
|
||||
'keypress handle'
|
||||
'keypress handle',
|
||||
]);
|
||||
});
|
||||
});
|
||||
|
|
Loading…
Reference in New Issue