mirror of
https://github.com/coderaiser/cloudcmd.git
synced 2026-07-18 00:47:01 +00:00
feature: client: key: view: get rid of mock-require
This commit is contained in:
parent
6fe61b775b
commit
3c1a82e702
2 changed files with 26 additions and 14 deletions
|
|
@ -8,6 +8,7 @@ const {
|
|||
setCurrent,
|
||||
selectFileNotParent,
|
||||
} = require('./set-current');
|
||||
const {promptNewFile} = require('../../dom');
|
||||
|
||||
module.exports = (key, event, overrides = {}) => {
|
||||
const defaults = {
|
||||
|
|
@ -36,14 +37,22 @@ const getOperations = (event, deps) => {
|
|||
getCurrentName,
|
||||
prompt = globalThis.DOM.Dialog.prompt,
|
||||
preventDefault = event?.preventDefault?.bind(event),
|
||||
stopImmediatePropagation = event?.preventDefault?.bind(event),
|
||||
promptNewFile = DOM.promptNewFile,
|
||||
|
||||
toggleSelectedFile,
|
||||
Buffer = {},
|
||||
createFindNext = _createFindNext,
|
||||
createFindPrevious = _createFindPrevious,
|
||||
createMakeFile = _createMakeFile,
|
||||
} = deps;
|
||||
|
||||
return {
|
||||
makeFile: createMakeFile({
|
||||
promptNewFile,
|
||||
preventDefault,
|
||||
stopImmediatePropagation,
|
||||
}),
|
||||
findNext: createFindNext({
|
||||
setCurrentByName,
|
||||
}),
|
||||
|
|
@ -62,12 +71,6 @@ const getOperations = (event, deps) => {
|
|||
DOM.promptNewDir();
|
||||
},
|
||||
|
||||
makeFile: () => {
|
||||
event.stopImmediatePropagation();
|
||||
event.preventDefault();
|
||||
DOM.promptNewFile();
|
||||
},
|
||||
|
||||
terminal: () => {
|
||||
CloudCmd.Terminal.show();
|
||||
},
|
||||
|
|
@ -144,3 +147,15 @@ const _createFindNext = (overrides = {}) => () => {
|
|||
|
||||
setCurrentByName(name);
|
||||
};
|
||||
|
||||
const _createMakeFile = (overrides = {}) => () => {
|
||||
const {
|
||||
promptNewFile,
|
||||
stopImmediatePropagation,
|
||||
preventDefault,
|
||||
} = overrides;
|
||||
|
||||
stopImmediatePropagation();
|
||||
preventDefault();
|
||||
promptNewFile();
|
||||
};
|
||||
|
|
|
|||
|
|
@ -615,12 +615,7 @@ test('cloudcmd: client: key: make directory', async (t) => {
|
|||
});
|
||||
|
||||
test('cloudcmd: client: key: make file', (t) => {
|
||||
const vim = reRequire(pathVim);
|
||||
const {DOM} = globalThis;
|
||||
|
||||
assign(DOM, {
|
||||
promptNewFile: stub(),
|
||||
});
|
||||
const promptNewFile = stub();
|
||||
|
||||
const event = {
|
||||
stopImmediatePropagation: stub(),
|
||||
|
|
@ -628,9 +623,11 @@ test('cloudcmd: client: key: make file', (t) => {
|
|||
};
|
||||
|
||||
vim('m', event);
|
||||
vim('f', event);
|
||||
vim('f', event, {
|
||||
promptNewFile,
|
||||
});
|
||||
|
||||
t.calledWithNoArgs(DOM.promptNewDir);
|
||||
t.calledWithNoArgs(promptNewFile);
|
||||
t.end();
|
||||
});
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue