Gleb Koval f9ab02c68d | ||
---|---|---|
.idea | ||
gradle/wrapper | ||
src | ||
.editorconfig | ||
.gitignore | ||
README.md | ||
build.gradle.kts | ||
gradle.properties | ||
gradlew | ||
gradlew.bat | ||
settings.gradle.kts |
README.md
TeamCity Kotlin Script build step extension library - Test Task
This is a small project to make a very basic filesystem library in Kotlin and was created using the instructions below as part of my application to the JetBrains internship project "TeamCity Kotlin Script build step extension library".
Instructions
Create a library implementing four classes:
FSEntry
, an abstract class with a name property of the typeString
;FSFile
extendingFSEntry
and adding a content property of the typeString
, which will contain a textual file content;FSFolder
extendingFSEntry
and adding a content property of the typeList<FSEntry>
listing files and folders stored within;FSCreator
implementing a singlecreate(entryToCreate: FSEntry, destination: String)
method that would create a directory hierarchy described byentryToCreate
in a given file system destination path.
Please consider various corner cases and error handling. Unit tests covering various scenarios are expected. The test task could be implemented in either Kotlin or Java.