aboutsummaryrefslogtreecommitdiff
path: root/test/content/actions/setting.test.ts
diff options
context:
space:
mode:
Diffstat (limited to 'test/content/actions/setting.test.ts')
-rw-r--r--test/content/actions/setting.test.ts35
1 files changed, 35 insertions, 0 deletions
diff --git a/test/content/actions/setting.test.ts b/test/content/actions/setting.test.ts
new file mode 100644
index 0000000..10f6807
--- /dev/null
+++ b/test/content/actions/setting.test.ts
@@ -0,0 +1,35 @@
+import actions from 'content/actions';
+import * as settingActions from 'content/actions/setting';
+
+describe("setting actions", () => {
+ describe("set", () => {
+ it('create SETTING_SET action', () => {
+ let action = settingActions.set({ red: 'apple', yellow: 'banana' });
+ expect(action.type).to.equal(actions.SETTING_SET);
+ expect(action.value.red).to.equal('apple');
+ expect(action.value.yellow).to.equal('banana');
+ expect(action.value.keymaps).to.be.empty;
+ });
+
+ it('converts keymaps', () => {
+ let action = settingActions.set({
+ keymaps: {
+ 'dd': 'remove current tab',
+ 'z<C-A>': 'increment',
+ }
+ });
+ let keymaps = action.value.keymaps;
+ let map = new Map(keymaps);
+ expect(map).to.have.deep.all.keys(
+ [
+ [{ key: 'Esc', shiftKey: false, ctrlKey: false, altKey: false, metaKey: false }],
+ [{ key: '[', shiftKey: false, ctrlKey: true, altKey: false, metaKey: false }],
+ [{ key: 'd', shiftKey: false, ctrlKey: false, altKey: false, metaKey: false },
+ { key: 'd', shiftKey: false, ctrlKey: false, altKey: false, metaKey: false }],
+ [{ key: 'z', shiftKey: false, ctrlKey: false, altKey: false, metaKey: false },
+ { key: 'a', shiftKey: false, ctrlKey: true, altKey: false, metaKey: false }],
+ ]
+ );
+ });
+ });
+});