Test for MKD / RMD works like a charm
All checks were successful
continuous-integration/drone/push Build is passing
All checks were successful
continuous-integration/drone/push Build is passing
This commit is contained in:
@@ -2,17 +2,23 @@
|
||||
|
||||
import os
|
||||
import re
|
||||
import sys
|
||||
|
||||
|
||||
class Executor:
|
||||
"""This class executes commands recieved by the server"""
|
||||
|
||||
ABSOLUTE_PATH = os.path.abspath(os.path.dirname(sys.argv[0]))
|
||||
BASE_PATH = ABSOLUTE_PATH + os.path.sep + 'home' + os.path.sep
|
||||
DEFAULT_FOLDER = BASE_PATH + '0'
|
||||
|
||||
def __init__(self, currentDiectory: str, baseDir: str = ""):
|
||||
self.currentDirectory = currentDiectory
|
||||
if baseDir == "":
|
||||
self.baseDir = self.currentDirectory
|
||||
self.baseDir = self.DEFAULT_FOLDER
|
||||
else:
|
||||
self.baseDir = baseDir
|
||||
self.baseDir = self.BASE_PATH + baseDir + os.path.sep
|
||||
|
||||
|
||||
def sanitizeDirectory(self, inDirectory: str) -> str:
|
||||
return re.sub('[^a-zA-Z0-9]', '', inDirectory)
|
||||
@@ -22,13 +28,13 @@ class Executor:
|
||||
|
||||
def createDirectory(self, dirName: str) -> str:
|
||||
dirName = self.sanitizeDirectory(dirName)
|
||||
actualDirName = os.path.join(self.currentDirectory, dirName)
|
||||
actualDirName: str = os.path.join(self.baseDir,self.currentDirectory,dirName)
|
||||
os.mkdir(actualDirName)
|
||||
return actualDirName
|
||||
|
||||
def removeDirectory(self, dirName: str) -> str:
|
||||
dirName = self.sanitizeDirectory(dirName)
|
||||
actualDirName = os.path.join(self.currentDirectory, dirName)
|
||||
actualDirName: str = os.path.join(self.baseDir, self.currentDirectory, dirName)
|
||||
if actualDirName:
|
||||
os.rmdir(actualDirName)
|
||||
return actualDirName
|
||||
|
||||
Reference in New Issue
Block a user