PoisonedYouth
09/09/2023, 11:53 AM@Test
fun `properties are declared before functions`() {
Konsist
.scopeFromProject()
.classes()
.assert {
val lastKoPropertyDeclarationIndex = it
.declarations()
.indexOfLastInstance<KoPropertyDeclaration>()
val firstKoFunctionDeclarationIndex = it
.declarations()
.indexOfFirstInstance<KoFunctionDeclaration>()
lastKoPropertyDeclarationIndex <= firstKoFunctionDeclarationIndex
}
}
And there are issues with my data classes:
public data class Account(
val id: Identity,
val name: String
)
What I'm doing wrong?Natalia Peterwas
09/11/2023, 8:31 AMassert
will works fine:
@Test
fun `properties are declared before functions`() {
Konsist
.scopeFromProject()
.classes()
.assert {
val lastKoPropertyDeclarationIndex = it
.declarations()
.indexOfLastInstance<KoPropertyDeclaration>()
val firstKoFunctionDeclarationIndex = it
.declarations()
.indexOfFirstInstance<KoFunctionDeclaration>()
if (lastKoPropertyDeclarationIndex != -1 && firstKoFunctionDeclarationIndex != -1) {
lastKoPropertyDeclarationIndex < firstKoFunctionDeclarationIndex
} else {
true
}
}
We will update this snippet in the next release.PoisonedYouth
09/11/2023, 8:36 AM