441 lines
25 KiB
TypeScript
441 lines
25 KiB
TypeScript
import {beforeEach, expect, describe, it} from "vitest";
|
|
import cfg_keyboard_example, {SettingInterfaceKeyboard} from "#app/test/cfg_keyboard_example";
|
|
import {
|
|
deleteBind,
|
|
getIconWithPressedButton,
|
|
getIconWithSettingName,
|
|
getKeyAndActionFromCurrentKeysWithSettingName,
|
|
getKeyForSettingName,
|
|
getKeyFromMapping,
|
|
getKeyWithAction,
|
|
reloadCurrentKeys,
|
|
swapCurrentKeys,
|
|
} from "#app/configs/gamepad-utils";
|
|
import {Button} from "#app/enums/buttons";
|
|
|
|
|
|
function deepCopy(config) {
|
|
return JSON.parse(JSON.stringify(config));
|
|
}
|
|
|
|
|
|
describe('Test Keyboard', () => {
|
|
let config;
|
|
beforeEach(() => {
|
|
config = deepCopy(cfg_keyboard_example);
|
|
config.custom = {...config.default}
|
|
config.ogIcons = {...config.icons}
|
|
reloadCurrentKeys(config);
|
|
});
|
|
|
|
it('Check if config is loaded', () => {
|
|
expect(config).not.toBeNull();
|
|
});
|
|
it('Check key for setting name', () => {
|
|
const settingName = SettingInterfaceKeyboard.Button_Left;
|
|
const key = getKeyForSettingName(config, settingName);
|
|
expect(config.custom[key]).toEqual(Button.LEFT);
|
|
});
|
|
it('Check key for Keyboard KeyCode', () => {
|
|
const key = getKeyFromMapping(config, Phaser.Input.Keyboard.KeyCodes.LEFT);
|
|
expect(config.custom[key]).toEqual(Button.LEFT);
|
|
});
|
|
it('Check key for currenly Assigned to action not alt', () => {
|
|
const key = getKeyWithAction(config, Button.LEFT, false);
|
|
expect(key).toEqual('KEY_ARROW_LEFT');
|
|
});
|
|
it('Check key for currenly Assigned to action alt', () => {
|
|
const key = getKeyWithAction(config, Button.LEFT, true);
|
|
expect(key).toEqual('KEY_Q');
|
|
});
|
|
it('Check key for currenly Assigned to setting name', () => {
|
|
const settingName = SettingInterfaceKeyboard.Button_Left;
|
|
const { key } = getKeyAndActionFromCurrentKeysWithSettingName(config, settingName);
|
|
expect(key).toEqual('KEY_ARROW_LEFT');
|
|
});
|
|
it('Check key for currenly Assigned to setting name alt', () => {
|
|
const settingName = SettingInterfaceKeyboard.Alt_Button_Left;
|
|
const { key } = getKeyAndActionFromCurrentKeysWithSettingName(config, settingName);
|
|
expect(key).toEqual('KEY_Q');
|
|
});
|
|
it('Check icon for currenly Assigned to key code', () => {
|
|
const icon = getIconWithPressedButton(config, Phaser.Input.Keyboard.KeyCodes.LEFT);
|
|
expect(icon).toEqual('T_Left_Key_Dark.png');
|
|
});
|
|
it('Check icon for currenly Assigned to key code alt', () => {
|
|
const icon = getIconWithPressedButton(config, Phaser.Input.Keyboard.KeyCodes.Q);
|
|
expect(icon).toEqual('T_Q_Key_Dark.png');
|
|
});
|
|
it('Check icon for currenly Assigned to setting name', () => {
|
|
const settingName = SettingInterfaceKeyboard.Button_Left;
|
|
const icon = getIconWithSettingName(config, settingName);
|
|
expect(icon).toEqual('T_Left_Key_Dark.png');
|
|
});
|
|
it('Check icon for currenly Assigned to setting name alt', () => {
|
|
const settingName = SettingInterfaceKeyboard.Alt_Button_Left;
|
|
const icon = getIconWithSettingName(config, settingName);
|
|
expect(icon).toEqual('T_Q_Key_Dark.png');
|
|
});
|
|
|
|
|
|
it('Check if current keys return the same', () => {
|
|
const settingNameA = SettingInterfaceKeyboard.Button_Left;
|
|
const keyA = getKeyForSettingName(config, settingNameA);
|
|
const action = config.custom[keyA];
|
|
expect(keyA).toEqual("KEY_ARROW_LEFT");
|
|
expect(action).toEqual(Button.LEFT);
|
|
|
|
expect(config.currentKeys[settingNameA].key).toEqual(keyA);
|
|
expect(config.currentKeys[settingNameA].action).toEqual(action);
|
|
});
|
|
|
|
it('Check if new swap is working', () => {
|
|
const settingNameA = SettingInterfaceKeyboard.Button_Left;
|
|
swapCurrentKeys(config, settingNameA, Phaser.Input.Keyboard.KeyCodes.RIGHT);
|
|
expect(config.currentKeys[settingNameA].key).toEqual("KEY_ARROW_LEFT");
|
|
expect(config.currentKeys[settingNameA].action).toEqual(Button.RIGHT);
|
|
});
|
|
|
|
it('Check if new double swap is working', () => {
|
|
const settingNameA = SettingInterfaceKeyboard.Button_Left;
|
|
|
|
swapCurrentKeys(config, settingNameA, Phaser.Input.Keyboard.KeyCodes.RIGHT);
|
|
expect(config.currentKeys[settingNameA].key).toEqual("KEY_ARROW_LEFT");
|
|
expect(config.currentKeys[settingNameA].action).toEqual(Button.RIGHT);
|
|
|
|
swapCurrentKeys(config, settingNameA, Phaser.Input.Keyboard.KeyCodes.UP);
|
|
expect(config.currentKeys[settingNameA].key).toEqual("KEY_ARROW_LEFT");
|
|
expect(config.currentKeys[settingNameA].action).toEqual(Button.UP);
|
|
});
|
|
|
|
it('Check if new triple swap is working', () => {
|
|
const settingNameA = SettingInterfaceKeyboard.Button_Left;
|
|
const settingNameB = SettingInterfaceKeyboard.Button_Action;
|
|
const settingNameC = SettingInterfaceKeyboard.Button_Right;
|
|
const settingNameD = SettingInterfaceKeyboard.Button_Up;
|
|
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Button_Left].key).toEqual("KEY_ARROW_LEFT");
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Button_Left].action).toEqual(Button.LEFT);
|
|
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Button_Action].key).toEqual("KEY_SPACE");
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Button_Action].action).toEqual(Button.ACTION);
|
|
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Button_Right].key).toEqual("KEY_ARROW_RIGHT");
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Button_Right].action).toEqual(Button.RIGHT);
|
|
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Button_Up].key).toEqual("KEY_ARROW_UP");
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Button_Up].action).toEqual(Button.UP);
|
|
|
|
let iconA = getIconWithSettingName(config, settingNameA);
|
|
let iconB = getIconWithSettingName(config, settingNameB);
|
|
let iconC = getIconWithSettingName(config, settingNameC);
|
|
let iconD = getIconWithSettingName(config, settingNameD);
|
|
expect(iconA).toEqual('T_Left_Key_Dark.png');
|
|
expect(iconB).toEqual('T_Space_Key_Dark.png');
|
|
expect(iconC).toEqual('T_Right_Key_Dark.png');
|
|
expect(iconD).toEqual('T_Up_Key_Dark.png');
|
|
|
|
swapCurrentKeys(config, SettingInterfaceKeyboard.Button_Left, Phaser.Input.Keyboard.KeyCodes.RIGHT); // left->RIGHT, right->LEFT
|
|
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Button_Left].key).toEqual("KEY_ARROW_LEFT");
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Button_Left].action).toEqual(Button.RIGHT);
|
|
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Button_Action].key).toEqual("KEY_SPACE");
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Button_Action].action).toEqual(Button.ACTION);
|
|
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Button_Right].key).toEqual("KEY_ARROW_RIGHT");
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Button_Right].action).toEqual(Button.LEFT);
|
|
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Button_Up].key).toEqual("KEY_ARROW_UP");
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Button_Up].action).toEqual(Button.UP);
|
|
|
|
iconA = getIconWithSettingName(config, settingNameA);
|
|
iconB = getIconWithSettingName(config, settingNameB);
|
|
iconC = getIconWithSettingName(config, settingNameC);
|
|
iconD = getIconWithSettingName(config, settingNameD);
|
|
expect(iconA).toEqual('T_Right_Key_Dark.png');
|
|
expect(iconB).toEqual('T_Space_Key_Dark.png');
|
|
expect(iconC).toEqual('T_Left_Key_Dark.png');
|
|
expect(iconD).toEqual('T_Up_Key_Dark.png');
|
|
|
|
swapCurrentKeys(config, SettingInterfaceKeyboard.Button_Action, Phaser.Input.Keyboard.KeyCodes.UP); // action->UP
|
|
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Button_Left].key).toEqual("KEY_ARROW_LEFT");
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Button_Left].action).toEqual(Button.RIGHT);
|
|
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Button_Action].key).toEqual("KEY_SPACE");
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Button_Action].action).toEqual(Button.UP)
|
|
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Button_Right].key).toEqual("KEY_ARROW_RIGHT");
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Button_Right].action).toEqual(Button.LEFT);
|
|
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Button_Up].key).toEqual("KEY_ARROW_UP");
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Button_Up].action).toEqual(Button.ACTION);
|
|
|
|
iconA = getIconWithSettingName(config, settingNameA);
|
|
iconB = getIconWithSettingName(config, settingNameB);
|
|
iconC = getIconWithSettingName(config, settingNameC);
|
|
iconD = getIconWithSettingName(config, settingNameD);
|
|
expect(iconA).toEqual('T_Right_Key_Dark.png');
|
|
expect(iconB).toEqual('T_Up_Key_Dark.png');
|
|
expect(iconC).toEqual('T_Left_Key_Dark.png');
|
|
expect(iconD).toEqual('T_Space_Key_Dark.png');
|
|
|
|
swapCurrentKeys(config, SettingInterfaceKeyboard.Button_Right, Phaser.Input.Keyboard.KeyCodes.UP); // right->UP, action->LEFT
|
|
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Button_Left].key).toEqual("KEY_ARROW_LEFT");
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Button_Left].action).toEqual(Button.RIGHT);
|
|
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Button_Action].key).toEqual("KEY_SPACE");
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Button_Action].action).toEqual(Button.UP)
|
|
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Button_Right].key).toEqual("KEY_ARROW_RIGHT");
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Button_Right].action).toEqual(Button.ACTION);
|
|
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Button_Up].key).toEqual("KEY_ARROW_UP");
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Button_Up].action).toEqual(Button.LEFT);
|
|
|
|
iconA = getIconWithSettingName(config, settingNameA);
|
|
iconB = getIconWithSettingName(config, settingNameB);
|
|
iconC = getIconWithSettingName(config, settingNameC);
|
|
iconD = getIconWithSettingName(config, settingNameD);
|
|
expect(iconA).toEqual('T_Right_Key_Dark.png');
|
|
expect(iconB).toEqual('T_Up_Key_Dark.png');
|
|
expect(iconC).toEqual('T_Space_Key_Dark.png');
|
|
expect(iconD).toEqual('T_Left_Key_Dark.png');
|
|
});
|
|
|
|
|
|
it('Swap alt with another main', () => {
|
|
const settingNameA = SettingInterfaceKeyboard.Button_Left;
|
|
const settingNameB = SettingInterfaceKeyboard.Alt_Button_Right;
|
|
const settingNameC = SettingInterfaceKeyboard.Button_Up;
|
|
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Button_Left].key).toEqual("KEY_ARROW_LEFT");
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Button_Left].action).toEqual(Button.LEFT);
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Button_Left].icon).toEqual("T_Left_Key_Dark.png");
|
|
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Right].key).toEqual("KEY_D");
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Right].action).toEqual(Button.RIGHT);
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Right].icon).toEqual("T_D_Key_Dark.png");
|
|
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Button_Up].key).toEqual("KEY_ARROW_UP");
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Button_Up].action).toEqual(Button.UP);
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Button_Up].icon).toEqual("T_Up_Key_Dark.png");
|
|
|
|
swapCurrentKeys(config, SettingInterfaceKeyboard.Button_Left, Phaser.Input.Keyboard.KeyCodes.D);
|
|
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Button_Left].key).toEqual("KEY_ARROW_LEFT");
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Button_Left].action).toEqual(Button.RIGHT);
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Button_Left].icon).toEqual("T_D_Key_Dark.png");
|
|
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Left].key).toEqual("KEY_Q");
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Left].action).toEqual(Button.LEFT);
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Left].icon).toEqual("T_Q_Key_Dark.png");
|
|
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Button_Right].key).toEqual("KEY_ARROW_RIGHT");
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Button_Right].action).toEqual(Button.RIGHT);
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Button_Right].icon).toEqual("T_Right_Key_Dark.png");
|
|
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Right].key).toEqual("KEY_D");
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Right].action).toEqual(Button.LEFT);
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Right].icon).toEqual("T_Left_Key_Dark.png");
|
|
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Button_Up].key).toEqual("KEY_ARROW_UP");
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Button_Up].action).toEqual(Button.UP);
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Button_Up].icon).toEqual("T_Up_Key_Dark.png");
|
|
|
|
swapCurrentKeys(config, SettingInterfaceKeyboard.Button_Up, Phaser.Input.Keyboard.KeyCodes.LEFT);
|
|
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Button_Left].key).toEqual("KEY_ARROW_LEFT");
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Button_Left].action).toEqual(Button.UP);
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Button_Left].icon).toEqual("T_Up_Key_Dark.png");
|
|
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Left].key).toEqual("KEY_Q");
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Left].action).toEqual(Button.LEFT);
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Left].icon).toEqual("T_Q_Key_Dark.png");
|
|
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Button_Right].key).toEqual("KEY_ARROW_RIGHT");
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Button_Right].action).toEqual(Button.RIGHT);
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Button_Right].icon).toEqual("T_Right_Key_Dark.png");
|
|
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Right].key).toEqual("KEY_D");
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Right].action).toEqual(Button.LEFT);
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Right].icon).toEqual("T_Left_Key_Dark.png");
|
|
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Button_Up].key).toEqual("KEY_ARROW_UP");
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Button_Up].action).toEqual(Button.RIGHT);
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Button_Up].icon).toEqual("T_D_Key_Dark.png");
|
|
})
|
|
|
|
|
|
it('Swap alt with a key not binded yet', () => {
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Up].key).toEqual("KEY_Z");
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Up].action).toEqual(Button.UP);
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Up].icon).toEqual("T_Z_Key_Dark.png");
|
|
|
|
swapCurrentKeys(config, SettingInterfaceKeyboard.Alt_Button_Up, Phaser.Input.Keyboard.KeyCodes.B);
|
|
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Up].key).toEqual("KEY_Z");
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Up].action).toEqual(Button.UP);
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Up].icon).toEqual("T_B_Key_Dark.png");
|
|
})
|
|
|
|
|
|
it('Delete bind', () => {
|
|
const settingNameA = SettingInterfaceKeyboard.Alt_Button_Up;
|
|
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Up].key).toEqual("KEY_Z");
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Up].action).toEqual(Button.UP);
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Up].icon).toEqual("T_Z_Key_Dark.png");
|
|
deleteBind(config, settingNameA)
|
|
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Up].key).toEqual("KEY_Z");
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Up].action).toEqual(-1);
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Up].icon).toEqual(undefined);
|
|
})
|
|
|
|
|
|
it('Delete bind then asign not existing button', () => {
|
|
const settingNameA = SettingInterfaceKeyboard.Alt_Button_Up;
|
|
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Up].key).toEqual("KEY_Z");
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Up].action).toEqual(Button.UP);
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Up].icon).toEqual("T_Z_Key_Dark.png");
|
|
deleteBind(config, settingNameA)
|
|
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Up].key).toEqual("KEY_Z");
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Up].action).toEqual(-1);
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Up].icon).toEqual(undefined);
|
|
expect(config.custom["KEY_Z"]).toEqual(-1);
|
|
|
|
swapCurrentKeys(config, SettingInterfaceKeyboard.Alt_Button_Up, Phaser.Input.Keyboard.KeyCodes.B);
|
|
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Up].key).toEqual("KEY_Z");
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Up].action).toEqual(Button.UP);
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Up].icon).toEqual("T_B_Key_Dark.png");
|
|
expect(config.custom["KEY_B"]).toEqual(Button.UP);
|
|
expect(config.custom["KEY_Z"]).toEqual(-1);
|
|
})
|
|
|
|
|
|
it('swap bind, then Delete bind then assign bind', () => {
|
|
const settingNameA = SettingInterfaceKeyboard.Alt_Button_Up;
|
|
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Up].key).toEqual("KEY_Z");
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Up].action).toEqual(Button.UP);
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Up].icon).toEqual("T_Z_Key_Dark.png");
|
|
expect(config.custom["KEY_Z"]).toEqual(Button.UP);
|
|
|
|
swapCurrentKeys(config, SettingInterfaceKeyboard.Alt_Button_Up, Phaser.Input.Keyboard.KeyCodes.B);
|
|
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Up].key).toEqual("KEY_Z");
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Up].action).toEqual(Button.UP);
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Up].icon).toEqual("T_B_Key_Dark.png");
|
|
expect(config.custom["KEY_B"]).toEqual(Button.UP);
|
|
expect(config.custom["KEY_Z"]).toEqual(-1);
|
|
|
|
deleteBind(config, settingNameA);
|
|
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Up].key).toEqual("KEY_Z");
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Up].action).toEqual(-1);
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Up].icon).toEqual(undefined);
|
|
expect(config.custom["KEY_Z"]).toEqual(-1);
|
|
|
|
swapCurrentKeys(config, SettingInterfaceKeyboard.Alt_Button_Up, Phaser.Input.Keyboard.KeyCodes.B);
|
|
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Up].key).toEqual("KEY_Z");
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Up].action).toEqual(Button.UP);
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Up].icon).toEqual("T_B_Key_Dark.png");
|
|
expect(config.custom["KEY_B"]).toEqual(Button.UP);
|
|
})
|
|
|
|
|
|
it('Delete bind then asign not already existing button', () => {
|
|
const settingNameA = SettingInterfaceKeyboard.Alt_Button_Up;
|
|
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Up].key).toEqual("KEY_Z");
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Up].action).toEqual(Button.UP);
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Up].icon).toEqual("T_Z_Key_Dark.png");
|
|
expect(config.custom["KEY_Z"]).toEqual(Button.UP);
|
|
deleteBind(config, settingNameA)
|
|
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Up].key).toEqual("KEY_Z");
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Up].action).toEqual(-1);
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Up].icon).toEqual(undefined);
|
|
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Cycle_Ability].key).toEqual("KEY_L");
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Cycle_Ability].action).toEqual(Button.CYCLE_ABILITY);
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Cycle_Ability].icon).toEqual("T_L_Key_Dark.png");
|
|
expect(config.custom["KEY_Z"]).toEqual(-1);
|
|
expect(config.custom["KEY_L"]).toEqual(Button.CYCLE_ABILITY);
|
|
|
|
swapCurrentKeys(config, SettingInterfaceKeyboard.Alt_Button_Up, Phaser.Input.Keyboard.KeyCodes.L);
|
|
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Up].key).toEqual("KEY_Z");
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Up].action).toEqual(Button.UP);
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Up].icon).toEqual("T_L_Key_Dark.png");
|
|
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Cycle_Ability].key).toEqual("KEY_L");
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Cycle_Ability].action).toEqual(-1);
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Cycle_Ability].icon).toEqual(undefined);
|
|
|
|
expect(config.custom["KEY_Z"]).toEqual(-1);
|
|
expect(config.custom["KEY_L"]).toEqual(Button.UP);
|
|
})
|
|
|
|
|
|
it('Custom scenario 2, regenerate customs when init key is not from setting', () => {
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Up].key).toEqual("KEY_Z");
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Up].action).toEqual(Button.UP);
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Up].icon).toEqual("T_Z_Key_Dark.png");
|
|
expect(config.custom["KEY_Z"]).toEqual(Button.UP);
|
|
|
|
swapCurrentKeys(config, SettingInterfaceKeyboard.Alt_Button_Up, Phaser.Input.Keyboard.KeyCodes.T);
|
|
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Up].key).toEqual("KEY_Z");
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Up].action).toEqual(Button.UP);
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Up].icon).toEqual("T_T_Key_Dark.png");
|
|
|
|
expect(config.custom["KEY_Z"]).toEqual(-1);
|
|
expect(config.custom["KEY_T"]).toEqual(Button.UP);
|
|
})
|
|
|
|
|
|
it('change alt to unknown touch than another one alt with another unknown touch', () => {
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Up].key).toEqual("KEY_Z");
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Up].action).toEqual(Button.UP);
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Up].icon).toEqual("T_Z_Key_Dark.png");
|
|
expect(config.custom["KEY_Z"]).toEqual(Button.UP);
|
|
|
|
swapCurrentKeys(config, SettingInterfaceKeyboard.Alt_Button_Up, Phaser.Input.Keyboard.KeyCodes.T);
|
|
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Up].key).toEqual("KEY_Z");
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Up].action).toEqual(Button.UP);
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Up].icon).toEqual("T_T_Key_Dark.png");
|
|
|
|
expect(config.custom["KEY_Z"]).toEqual(-1);
|
|
expect(config.custom["KEY_T"]).toEqual(Button.UP);
|
|
|
|
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Down].key).toEqual("KEY_S");
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Down].action).toEqual(Button.DOWN);
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Down].icon).toEqual("T_S_Key_Dark.png");
|
|
|
|
swapCurrentKeys(config, SettingInterfaceKeyboard.Alt_Button_Down, Phaser.Input.Keyboard.KeyCodes.U);
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Down].key).toEqual("KEY_S");
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Down].action).toEqual(Button.DOWN);
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Down].icon).toEqual("T_U_Key_Dark.png");
|
|
|
|
|
|
expect(config.custom["KEY_S"]).toEqual(-1);
|
|
expect(config.custom["KEY_U"]).toEqual(Button.DOWN);
|
|
expect(config.custom["KEY_Z"]).toEqual(-1);
|
|
expect(config.custom["KEY_T"]).toEqual(Button.UP);
|
|
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Up].key).toEqual("KEY_Z");
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Up].action).toEqual(Button.UP);
|
|
expect(config.currentKeys[SettingInterfaceKeyboard.Alt_Button_Up].icon).toEqual("T_T_Key_Dark.png");
|
|
})
|
|
|
|
}); |