From 1d68af62396e4ea79dd15e86a3c90324ef588ca0 Mon Sep 17 00:00:00 2001
From: robstoll <5557885+robstoll@users.noreply.github.com>
Date: Sun, 15 Sep 2024 14:38:26 +0000
Subject: [PATCH] generate README examples
---
README.md | 168 +++++++++++++++++++++++++++---------------------------
1 file changed, 84 insertions(+), 84 deletions(-)
diff --git a/README.md b/README.md
index 3e426a8d41..86a6d50026 100644
--- a/README.md
+++ b/README.md
@@ -176,7 +176,7 @@ import ch.tutteli.atrium.api.verbs.expect
val x = 10
expect(x).toEqual(9)
```
-↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/FirstExample.kt#L32) ↓ [Output](#ex-first)
+↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/FirstExample.kt#L20) ↓ [Output](#ex-first)
```text
I expected subject: 10 (kotlin.Int <1234789>)
@@ -208,7 +208,7 @@ The next section shows how you can define multiple expectations for the same sub
// two single expectations, only first evaluated
expect(4 + 6).toBeLessThan(5).toBeGreaterThan(10)
```
-↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/MostExamples.kt#L26) ↓ [Output](#ex-single)
+↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/MostExamples.kt#L15) ↓ [Output](#ex-single)
```text
I expected subject: 10 (kotlin.Int <1234789>)
@@ -246,7 +246,7 @@ expect(4 + 6) {
toBeGreaterThan(10)
}
```
-↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/MostExamples.kt#L44) ↓ [Output](#ex-group)
+↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/MostExamples.kt#L33) ↓ [Output](#ex-group)
```text
I expected subject: 10 (kotlin.Int <1234789>)
@@ -343,7 +343,7 @@ expect {
throw IllegalArgumentException("name is empty")
}.toThrow()
```
-↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/ToThrowExamples.kt#L26) ↓ [Output](#ex-toThrow1)
+↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/ToThrowExamples.kt#L15) ↓ [Output](#ex-toThrow1)
```text
I expected subject: () -> kotlin.Nothing (readme.examples.ToThrowExamples$ex-toThrow1$1 <1234789>)
@@ -352,9 +352,9 @@ I expected subject: () -> kotlin.Nothing (readme.examples.ToThrowExamples
ℹ Properties of the unexpected IllegalArgumentException
» message: "name is empty" <1234789>
» stacktrace:
- ⚬ readme.examples.ToThrowExamples$ex-toThrow1$1.invoke(ToThrowExamples.kt:29)
- ⚬ readme.examples.ToThrowExamples$ex-toThrow1$1.invoke(ToThrowExamples.kt:27)
- ⚬ readme.examples.ToThrowExamples.ex-toThrow1(ToThrowExamples.kt:58)
+ ⚬ readme.examples.ToThrowExamples$ex-toThrow1$1.invoke(ToThrowExamples.kt:18)
+ ⚬ readme.examples.ToThrowExamples$ex-toThrow1$1.invoke(ToThrowExamples.kt:16)
+ ⚬ readme.examples.ToThrowExamples.ex-toThrow1(ToThrowExamples.kt:47)
⚬ java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
⚬ java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
⚬ java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
@@ -385,7 +385,7 @@ expect {
message { toStartWith("firstName") }
}
```
-↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/ToThrowExamples.kt#L34) ↓ [Output](#ex-toThrow2)
+↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/ToThrowExamples.kt#L23) ↓ [Output](#ex-toThrow2)
```text
I expected subject: () -> kotlin.Nothing (readme.examples.ToThrowExamples$ex-toThrow2$1 <1234789>)
@@ -406,7 +406,7 @@ expect {
throw IllegalArgumentException()
}.toThrow().message.toStartWith("firstName")
```
-↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/ToThrowExamples.kt#L43) ↓ [Output](#ex-toThrow3)
+↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/ToThrowExamples.kt#L32) ↓ [Output](#ex-toThrow3)
```text
I expected subject: () -> kotlin.Nothing (readme.examples.ToThrowExamples$ex-toThrow3$1 <1234789>)
@@ -429,7 +429,7 @@ expect {
throw IllegalArgumentException("name is empty", RuntimeException("a cause"))
}.notToThrow()
```
-↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/ToThrowExamples.kt#L50) ↓ [Output](#ex-notToThrow)
+↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/ToThrowExamples.kt#L39) ↓ [Output](#ex-notToThrow)
```text
I expected subject: () -> kotlin.Nothing (readme.examples.ToThrowExamples$ex-notToThrow$1 <1234789>)
@@ -437,9 +437,9 @@ I expected subject: () -> kotlin.Nothing (readme.examples.ToThrowExamples
ℹ Properties of the unexpected IllegalArgumentException
» message: "name is empty" <1234789>
» stacktrace:
- ⚬ readme.examples.ToThrowExamples$ex-notToThrow$1.invoke(ToThrowExamples.kt:53)
- ⚬ readme.examples.ToThrowExamples$ex-notToThrow$1.invoke(ToThrowExamples.kt:51)
- ⚬ readme.examples.ToThrowExamples.ex-notToThrow(ToThrowExamples.kt:54)
+ ⚬ readme.examples.ToThrowExamples$ex-notToThrow$1.invoke(ToThrowExamples.kt:42)
+ ⚬ readme.examples.ToThrowExamples$ex-notToThrow$1.invoke(ToThrowExamples.kt:40)
+ ⚬ readme.examples.ToThrowExamples.ex-notToThrow(ToThrowExamples.kt:43)
⚬ java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
⚬ java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
⚬ java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
@@ -447,7 +447,7 @@ I expected subject: () -> kotlin.Nothing (readme.examples.ToThrowExamples
» cause: java.lang.RuntimeException
» message: "a cause" <1234789>
» stacktrace:
- ⚬ readme.examples.ToThrowExamples$ex-notToThrow$1.invoke(ToThrowExamples.kt:53)
+ ⚬ readme.examples.ToThrowExamples$ex-notToThrow$1.invoke(ToThrowExamples.kt:42)
```
@@ -500,11 +500,11 @@ expect(myPerson)
.its { fullName() } // not evaluated anymore, subject String afterwards
.toStartWith("rob") // not evaluated anymore
```
-↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/FeatureExtractorExamples.kt#L44) ↓ [Output](#ex-its-single)
+↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/FeatureExtractorExamples.kt#L33) ↓ [Output](#ex-its-single)
```text
I expected subject: Person(firstName=Robert, lastName=Stoll, isStudent=false) (readme.examples.FeatureExtractorExamples.Person <1234789>)
-◆ ▶ its.definedIn(FeatureExtractorExamples.kt:46): false
+◆ ▶ its.definedIn(FeatureExtractorExamples.kt:35): false
◾ to equal: true
```
@@ -545,14 +545,14 @@ Feature extractors follow the common pattern of having two overloads:
its { lastName }.toEqual("Dummy")
}
```
- ↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/FeatureExtractorExamples.kt#L53) ↓ [Output](#ex-its-group)
+ ↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/FeatureExtractorExamples.kt#L42) ↓ [Output](#ex-its-group)
```text
I expected subject: Person(firstName=Robert, lastName=Stoll, isStudent=false) (readme.examples.FeatureExtractorExamples.Person <1234789>)
- ◆ ▶ its.definedIn(FeatureExtractorExamples.kt:56): "Robert" <1234789>
+ ◆ ▶ its.definedIn(FeatureExtractorExamples.kt:45): "Robert" <1234789>
◾ to start with: "Pe" <1234789>
◾ to end with: "er" <1234789>
- ◆ ▶ its.definedIn(FeatureExtractorExamples.kt:62): "Stoll" <1234789>
+ ◆ ▶ its.definedIn(FeatureExtractorExamples.kt:51): "Stoll" <1234789>
◾ to equal: "Dummy" <1234789>
```
@@ -573,7 +573,7 @@ expect(myPerson)
.feature { f(it::fullName) } // not evaluated anymore, subject String afterwards
.toStartWith("rob") // not evaluated anymore
```
-↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/FeatureExtractorExamples.kt#L68) ↓ [Output](#ex-property-methods-single)
+↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/FeatureExtractorExamples.kt#L57) ↓ [Output](#ex-property-methods-single)
```text
I expected subject: Person(firstName=Robert, lastName=Stoll, isStudent=false) (readme.examples.FeatureExtractorExamples.Person <1234789>)
@@ -616,7 +616,7 @@ expect(myPerson) { // forms an expectation-group
feature { f(it::lastName) }.toEqual("Dummy")
}
```
-↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/FeatureExtractorExamples.kt#L77) ↓ [Output](#ex-property-methods-group)
+↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/FeatureExtractorExamples.kt#L66) ↓ [Output](#ex-property-methods-group)
```text
I expected subject: Person(firstName=Robert, lastName=Stoll, isStudent=false) (readme.examples.FeatureExtractorExamples.Person <1234789>)
@@ -665,7 +665,7 @@ expect(myPerson)
.toEqual("Robert aka. Stoll") // fails
.toStartWith("llotS") // not evaluated anymore
```
-↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/FeatureExtractorExamples.kt#L92) ↓ [Output](#ex-methods-args)
+↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/FeatureExtractorExamples.kt#L81) ↓ [Output](#ex-methods-args)
```text
I expected subject: Person(firstName=Robert, lastName=Stoll, isStudent=false) (readme.examples.FeatureExtractorExamples.Person <1234789>)
@@ -707,7 +707,7 @@ expect(myFamily)
.feature("the first member's name") { members.first().name } // subject narrowed to String
.toEqual("Peter")
```
-↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/FeatureExtractorExamples.kt#L110) ↓ [Output](#ex-arbitrary-features)
+↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/FeatureExtractorExamples.kt#L99) ↓ [Output](#ex-arbitrary-features)
```text
I expected subject: Family(members=[FamilyMember(name=Robert)]) (readme.examples.FeatureExtractorExamples.Family <1234789>)
@@ -755,7 +755,7 @@ expect(listOf(1 to "a", 2 to "b")).get(10) {
firstToBe(1)
}
```
-↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/FeatureExtractorExamples.kt#L127) ↓ [Output](#ex-within-expectation-functions)
+↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/FeatureExtractorExamples.kt#L116) ↓ [Output](#ex-within-expectation-functions)
```text
I expected subject: [(1, a), (2, b)] (java.util.Arrays.ArrayList <1234789>)
@@ -875,7 +875,7 @@ expect(x).toBeAnInstanceOf {
feature { f(it::flag) }.toEqual(false)
}
```
-↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/MostExamples.kt#L70) ↓ [Output](#ex-type-expectations-1)
+↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/MostExamples.kt#L59) ↓ [Output](#ex-type-expectations-1)
```text
I expected subject: SubType2(word=hello, flag=true) (readme.examples.SubType2 <1234789>)
@@ -899,7 +899,7 @@ expect(x).toBeAnInstanceOf()
.feature { f(it::number) }
.toEqual(2)
```
-↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/MostExamples.kt#L78) ↓ [Output](#ex-type-expectations-2)
+↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/MostExamples.kt#L67) ↓ [Output](#ex-type-expectations-2)
```text
I expected subject: SubType2(word=hello, flag=true) (readme.examples.SubType2 <1234789>)
@@ -929,7 +929,7 @@ Let us look at the case where the subject of the expectation has a [nullable typ
val slogan1: String? = "postulating expectations made easy"
expect(slogan1).toEqual(null)
```
-↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/MostExamples.kt#L85) ↓ [Output](#ex-nullable-1)
+↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/MostExamples.kt#L74) ↓ [Output](#ex-nullable-1)
```text
I expected subject: "postulating expectations made easy" <1234789>
@@ -943,7 +943,7 @@ I expected subject: "postulating expectations made easy" <1234789>
val slogan2: String? = null
expect(slogan2).toEqual("postulating expectations made easy")
```
-↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/MostExamples.kt#L90) ↓ [Output](#ex-nullable-2)
+↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/MostExamples.kt#L79) ↓ [Output](#ex-nullable-2)
```text
I expected subject: null
@@ -964,7 +964,7 @@ expect(slogan2) // subject has type String?
.notToEqualNull() // subject is narrowed to String
.toStartWith("atrium")
```
-↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/MostExamples.kt#L96) ↓ [Output](#ex-nullable-3)
+↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/MostExamples.kt#L85) ↓ [Output](#ex-nullable-3)
```text
I expected subject: null
@@ -981,7 +981,7 @@ one without (example above) and one with `assertionCreator`-lambda (example belo
```kotlin
expect(slogan2).notToEqualNull { toStartWith("atrium") }
```
-↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/MostExamples.kt#L102) ↓ [Output](#ex-nullable-4)
+↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/MostExamples.kt#L91) ↓ [Output](#ex-nullable-4)
```text
I expected subject: null
@@ -1023,7 +1023,7 @@ for further examples.
```kotlin
expect(listOf(1, 2, 2, 4)).toContain(2, 3)
```
-↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/CollectionExamples.kt#L24) ↓ [Output](#ex-collection-short-1)
+↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/CollectionExamples.kt#L13) ↓ [Output](#ex-collection-short-1)
```text
I expected subject: [1, 2, 2, 4] (java.util.Arrays.ArrayList <1234789>)
@@ -1061,7 +1061,7 @@ expect(listOf(1, 2, 2, 4)).toContain(
{ toBeGreaterThan(2).toBeLessThan(4) }
)
```
-↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/CollectionExamples.kt#L29) ↓ [Output](#ex-collection-short-2)
+↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/CollectionExamples.kt#L18) ↓ [Output](#ex-collection-short-2)
```text
I expected subject: [1, 2, 2, 4] (java.util.Arrays.ArrayList <1234789>)
@@ -1103,7 +1103,7 @@ expect(listOf(1, 2, 3, 4)).toHaveElementsAndAny {
toBeLessThan(0)
}
```
-↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/CollectionExamples.kt#L37) ↓ [Output](#ex-collection-any)
+↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/CollectionExamples.kt#L26) ↓ [Output](#ex-collection-any)
```text
I expected subject: [1, 2, 3, 4] (java.util.Arrays.ArrayList <1234789>)
@@ -1121,7 +1121,7 @@ expect(listOf(1, 2, 3, 4)).toHaveElementsAndNone {
toBeGreaterThan(2)
}
```
-↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/CollectionExamples.kt#L44) ↓ [Output](#ex-collection-none)
+↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/CollectionExamples.kt#L33) ↓ [Output](#ex-collection-none)
```text
I expected subject: [1, 2, 3, 4] (java.util.Arrays.ArrayList <1234789>)
@@ -1141,7 +1141,7 @@ expect(listOf(1, 2, 3, 4)).toHaveElementsAndAll {
toBeGreaterThan(2)
}
```
-↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/CollectionExamples.kt#L51) ↓ [Output](#ex-collection-all)
+↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/CollectionExamples.kt#L40) ↓ [Output](#ex-collection-all)
```text
I expected subject: [1, 2, 3, 4] (java.util.Arrays.ArrayList <1234789>)
@@ -1171,7 +1171,7 @@ Following on the last section we will start with an `inOrder` example:
```kotlin
expect(listOf(1, 2, 2, 4)).toContain.inOrder.only.entries({ toBeLessThan(3) }, { toBeLessThan(2) })
```
-↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/CollectionExamples.kt#L58) ↓ [Output](#ex-collection-builder-1)
+↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/CollectionExamples.kt#L47) ↓ [Output](#ex-collection-builder-1)
```text
I expected subject: [1, 2, 2, 4] (java.util.Arrays.ArrayList <1234789>)
@@ -1217,7 +1217,7 @@ expect(listOf(1, 2, 2, 4)).toContainExactly(
report = { showOnlyFailingIfMoreExpectedElementsThan(2) }
)
```
-↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/CollectionExamples.kt#L63) ↓ [Output](#ex-collection-reportOptions-1)
+↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/CollectionExamples.kt#L52) ↓ [Output](#ex-collection-reportOptions-1)
```text
I expected subject: [1, 2, 2, 4] (java.util.Arrays.ArrayList <1234789>)
@@ -1248,7 +1248,7 @@ and we happily answer your question there.
```kotlin
expect(listOf(1, 2, 2, 4)).toContain.inOrder.only.values(1, 2, 2, 3, 4)
```
-↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/CollectionExamples.kt#L73) ↓ [Output](#ex-collection-builder-2)
+↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/CollectionExamples.kt#L62) ↓ [Output](#ex-collection-builder-2)
```text
I expected subject: [1, 2, 2, 4] (java.util.Arrays.ArrayList <1234789>)
@@ -1273,7 +1273,7 @@ I expected subject: [1, 2, 2, 4] (java.util.Arrays.ArrayList <1234789>)
```kotlin
expect(listOf(1, 2, 2, 4)).toContain.inAnyOrder.atLeast(1).butAtMost(2).entries({ toBeLessThan(3) })
```
-↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/CollectionExamples.kt#L78) ↓ [Output](#ex-collection-builder-3)
+↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/CollectionExamples.kt#L67) ↓ [Output](#ex-collection-builder-3)
```text
I expected subject: [1, 2, 2, 4] (java.util.Arrays.ArrayList <1234789>)
@@ -1290,7 +1290,7 @@ I expected subject: [1, 2, 2, 4] (java.util.Arrays.ArrayList <1234789>)
```kotlin
expect(listOf(1, 2, 2, 4)).toContain.inAnyOrder.only.values(1, 2, 3, 4)
```
-↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/CollectionExamples.kt#L83) ↓ [Output](#ex-collection-builder-4)
+↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/CollectionExamples.kt#L72) ↓ [Output](#ex-collection-builder-4)
```text
I expected subject: [1, 2, 2, 4] (java.util.Arrays.ArrayList <1234789>)
@@ -1309,7 +1309,7 @@ I expected subject: [1, 2, 2, 4] (java.util.Arrays.ArrayList <1234789>)
```kotlin
expect(listOf(1, 2, 2, 4)).toContain.inAnyOrder.only.values(4, 3, 2, 2, 1)
```
-↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/CollectionExamples.kt#L88) ↓ [Output](#ex-collection-builder-5)
+↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/CollectionExamples.kt#L77) ↓ [Output](#ex-collection-builder-5)
```text
I expected subject: [1, 2, 2, 4] (java.util.Arrays.ArrayList <1234789>)
@@ -1343,7 +1343,7 @@ for further examples.
```kotlin
expect(mapOf("a" to 1, "b" to 2)).toContain("c" to 2, "a" to 1, "b" to 1)
```
-↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/MapExamples.kt#L26) ↓ [Output](#ex-map-1)
+↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/MapExamples.kt#L15) ↓ [Output](#ex-map-1)
```text
I expected subject: {a=1, b=2} (java.util.LinkedHashMap <1234789>)
@@ -1367,7 +1367,7 @@ expect(mapOf("a" to 1, "b" to 2)).toContain(
KeyValue("b") { toBeLessThan(2) }
)
```
-↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/MapExamples.kt#L31) ↓ [Output](#ex-map-2)
+↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/MapExamples.kt#L20) ↓ [Output](#ex-map-2)
```text
I expected subject: {a=1, b=2} (java.util.LinkedHashMap <1234789>)
@@ -1389,7 +1389,7 @@ Again both overloads are provided, one for key-value `Pair`s:
```kotlin
expect(mapOf("a" to 1, "b" to 2)).toContainOnly("b" to 2)
```
-↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/MapExamples.kt#L40) ↓ [Output](#ex-map-only-1)
+↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/MapExamples.kt#L29) ↓ [Output](#ex-map-only-1)
```text
I expected subject: {a=1, b=2} (java.util.LinkedHashMap <1234789>)
@@ -1414,7 +1414,7 @@ expect(mapOf("a" to 1, "b" to 2)).toContainOnly(
KeyValue("b") { toBeLessThan(2) }
)
```
-↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/MapExamples.kt#L45) ↓ [Output](#ex-map-only-2)
+↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/MapExamples.kt#L34) ↓ [Output](#ex-map-only-2)
```text
I expected subject: {a=1, b=2} (java.util.LinkedHashMap <1234789>)
@@ -1442,7 +1442,7 @@ again provide two overloads, one expecting key-value `Pair`s:
```kotlin
expect(mapOf("a" to 1, "b" to 2)).toContain.inOrder.only.entries("b" to 2, "a" to 1)
```
-↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/MapExamples.kt#L54) ↓ [Output](#ex-map-builder-1)
+↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/MapExamples.kt#L43) ↓ [Output](#ex-map-builder-1)
```text
I expected subject: {a=1, b=2} (java.util.LinkedHashMap <1234789>)
@@ -1469,7 +1469,7 @@ expect(mapOf("a" to 1, "b" to 2)).toContain.inOrder.only.entries(
KeyValue("a") { toBeLessThan(2) },
KeyValue("b") { toBeLessThan(2) })
```
-↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/MapExamples.kt#L59) ↓ [Output](#ex-map-builder-2)
+↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/MapExamples.kt#L48) ↓ [Output](#ex-map-builder-2)
```text
I expected subject: {a=1, b=2} (java.util.LinkedHashMap <1234789>)
@@ -1506,7 +1506,7 @@ expect(mapOf("bernstein" to bernstein))
feature { f(it::firstName) }.toEqual("Albert")
}
```
-↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/MapExamples.kt#L70) ↓ [Output](#ex-map-3)
+↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/MapExamples.kt#L59) ↓ [Output](#ex-map-3)
```text
I expected subject: {bernstein=Person(firstName=Leonard, lastName=Bernstein, age=50)} (java.util.Collections.SingletonMap <1234789>)
@@ -1526,7 +1526,7 @@ expect(mapOf("a" to 1, "b" to 2)) {
values { toHaveElementsAndNone { toBeGreaterThan(1) } }
}
```
-↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/MapExamples.kt#L84) ↓ [Output](#ex-map-4)
+↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/MapExamples.kt#L73) ↓ [Output](#ex-map-4)
```text
I expected subject: {a=1, b=2} (java.util.LinkedHashMap <1234789>)
@@ -1562,7 +1562,7 @@ expect(linkedMapOf("a" to 1, "b" to 2)).asEntries().toContain.inOrder.only.entri
}
)
```
-↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/MapExamples.kt#L92) ↓ [Output](#ex-map-5)
+↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/MapExamples.kt#L81) ↓ [Output](#ex-map-5)
```text
I expected subject: {a=1, b=2} (java.util.LinkedHashMap <1234789>)
@@ -1600,7 +1600,7 @@ For example, `toExist` will explain which entry was the first one missing:
```kotlin
expect(Paths.get("/usr/bin/noprogram")).toExist()
```
-↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/PathExamples.kt#L43) ↓ [Output](#ex-path-exists)
+↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/PathExamples.kt#L31) ↓ [Output](#ex-path-exists)
```text
I expected subject: /usr/bin/noprogram (sun.nio.fs.UnixPath <1234789>)
@@ -1616,7 +1616,7 @@ Atrium will give details about why something cannot be accessed, for example whe
```kotlin
expect(Paths.get("/root/.ssh/config")).toBeWritable()
```
-↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/PathExamples.kt#L48) ↓ [Output](#ex-path-writable)
+↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/PathExamples.kt#L36) ↓ [Output](#ex-path-writable)
```text
I expected subject: /root/.ssh/config (sun.nio.fs.UnixPath <1234789>)
@@ -1639,7 +1639,7 @@ val filePointer = Files.createSymbolicLink(directory.resolve("directory"), file)
expect(filePointer.resolve("subfolder/file")).toBeARegularFile()
```
-↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/PathExamples.kt#L53) ↓ [Output](#ex-path-symlink-and-parent-not-folder)
+↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/PathExamples.kt#L41) ↓ [Output](#ex-path-symlink-and-parent-not-folder)
```text
I expected subject: /tmp/atrium-path/directory/subfolder/file (sun.nio.fs.UnixPath <1234789>)
@@ -1663,7 +1663,7 @@ expect("filename?")
notToContain("?")
}
```
-↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/MostExamples.kt#L107) ↓ [Output](#ex-because-1)
+↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/MostExamples.kt#L96) ↓ [Output](#ex-because-1)
```text
I expected subject: "filename?" <1234789>
@@ -1724,7 +1724,7 @@ expect(listOf(1, 2, 3, -1)).toHaveElementsAndAll {
}
}
```
-↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/ThirdPartyExamples.kt#L35) ↓ [Output](#ex-third-party-1)
+↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/ThirdPartyExamples.kt#L24) ↓ [Output](#ex-third-party-1)
```text
I expected subject: [1, 2, 3, -1] (java.util.Arrays.ArrayList <1234789>)
@@ -1757,7 +1757,7 @@ fun Expect.notToBeNegative() =
expect(-10).notToBeNegative()
```
-↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/ThirdPartyExamples.kt#L45) ↓ [Output](#ex-third-party-2)
+↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/ThirdPartyExamples.kt#L34) ↓ [Output](#ex-third-party-2)
```text
I expected subject: -10 (kotlin.Int <1234789>)
@@ -1770,10 +1770,10 @@ to be greater than or equal to:
0
" <1234789>
» stacktrace:
- ⚬ readme.examples.ThirdPartyExamples$ex-third-party-2$notToBeNegative$1.invoke(ThirdPartyExamples.kt:49)
- ⚬ readme.examples.ThirdPartyExamples$ex-third-party-2$notToBeNegative$1.invoke(ThirdPartyExamples.kt:47)
- ⚬ readme.examples.ThirdPartyExamples.ex_third_party_2$notToBeNegative(ThirdPartyExamples.kt:47)
- ⚬ readme.examples.ThirdPartyExamples.ex-third-party-2(ThirdPartyExamples.kt:59)
+ ⚬ readme.examples.ThirdPartyExamples$ex-third-party-2$notToBeNegative$1.invoke(ThirdPartyExamples.kt:38)
+ ⚬ readme.examples.ThirdPartyExamples$ex-third-party-2$notToBeNegative$1.invoke(ThirdPartyExamples.kt:36)
+ ⚬ readme.examples.ThirdPartyExamples.ex_third_party_2$notToBeNegative(ThirdPartyExamples.kt:36)
+ ⚬ readme.examples.ThirdPartyExamples.ex-third-party-2(ThirdPartyExamples.kt:48)
⚬ java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
⚬ java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
⚬ java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
@@ -1805,7 +1805,7 @@ fun Expect.notToBeNegative() =
expect(-10).notToBeNegative()
```
-↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/ThirdPartyExamples.kt#L63) ↓ [Output](#ex-third-party-3)
+↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/ThirdPartyExamples.kt#L52) ↓ [Output](#ex-third-party-3)
```text
I expected subject: -10 (kotlin.Int <1234789>)
@@ -1845,7 +1845,7 @@ expectGrouped {
}
}
```
-↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/DataDrivenExamples.kt#L31) ↓ [Output](#ex-data-driven-1)
+↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/DataDrivenExamples.kt#L20) ↓ [Output](#ex-data-driven-1)
```text
my expectations:
@@ -1888,7 +1888,7 @@ expectGrouped {
}
}
```
-↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/DataDrivenExamples.kt#L48) ↓ [Output](#ex-data-driven-2)
+↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/DataDrivenExamples.kt#L37) ↓ [Output](#ex-data-driven-2)
```text
my expectations:
@@ -1933,7 +1933,7 @@ expectGrouped {
}
}
```
-↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/DataDrivenExamples.kt#L87) ↓ [Output](#ex-data-driven-nesting)
+↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/DataDrivenExamples.kt#L76) ↓ [Output](#ex-data-driven-nesting)
```text
my expectations:
@@ -1980,7 +1980,7 @@ expectGrouped {
}
}
```
-↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/DataDrivenExamples.kt#L67) ↓ [Output](#ex-data-driven-3)
+↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/DataDrivenExamples.kt#L56) ↓ [Output](#ex-data-driven-3)
```text
my expectations:
@@ -2099,7 +2099,7 @@ expect {
}
}.toThrow { messageToContain("no no no") }
```
-↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/MostExamples.kt#L123) ↓ [Output](#ex-add-info-3)
+↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/MostExamples.kt#L112) ↓ [Output](#ex-add-info-3)
```text
I expected subject: () -> kotlin.Nothing (readme.examples.MostExamples$ex-add-info-3$1 <1234789>)
@@ -2113,9 +2113,9 @@ I expected subject: () -> kotlin.Nothing (readme.examples.MostExamples$ex
ℹ Properties of the unexpected IllegalArgumentException
» message: "no no no..." <1234789>
» stacktrace:
- ⚬ readme.examples.MostExamples$ex-add-info-3$1.invoke(MostExamples.kt:128)
- ⚬ readme.examples.MostExamples$ex-add-info-3$1.invoke(MostExamples.kt:124)
- ⚬ readme.examples.MostExamples.ex-add-info-3(MostExamples.kt:159)
+ ⚬ readme.examples.MostExamples$ex-add-info-3$1.invoke(MostExamples.kt:117)
+ ⚬ readme.examples.MostExamples$ex-add-info-3$1.invoke(MostExamples.kt:113)
+ ⚬ readme.examples.MostExamples.ex-add-info-3(MostExamples.kt:148)
⚬ java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
⚬ java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
⚬ java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
@@ -2123,7 +2123,7 @@ I expected subject: () -> kotlin.Nothing (readme.examples.MostExamples$ex
» cause: java.lang.UnsupportedOperationException
» message: "not supported" <1234789>
» stacktrace:
- ⚬ readme.examples.MostExamples$ex-add-info-3$1.invoke(MostExamples.kt:126)
+ ⚬ readme.examples.MostExamples$ex-add-info-3$1.invoke(MostExamples.kt:115)
```
@@ -2144,7 +2144,7 @@ then Atrium reminds us of the possible pitfall. For instance:
```kotlin
expect(BigDecimal.TEN).toEqualIncludingScale(BigDecimal("10.0"))
```
-↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/MostExamples.kt#L134) ↓ [Output](#ex-pitfall-1)
+↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/MostExamples.kt#L123) ↓ [Output](#ex-pitfall-1)
```text
I expected subject: 10 (java.math.BigDecimal <1234789>)
@@ -2162,7 +2162,7 @@ For instance:
```kotlin
expect(listOf(1)).get(0) {}
```
-↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/MostExamples.kt#L138) ↓ [Output](#ex-pitfall-2)
+↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/MostExamples.kt#L127) ↓ [Output](#ex-pitfall-2)
```text
I expected subject: [1] (java.util.Collections.SingletonList <1234789>)
@@ -2225,7 +2225,7 @@ and its usage:
```kotlin
expect(12).toBeAMultipleOf(5)
```
-↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/OwnExpectationFunctions.kt#L45) ↓ [Output](#ex-own-boolean-1)
+↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/OwnExpectationFunctions.kt#L33) ↓ [Output](#ex-own-boolean-1)
```text
I expected subject: 12 (kotlin.Int <1234789>)
@@ -2273,7 +2273,7 @@ Its usage looks then as follows:
```kotlin
expect(13).toBeEven()
```
-↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/OwnExpectationFunctions.kt#L60) ↓ [Output](#ex-own-boolean-2)
+↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/OwnExpectationFunctions.kt#L48) ↓ [Output](#ex-own-boolean-2)
```text
I expected subject: 13 (kotlin.Int <1234789>)
@@ -2302,7 +2302,7 @@ fun Expect.toComplyValidation() =
expect(MyDomainModel(alpha1 = 1204)).toComplyValidation()
```
-↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/ThirdPartyExamples.kt#L90) ↓ [Output](#ex-third-party-10)
+↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/ThirdPartyExamples.kt#L79) ↓ [Output](#ex-third-party-10)
```text
I expected subject: MyDomainModel(alpha1=1204) (readme.examples.ThirdPartyExamples.MyDomainModel <1234789>)
@@ -2310,11 +2310,11 @@ I expected subject: MyDomainModel(alpha1=1204) (readme.examples.ThirdPart
ℹ Properties of the unexpected IllegalStateException
» message: "threshold value for alpha1 exceeded, expected <= 1000, was 1204" <1234789>
» stacktrace:
- ⚬ readme.examples.ThirdPartyExamples.validateMaxThreshold(ThirdPartyExamples.kt:86)
- ⚬ readme.examples.ThirdPartyExamples$ex-third-party-10$toComplyValidation$1.invoke(ThirdPartyExamples.kt:94)
- ⚬ readme.examples.ThirdPartyExamples$ex-third-party-10$toComplyValidation$1.invoke(ThirdPartyExamples.kt:92)
- ⚬ readme.examples.ThirdPartyExamples.ex_third_party_10$toComplyValidation(ThirdPartyExamples.kt:92)
- ⚬ readme.examples.ThirdPartyExamples.ex-third-party-10(ThirdPartyExamples.kt:98)
+ ⚬ readme.examples.ThirdPartyExamples.validateMaxThreshold(ThirdPartyExamples.kt:75)
+ ⚬ readme.examples.ThirdPartyExamples$ex-third-party-10$toComplyValidation$1.invoke(ThirdPartyExamples.kt:83)
+ ⚬ readme.examples.ThirdPartyExamples$ex-third-party-10$toComplyValidation$1.invoke(ThirdPartyExamples.kt:81)
+ ⚬ readme.examples.ThirdPartyExamples.ex_third_party_10$toComplyValidation(ThirdPartyExamples.kt:81)
+ ⚬ readme.examples.ThirdPartyExamples.ex-third-party-10(ThirdPartyExamples.kt:87)
⚬ java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
⚬ java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
⚬ java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
@@ -2409,7 +2409,7 @@ Its usage is then as follows:
expect(Person("Susanne", "Whitley", 43, emptyList()))
.toHaveNumberOfChildren(2)
```
-↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/OwnExpectationFunctions.kt#L79) ↓ [Output](#ex-own-compose-3)
+↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/OwnExpectationFunctions.kt#L67) ↓ [Output](#ex-own-compose-3)
```text
I expected subject: Person(firstName=Susanne, lastName=Whitley, age=43, children=[]) (readme.examples.Person <1234789>)
@@ -2445,7 +2445,7 @@ I.e. it fails for a `Person` with 0 children, because such a person does not hav
expect(Person("Susanne", "Whitley", 43, emptyList()))
.toHaveAdultChildren()
```
-↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/OwnExpectationFunctions.kt#L98) ↓ [Output](#ex-own-compose-4)
+↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/OwnExpectationFunctions.kt#L86) ↓ [Output](#ex-own-compose-4)
```text
I expected subject: Person(firstName=Susanne, lastName=Whitley, age=43, children=[]) (readme.examples.Person <1234789>)
@@ -2491,7 +2491,7 @@ expect(Person("Susanne", "Whitley", 43, listOf(Person("Petra", "Whitley", 12, em
feature { f(it::age) }.toBeGreaterThan(18)
}
```
-↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/OwnExpectationFunctions.kt#L109) ↓ [Output](#ex-own-compose-5)
+↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/OwnExpectationFunctions.kt#L97) ↓ [Output](#ex-own-compose-5)
```text
I expected subject: Person(firstName=Susanne, lastName=Whitley, age=43, children=[Person(firstName=Petra, lastName=Whitley, age=12, children=[])]) (readme.examples.Person <1234789>)
@@ -2672,7 +2672,7 @@ Following an example using the expectation verb
```kotlin
expect(10).toEqual(9)
```
-↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/OwnExpectationVerb.kt#L52) ↓ [Output](#ex-own-expectation-verb)
+↑ [Example](https://github.com/robstoll/atrium/tree/main/misc/tools/readme-examples/src/main/kotlin/readme/examples/OwnExpectationVerb.kt#L40) ↓ [Output](#ex-own-expectation-verb)
```text
expected the subject: