fix removePrefix

pull/689/head
yann300 4 years ago
parent 672a662ab8
commit 630a5bb589
  1. 3
      apps/remix-ide-e2e/src/tests/fileExplorer.test.ts
  2. 18
      apps/remix-ide-e2e/src/tests/fileManager_api.test.ts
  3. 3
      apps/remix-ide/src/app/files/fileProvider.js
  4. 1
      apps/remix-ide/src/app/files/remixDProvider.js

@ -105,7 +105,8 @@ module.exports = {
.waitForElementVisible('*[key="browser/fileExplorer.test.js"]') .waitForElementVisible('*[key="browser/fileExplorer.test.js"]')
.waitForElementVisible('*[key="browser/generalSettings.test.js"]') .waitForElementVisible('*[key="browser/generalSettings.test.js"]')
.end() .end()
}, },
tearDown: sauce tearDown: sauce
} }

@ -87,7 +87,15 @@ module.exports = {
.addFile('removeFile.js', { content: executeRemove }) .addFile('removeFile.js', { content: executeRemove })
.executeScript(`remix.exeCurrent()`) .executeScript(`remix.exeCurrent()`)
.pause(2000) .pause(2000)
.waitForElementNotPresent('[data-id="treeViewLibrowser/old_contract.sol"]') .waitForElementNotPresent('[data-id="treeViewLibrowser/old_contract.sol"]')
},
'Should execute `remove` api from file manager external api on a folder': function (browser: NightwatchBrowser) {
browser
.addFile('test_jsRemoveFolder.js', { content: executeRemoveOnFolder })
.executeScript('remix.exeCurrent()')
.pause(2000)
.waitForElementNotPresent('*[key="browser/tests"]')
.end() .end()
}, },
@ -189,3 +197,11 @@ const executeRemove = `
run() run()
` `
const executeRemoveOnFolder = `(async () => {
try {
await remix.call('fileManager', 'remove', 'browser')
} catch (e) {
console.log(e.message)
}
})()`

@ -170,7 +170,7 @@ class FileProvider {
const items = window.remixFileSystem.readdirSync(path) const items = window.remixFileSystem.readdirSync(path)
if (items.length !== 0) { if (items.length !== 0) {
items.forEach((item, index) => { items.forEach((item, index) => {
const curPath = `${path}/${item}` const curPath = `${path}${path.endsWith('/') ? '' : '/'}${item}`
if (window.remixFileSystem.statSync(curPath).isDirectory()) { // delete folder if (window.remixFileSystem.statSync(curPath).isDirectory()) { // delete folder
this.remove(curPath) this.remove(curPath)
} else { // delete file } else { // delete file
@ -238,6 +238,7 @@ class FileProvider {
removePrefix (path) { removePrefix (path) {
path = path.indexOf(this.type) === 0 ? path.replace(this.type, '') : path path = path.indexOf(this.type) === 0 ? path.replace(this.type, '') : path
if (path === '') return '/'
return path return path
} }

@ -166,6 +166,7 @@ module.exports = class RemixDProvider {
removePrefix (path) { removePrefix (path) {
path = path.indexOf(this.type) === 0 ? path.replace(this.type, '') : path path = path.indexOf(this.type) === 0 ? path.replace(this.type, '') : path
if (path[0] === '/') return path.substring(1) if (path[0] === '/') return path.substring(1)
if (path === '') return '/'
return path return path
} }

Loading…
Cancel
Save