How to use File.safeListFiles method of io.kotest.matchers.file.matchers class

Best Kotest code snippet using io.kotest.matchers.file.matchers.File.safeListFiles

matchers.kt

Source:matchers.kt Github

copy

Full Screen

1package io.kotest.matchers.file2import io.kotest.matchers.Matcher3import io.kotest.matchers.MatcherResult4import io.kotest.matchers.collections.shouldBeSameSizeAs5import io.kotest.matchers.paths.beSymbolicLink6import io.kotest.matchers.should7import io.kotest.matchers.shouldBe8import io.kotest.matchers.shouldNot9import io.kotest.matchers.shouldNotBe10import java.io.File11import java.io.FileFilter12import java.nio.file.Path13private fun File.safeList(): List<String> = this.list()?.toList() ?: emptyList()14private fun File.safeListFiles(): List<File> = this.listFiles()?.toList() ?: emptyList()15private fun File.safeListFiles(filter: FileFilter): List<File> = this.listFiles(filter)?.toList() ?: emptyList()16fun File.shouldBeEmptyDirectory() = this should beEmptyDirectory()17fun File.shouldNotBeEmptyDirectory() = this shouldNot beEmptyDirectory()18fun beEmptyDirectory(): Matcher<File> = object : Matcher<File> {19 override fun test(value: File): MatcherResult {20 val contents = if (value.isDirectory) value.safeList() else emptyList()21 return MatcherResult(22 contents.isEmpty(),23 { "$value should be an empty directory but contained ${contents.size} file(s) [${contents.joinToString(", ")}]" },24 { "$value should not be a non empty directory" }25 )26 }27}28infix fun File.shouldContainNFiles(n: Int) = this shouldBe containNFiles(n)29infix fun File.shouldNotContainNFiles(n: Int) = this shouldNotBe containNFiles(n)30fun containNFiles(n: Int): Matcher<File> = object : Matcher<File> {31 override fun test(value: File): MatcherResult = MatcherResult(32 value.isDirectory && value.safeList().size == n,33 { "$value should be a directory and contain $n files" },34 { "$value should not be a directory containing $n files" }35 )36}37fun File.shouldBeEmpty() = this shouldBe emptyFile()38fun File.shouldNotBeEmpty() = this shouldNotBe emptyFile()39fun emptyFile(): Matcher<File> = object : Matcher<File> {40 override fun test(value: File): MatcherResult =41 MatcherResult(42 value.length() == 0L,43 { "File $value should be empty" },44 { "File $value should not be empty" }45 )46}47fun File.shouldExist() = this should exist()48fun File.shouldNotExist() = this shouldNot exist()49fun exist() = object : Matcher<File> {50 override fun test(value: File) =51 MatcherResult(52 value.exists(),53 { "File $value should exist" },54 { "File $value should not exist" }55 )56}57infix fun File.shouldContainFile(name: String) = this should containFile(name)58infix fun File.shouldNotContainFile(name: String) = this shouldNot containFile(name)59fun containFile(name: String) = object : Matcher<File> {60 override fun test(value: File): MatcherResult {61 val contents = value.safeList()62 val passed = value.isDirectory && contents.contains(name)63 return MatcherResult(64 passed,65 { "Directory $value should contain a file with filename $name (detected ${contents.size} other files)" },66 { "Directory $value should not contain a file with filename $name" }67 )68 }69}70fun File.shouldBeSymbolicLink() = this.toPath() should beSymbolicLink()71fun File.shouldNotBeSymbolicLink() = this.toPath() shouldNot beSymbolicLink()72infix fun File.shouldHaveParent(name: String) = this should haveParent(name)73infix fun File.shouldNotHaveParent(name: String) = this shouldNot haveParent(name)74fun haveParent(name: String) = object : Matcher<File> {75 private fun isParentEqualExpected(parent: File?): Boolean =76 parent != null && (parent.name == name || isParentEqualExpected(parent.parentFile))77 override fun test(value: File) = MatcherResult(78 isParentEqualExpected(value.parentFile),79 { "File $value should have parent $name" },80 { "File $value should not have parent $name" }81 )82}83fun File.shouldBeADirectory() = this should aDirectory()84fun File.shouldNotBeADirectory() = this shouldNot aDirectory()85fun aDirectory(): Matcher<File> = object : Matcher<File> {86 override fun test(value: File): MatcherResult = MatcherResult(87 value.isDirectory,88 { "File $value should be a directory" },89 { "File $value should not be a directory" }90 )91}92fun File.shouldBeAFile() = this should aFile()93fun File.shouldNotBeAFile() = this shouldNot aFile()94fun aFile(): Matcher<File> = object : Matcher<File> {95 override fun test(value: File): MatcherResult =96 MatcherResult(97 value.isFile,98 { "File $value should be a file" },99 { "File $value should not be a file" })100}101infix fun File.shouldBeSmaller(other: Path) = this should beSmaller(other.toFile())102infix fun File.shouldBeSmaller(other: File) = this should beSmaller(other)103infix fun File.shouldNotBeSmaller(other: Path) = this shouldNot beSmaller(other.toFile())104infix fun File.shouldNotBeSmaller(other: File) = this shouldNot beSmaller(other)105fun beSmaller(other: File): Matcher<File> = object : Matcher<File> {106 override fun test(value: File): MatcherResult {107 val sizea = value.length()108 val sizeb = other.length()109 return MatcherResult(110 value.length() < other.length(),111 { "File $value ($sizea bytes) should be smaller than $other ($sizeb bytes)" },112 { "File $value ($sizea bytes) should not be smaller than $other ($sizeb bytes)" }113 )114 }115}116infix fun File.shouldBeLarger(other: Path) = this should beLarger(other.toFile())117infix fun File.shouldBeLarger(other: File) = this should beLarger(other)118infix fun File.shouldNotBeLarger(other: Path) = this shouldNot beLarger(other.toFile())119infix fun File.shouldNotBeLarger(other: File) = this shouldNot beLarger(other)120fun beLarger(other: File): Matcher<File> = object : Matcher<File> {121 override fun test(value: File): MatcherResult {122 val sizea = value.length()123 val sizeb = other.length()124 return MatcherResult(125 value.length() > other.length(),126 { "File $value ($sizea bytes) should be larger than $other ($sizeb bytes)" },127 { "File $value ($sizea bytes) should not be larger than $other ($sizeb bytes)" }128 )129 }130}131fun File.shouldBeCanonical() = this should beCanonicalPath()132fun File.shouldNotBeCanonical() = this shouldNot beCanonicalPath()133fun beCanonicalPath(): Matcher<File> = object : Matcher<File> {134 override fun test(value: File): MatcherResult = MatcherResult(135 value.canonicalPath == value.path,136 { "File $value should be canonical" },137 { "File $value should not be canonical" }138 )139}140fun File.shouldBeAbsolute() = this should beAbsolute()141fun File.shouldNotBeAbsolute() = this shouldNot beAbsolute()142fun beAbsolute(): Matcher<File> = object : Matcher<File> {143 override fun test(value: File): MatcherResult =144 MatcherResult(145 value.isAbsolute,146 { "File $value should be absolute" },147 { "File $value should not be absolute" })148}149fun File.shouldBeRelative() = this should beRelative()150fun File.shouldNotBeRelative() = this shouldNot beRelative()151fun beRelative(): Matcher<File> = object : Matcher<File> {152 override fun test(value: File): MatcherResult =153 MatcherResult(154 !value.isAbsolute,155 { "File $value should be relative" },156 { "File $value should not be relative" })157}158infix fun File.shouldHaveFileSize(size: Long) = this should haveFileSize(size)159infix fun File.shouldNotHaveFileSize(size: Long) = this shouldNot haveFileSize(size)160fun haveFileSize(size: Long): Matcher<File> = object : Matcher<File> {161 override fun test(value: File): MatcherResult = MatcherResult(162 value.length() == size,163 { "File $value should have size $size" },164 { "File $value should not have size $size" }165 )166}167fun File.shouldBeWriteable() = this should beWriteable()168fun File.shouldNotBeWriteable() = this shouldNot beWriteable()169fun beWriteable(): Matcher<File> = object : Matcher<File> {170 override fun test(value: File): MatcherResult =171 MatcherResult(172 value.canWrite(),173 { "File $value should be writeable" },174 { "File $value should not be writeable" })175}176fun File.shouldBeExecutable() = this should beExecutable()177fun File.shouldNotBeExecutable() = this shouldNot beExecutable()178fun beExecutable(): Matcher<File> = object : Matcher<File> {179 override fun test(value: File): MatcherResult = MatcherResult(180 value.canExecute(),181 { "File $value should be executable" },182 { "File $value should not be executable" }183 )184}185fun File.shouldBeHidden() = this should beHidden()186fun File.shouldNotBeHidden() = this shouldNot beHidden()187fun beHidden(): Matcher<File> = object : Matcher<File> {188 override fun test(value: File): MatcherResult =189 MatcherResult(190 value.isHidden,191 { "File $value should be hidden" },192 { "File $value should not be hidden" })193}194fun File.shouldBeReadable() = this should beReadable()195fun File.shouldNotBeReadable() = this shouldNot beReadable()196fun beReadable(): Matcher<File> = object : Matcher<File> {197 override fun test(value: File): MatcherResult =198 MatcherResult(199 value.canRead(),200 { "File $value should be readable" },201 { "File $value should not be readable" })202}203infix fun File.shouldStartWithPath(path: Path) = this should startWithPath(path)204infix fun File.shouldNotStartWithPath(path: Path) = this shouldNot startWithPath(path)205infix fun File.shouldStartWithPath(prefix: String) = this should startWithPath(prefix)206infix fun File.shouldNotStartWithPath(prefix: String) = this shouldNot startWithPath(prefix)207infix fun File.shouldStartWithPath(file: File) = this should startWithPath(file)208infix fun File.shouldNotStartWithPath(file: File) = this shouldNot startWithPath(file)209infix fun Path.shouldStartWithPath(path: Path) = this.toFile() should startWithPath(path)210infix fun Path.shouldNotStartWithPath(path: Path) = this.toFile() shouldNot startWithPath(path)211fun startWithPath(path: Path) = startWithPath(path.toFile())212fun startWithPath(file: File) = startWithPath(file.toString())213fun startWithPath(prefix: String) = object : Matcher<File> {214 override fun test(value: File): MatcherResult = MatcherResult(215 value.toString().startsWith(prefix),216 { "File $value should start with $prefix" },217 { "File $value should not start with $prefix" }218 )219}220infix fun File.shouldHaveSameStructureAs(file: File) {221 this.shouldHaveSameStructureAs(file) { _, _ -> false }222}223fun File.shouldHaveSameStructureAs(224 file: File,225 compare: (expect: File, actual: File) -> Boolean,226) {227 val expectFiles = this.walkTopDown().toList()228 val actualFiles = file.walkTopDown().toList()229 val expectParentPath = this.path230 val actualParentPath = file.path231 expectFiles shouldBeSameSizeAs actualFiles232 expectFiles.zip(actualFiles) { expect, actual ->233 when {234 compare(expect, actual) -> {}235 expect.isDirectory -> actual.shouldBeADirectory()236 expect.isFile -> {237 expect.path.removePrefix(expectParentPath)238 .shouldBe(actual.path.removePrefix(actualParentPath))239 }240 else -> error("There is an unexpected error analyzing file trees")241 }242 }243}244fun File.shouldHaveSameStructureAs(245 file: File,246 filterLhs: (File) -> Boolean = { false },247 filterRhs: (File) -> Boolean = { false },248) {249 this.shouldHaveSameStructureAs(file) { expect, actual ->250 filterLhs(expect) || filterRhs(actual)251 }252}253infix fun File.shouldHaveSameStructureAndContentAs(file: File) {254 this.shouldHaveSameStructureAndContentAs(file) { _, _ -> false }255}256fun File.shouldHaveSameStructureAndContentAs(257 file: File,258 compare: (expect: File, actual: File) -> Boolean,259) {260 val expectFiles = this.walkTopDown().toList()261 val actualFiles = file.walkTopDown().toList()262 val expectParentPath = this.path263 val actualParentPath = file.path264 expectFiles shouldBeSameSizeAs actualFiles265 expectFiles.zip(actualFiles) { expect, actual ->266 when {267 compare(expect, actual) -> {}268 expect.isDirectory -> actual.shouldBeADirectory()269 expect.isFile -> {270 expect.path.removePrefix(expectParentPath)271 .shouldBe(actual.path.removePrefix(actualParentPath))272 expect.shouldHaveSameContentAs(actual)273 }274 else -> error("There is an unexpected error analyzing file trees")275 }276 }277}278fun File.shouldHaveSameStructureAndContentAs(279 file: File,280 filterLhs: (File) -> Boolean = { false },281 filterRhs: (File) -> Boolean = { false },282) {283 this.shouldHaveSameStructureAndContentAs(file) { expect, actual ->284 filterLhs(expect) || filterRhs(actual)285 }286}...

