Test for MKD / RMD works like a charm
All checks were successful
continuous-integration/drone/push Build is passing

This commit is contained in:
2021-04-26 14:40:32 +02:00
parent 3e0afb0d45
commit b08da25d21
3 changed files with 13 additions and 6 deletions

View File

@@ -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