Skip to content
Micro tool for testing with syntax similar to Spek, but shorter. Test different nested scenarios without any boilerplate code.
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
deps.kt @ f4b50d3
gradle/wrapper
kotlinsample
uspek-junit
uspek
.gitignore
.gitmodules
LICENSE.txt
README.md
build.gradle
buildSrc
gradle.properties
gradlew
gradlew.bat
settings.gradle.kts

README.md

μSpek

Micro tool for testing with syntax similar to Spek, but shorter. Test different nested scenarios without any boilerplate code.

Example

    @Test
    fun uspekTest() {
    
        uspek {

            "create some mutable list" o {

                val list = mutableListOf(0, 1, 2)

                assertEquals(3, list.size)

                "check list details" o {
                    assertEquals(0, list[0])
                    assertEquals(1, list[1])
                    assertEquals(2, list[2])
                }

                "add some elements to the list" o {
                    list.add(3)
                    list.add(4)

                    assertEquals(3, list[3])
                    assertEquals(4, list[4])
                    assertEquals(5, list.size)
                }

                "remove middle element from the list" o {
                    list.removeAt(1)

                    "try to check not existing element - it should fail" o {
                        assertEquals(2, list[2])
                    }

                    // this will still work even when the sub test above fails
                    "correctly check the list after removing middle element" o {
                        assertEquals(2, list.size)
                        assertEquals(0, list[0])
                        assertEquals(2, list[1])
                    }

                    "use custom assertion to generate some error" o {
                        list.size eq 666 // it should report error with correct line number
                    }
                }
            }
        }
    }

Building with JitPack

    repositories {
        maven { url "https://jitpack.io" }
    }
   
    dependencies {
        testImplementation 'com.github.langara:USpek:0.0.2'
    }

details: https://jitpack.io/#langara/USpek

You can’t perform that action at this time.