Full Screen

Full Screen

File.safeListFiles

Using AI Code Generation

copy

Full Screen

1@file:Suppress("PackageDirectoryMismatch")2import io.kotest.matchers.Matcher3import io.kotest.matchers.MatcherResult4import io.kotest.matchers.should5import io.kotest.matchers.shouldNot6import java.io.File7fun File.shouldBeDirectory() = this should beDirectory()8fun File.shouldNotBeDirectory() = this shouldNot beDirectory()9fun beDirectory() = object : Matcher<File> {10 override fun test(value: File) = MatcherResult(11 { "File $value should be a directory" },12 { "File $value should not be a directory" }13}14fun File.shouldBeFile() = this should beFile()15fun File.shouldNotBeFile() = this shouldNot beFile()16fun beFile() = object : Matcher<File> {17 override fun test(value: File) = MatcherResult(18 { "File $value should be a file" },19 { "File $value should not be a file" }20}21fun File.shouldBeHidden() = this should beHidden()22fun File.shouldNotBeHidden() = this shouldNot beHidden()23fun beHidden() = object : Matcher<File> {24 override fun test(value: File) = MatcherResult(25 { "File $value should be hidden" },26 { "File $value should not be hidden" }27}28fun File.shouldBeAbsolute() = this should beAbsolute()29fun File.shouldNotBeAbsolute() = this shouldNot beAbsolute()30fun beAbsolute() = object : Matcher<File> {31 override fun test(value: File) = MatcherResult(32 { "File $value should be absolute" },33 { "File $value should not be absolute" }34}35fun File.shouldBeRelative() = this should beRelative()36fun File.shouldNotBeRelative() = this shouldNot beRelative()37fun beRelative() = object : Matcher<File> {38 override fun test(value: File) = MatcherResult(39 value.isAbsolute.not(),40 { "File $value should be relative" },41 { "File $value should not be relative" }42}43fun File.shouldExist() = this should exist()44fun File.shouldNotExist() = this shouldNot exist()45fun exist() = object : Matcher<File> {

Full Screen

Full Screen

File.safeListFiles

Using AI Code Generation

copy

Full Screen

1import io.kotest.matchers.file.shouldBeEmpty2import io.kotest.matchers.file.shouldBeReadable3import io.kotest.matchers.file.shouldBeWritable4import io.kotest.matchers.file.shouldExist5import io.kotest.matchers.file.shouldHaveExtension6import io.kotest.matchers.file.shouldHaveName7import io.kotest.matchers.file.shouldHaveParent8import io.kotest.matchers.file.shouldHaveParentDirectory9import io.kotest.matchers.file.shouldHaveSize10import io.kotest.matchers.file.shouldNotBeEmpty11import io.kotest.matchers.file.shouldNotBeReadable12import io.kotest.matchers.file.shouldNotBeWritable13import io.kotest.matchers.file.shouldNotExist14import io.kotest.matchers.file.shouldNotHaveExtension15import io.kotest.matchers.file.shouldNotHaveName16import io.kotest.matchers.file.shouldNotHaveParent17import io.kotest.matchers.file.shouldNotHaveParentDirectory18import io.kotest.matchers.file.shouldNotHaveSize19import io.kotest.matchers.file.shouldNotHaveSubDirectories20import io.kotest.matchers.file.shouldNotHaveSubFiles21import io.kotest.matchers.file.shouldNotHaveSubFilesOrDirectories22import io.kotest.matchers.file.shouldNotHaveSubfolders23import io.kotest.matchers.file.shouldNotHaveSubfoldersOrFiles24import io.kotest.matchers.file.shouldNotHaveSubfoldersOrFilesRecursively25import io.kotest.matchers.file.shouldNotHaveSubfoldersRecursively26import io.kotest.matchers.file.shouldNotHaveSubpaths27import io.kotest.matchers.file.shouldNotHaveSubpathsRecursively28import io.kotest.matchers.file.shouldNotHaveText29import io.kotest.matchers.file.shouldNotHaveTextRecursively30import io.kotest.matchers.file.shouldNotHaveTheSameTextAs31import io.kotest.matchers.file.shouldNotHaveTheSameTextAsDefault32import io.kotest.matchers.file.shouldNotHaveTheSameTextAsWithEncoding33import io.kotest.matchers.file.shouldNotHaveTheSameTextAsWithEncodingRecursively34import io.kotest.matchers.file.shouldNotHaveTheSameTextAsWithEncodingRecursivelyDefault35import io.kotest.matchers.file.shouldNotHaveTheSameTextAsWith

Full Screen

Full Screen

File.safeListFiles

Using AI Code Generation

copy

Full Screen

1File("src/test/resources").safeListFiles() should containExactly(File("src/test/resources/test.txt"))2File("src/test/resources").safeListFiles() should containExactlyInAnyOrder(File("src/test/resources/test.txt"))3File("src/test/resources").safeListFiles() should containExactlyInAnyOrder(File("src/test/resources/test.txt"), File("src/test/resources/test2.txt"))4File("src/test/resources").safeListFiles() should containNone(File("src/test/resources/test.txt"))5File("src/test/resources").safeListFiles() should containNone(File("src/test/resources/test.txt"), File("src/test/resources/test2.txt"))6File("src/test/resources").safeListFiles() should containOnly(File("src/test/resources/test.txt"))7File("src/test/resources").safeListFiles() should containOnly(File("src/test/resources/test.txt"), File("src/test/resources/test2.txt"))8File("src/test/resources").safeListFiles() should containOnly(File("src/test/resources/test.txt"), File("src/test/resources/test2.txt"), File("src/test/resources/test3.txt"))9File("src/test/resources").safeListFiles() should containOnly(File("src/test/resources/test.txt"), File("src/test/resources/test2.txt"), File("src/test/resources/test3.txt"), File("src/test/resources/test4.txt"))10File("src/test/resources").safeListFiles() should containOnlyInAnyOrder(File("src/test/resources/test.txt"))

Full Screen

Full Screen

File.safeListFiles

Using AI Code Generation

copy

Full Screen

1import io.kotest.matchers.file.matchers.*2val dir = File("someDir")3val files = dir.safeListFiles()4import io.kotest.matchers.file.matchers.*5val dir = File("someDir")6dir.shouldBeADirectory()7import io.kotest.matchers.file.matchers.*8val dir = File("someDir")9dir.shouldBeAFile()10import io.kotest.matchers.file.matchers.*11val dir = File("someDir")12dir.shouldBeAbsolute()13import io.kotest.matchers.file.matchers.*14val dir = File("someDir")15dir.shouldBeHidden()16import io.kotest.matchers.file.matchers.*17val dir = File("someDir")18dir.shouldBeRelative()19import io.kotest.matchers.file.matchers.*20val dir = File("someDir")21dir.shouldBeReadable()22import io.kotest.matchers.file.matchers.*23val dir = File("someDir")24dir.shouldBeWritable()25import io.kotest.matchers.file.matchers.*26val dir = File("someDir")27dir.shouldBeExecutable()28import io.kotest.matchers.file.matchers.*29val dir = File("someDir")30dir.shouldBeEmpty()31import io.kotest.matchers.file.matchers.*32val dir = File("someDir")33dir.shouldBeSymbolicLink()

Full Screen

Full Screen

File.safeListFiles

Using AI Code Generation

copy

Full Screen

1val file = File("file.txt")2file should haveExtension("txt")3file should haveName("file.txt")4file should haveNameStartingWith("file")5file should haveNameEndingWith(".txt")6file should haveNameContaining("file")7file should haveNameMatching("file.*")8file should haveNameNotMatching("file.*")9file should haveParent("parent")10file should haveParent(File("parent"))11file should haveParentMatching("parent.*")12file should haveParentNotMatching("parent.*")13file should havePath("parent/file.txt")14file should havePath(File("parent/file.txt"))15file should havePathMatching("parent/file.*")16file should havePathNotMatching("parent/file.*")17file should haveSize(1024)18file should haveSizeGreaterThan(1024)19file should haveSizeGreaterThanOrEqual(1024)20file should haveSizeLessThan(1024)21file should haveSizeLessThanOrEqual(1024)22file should haveSizeNot(1024)23file should haveSizeInRange(1024..2048)24file should haveSizeNotInRange(1024..2048)25file should haveText("file content")26file should haveTextContaining("file")27file should haveTextMatching("file.*")28file should haveTextNotMatching("file.*")29file should haveTextStartingWith("file")30file should haveTextEndingWith("content")31file should haveTextNot("file content")32file should haveTextNotContaining("file")33file should haveTextNotStartingWith("file")34file should haveTextNotEndingWith("content")35file should haveContent("file content")36file should haveContentContaining("file")37file should haveContentMatching("file.*")38file should haveContentNotMatching("file.*")39file should haveContentStartingWith("file")40file should haveContentEndingWith("content")41file should haveContentNot("file content")42file should haveContentNotContaining("file")43file should haveContentNotStartingWith("file")44file should haveContentNotEndingWith("content")45file should haveContentBytes(byteArrayOf(1, 2, 3))46file should haveContentBytesNot(byteArrayOf(1, 2, 3))47file should haveContentBytesInRange(byteArrayOf(1)..byteArrayOf(2))48file should haveContentBytesNotInRange(byteArrayOf(1)..byteArrayOf(2))49file should haveContentBytesGreaterThan(byteArrayOf(1))50file should haveContentBytesGreaterThanOrEqual(byteArrayOf(1))

Full Screen

Full Screen

File.safeListFiles

Using AI Code Generation

copy

Full Screen

1import io.kotest.matchers.file.*2val file = File("C:\\Users\\Desktop\\test.txt")3file.safeListFiles()4import io.kotest.matchers.file.*5val file = File("C:\\Users\\Desktop\\test.txt")6file.safeListFiles()7import io.kotest.matchers.file.*8val file = File("C:\\Users\\Desktop\\test.txt")9file.safeListFiles()10import io.kotest.matchers.file.*11val file = File("C:\\Users\\Desktop\\test.txt")12file.safeListFiles()13import io.kotest.matchers.file.*14val file = File("C:\\Users\\Desktop\\test.txt")15file.safeListFiles()16import io.kotest.matchers.file.*17val file = File("C:\\Users\\Desktop\\test.txt")18file.safeListFiles()19import io.kotest.matchers.file.*20val file = File("C:\\Users\\Desktop\\test.txt")21file.safeListFiles()22import io.kotest.matchers.file.*23val file = File("C:\\Users\\Desktop\\test.txt")24file.safeListFiles()25import io.kotest.matchers.file.*26val file = File("C:\\Users\\Desktop\\test.txt")27file.safeListFiles()28import io.kotest.matchers.file.*29val file = File("C:\\Users\\Desktop\\test.txt")30file.safeListFiles()31import io.kotest.matchers.file

Full Screen

Full Screen

File.safeListFiles

Using AI Code Generation

copy

Full Screen

1@DisplayName("Test the existence of files in a directory")2class FileSafeListFilesTest : FunSpec({3 test("test the existence of files in a directory") {4 val file = File("/home/techiedelight/Documents")5 val files = file.safeListFiles()6 files?.map { it.name } shouldContain "kotlin"7 files?.map { it.name } shouldContain "java"8 }9})10@DisplayName("Test the existence of files in a directory")11class FileSafeListFilesTest : FunSpec({12 test("test the existence of files in a directory") {13 val file = File("/home/techiedelight/Documents")14 val files = file.safeListFiles()15 files?.map { it.name } shouldContainAll listOf("kotlin", "java")16 }17})

Full Screen

Full Screen

File.safeListFiles

Using AI Code Generation

copy

Full Screen

1import io.kotest.matchers.file.*2val dir = File("src/test/resources")3dir.safeListFiles("*.txt").size shouldBe 24import io.kotest.matchers.file.*5val dir = File("src/test/resources")6dir.safeListFiles("*.txt").size shouldBe 27import io.kotest.matchers.file.*8val dir = File("src/test/resources")9dir.safeListFiles("*.txt").size shouldBe 210import io.kotest.matchers.file.*11val dir = File("src/test/resources")12dir.safeListFiles("*.txt").size shouldBe 213import io.kotest.matchers.file.*14val dir = File("src/test/resources")15dir.safeListFiles("*.txt").size shouldBe 216import io.kotest.matchers.file.*17val dir = File("src/test/resources")18dir.safeListFiles("*.txt").size shouldBe 219import io.kotest.matchers.file.*20val dir = File("src/test/resources")21dir.safeListFiles("*.txt").size shouldBe 222import io.kotest.matchers.file.*23val dir = File("src/test/resources")24dir.safeListFiles("*.txt").size shouldBe 2

Full Screen

Full Screen

Automation Testing Tutorials

Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.

LambdaTest Learning Hubs:

YouTube

You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.

Try LambdaTest Now !!

Get 100 minutes of automation test minutes FREE!!

Next-Gen App & Browser Testing Cloud

Was this article helpful?

Helpful

NotHelpful