fileNameWithoutExtension

fun <T : Path> Expect<T>.fileNameWithoutExtension(assertionCreator: Expect<String>.() -> Unit): Expect<T>(source)

Expects that the property Path.fileNameWithoutExtension (provided via niok) of the subject of this expectation holds all assertions the given assertionCreator creates for it and returns an Expect for the current subject of this expectation.

Return

an Expect for the subject of this expectation.

Since

0.9.0

Samples

val dir = tempDir.newDirectory("test_dir")

expect(dir).fileNameWithoutExtension { // subject is now of type String (actually "test_dir")
    notToBeEmpty()
    toEqual("test_dir")
} // subject here is back to type Path

fails {
    expect(dir).fileNameWithoutExtension { // subject inside this expectation-group is of type String (actually "test_dir")
        toBeEmpty()             // fails because string is not empty
        notToEqual("test_dir")  // still evaluated even though toBeEmpty already fails
        //                         use `.fileNameWithoutExtension.` if you want a fail fast behaviour
    } // subject here is back to type Path
}

Creates an Expect for the property Path.fileNameWithoutExtension (provided via niok) of the subject of this expectation, so that further fluent calls are assertions about it.

Return

The newly created Expect for the extracted feature.

Since

0.9.0

Samples

val dir = tempDir.newDirectory("test_dir")

expect(dir).fileNameWithoutExtension.notToBeEmpty().toEqual("test_dir")

fails {
    expect(dir).fileNameWithoutExtension // subject is now of type String (actually "test_dir")
        .toBeEmpty()                     // fails because string is not empty
        .notToEqual("test_dir")          // not evaluated/reported because toBeEmpty already fails
    //                                      use `.fileNameWithoutExtension { ... }` if you want that all expectations are evaluated
}