diff --git a/src/main/kotlin/com/bitkid/itsfranking/ITSFData.kt b/src/main/kotlin/com/bitkid/itsfranking/ITSFData.kt index d10c2f3..0442a28 100644 --- a/src/main/kotlin/com/bitkid/itsfranking/ITSFData.kt +++ b/src/main/kotlin/com/bitkid/itsfranking/ITSFData.kt @@ -11,6 +11,14 @@ data class ITSFPlayer( fun hasFemaleRanking(): Boolean { return rankings[Categories.womenDoubles] != null || rankings[Categories.womenSingles] != null } + + fun hasJuniorRankings(): Boolean { + return rankings[Categories.juniorDoubles] != null || rankings[Categories.juniorSingles] != null || rankings[Categories.classicJunior] != null + } + + fun hasSeniorRankings(): Boolean { + return rankings[Categories.seniorDoubles] != null || rankings[Categories.seniorSingles] != null || rankings[Categories.classicSenior] != null + } } data class PlayerNameWithResults(val playerName: String, val results: List) diff --git a/src/test/kotlin/com/bitkid/itsfranking/ITSFPlayerDatabaseReaderTest.kt b/src/test/kotlin/com/bitkid/itsfranking/ITSFPlayerDatabaseReaderTest.kt index 4837fa4..3fe1045 100644 --- a/src/test/kotlin/com/bitkid/itsfranking/ITSFPlayerDatabaseReaderTest.kt +++ b/src/test/kotlin/com/bitkid/itsfranking/ITSFPlayerDatabaseReaderTest.kt @@ -8,10 +8,7 @@ import org.apache.commons.codec.language.bm.RuleType import org.junit.jupiter.api.Disabled import org.junit.jupiter.api.Test import strikt.api.expectThat -import strikt.assertions.hasSize -import strikt.assertions.isEqualTo -import strikt.assertions.isGreaterThan -import strikt.assertions.isTrue +import strikt.assertions.* import java.io.File class ITSFPlayerDatabaseReaderTest { @@ -44,4 +41,17 @@ class ITSFPlayerDatabaseReaderTest { expectThat(players.matchesName(engine.encode(simon.name), engine.encode("varos").split("|"))).isTrue() expectThat(players.find("varos").size).isGreaterThan(1) } + + @Test + fun `player tests`() { + expectThat(players.find("pintilii").single().hasFemaleRanking()).isTrue() + expectThat(players.find("pintilii").single().hasJuniorRankings()).isFalse() + expectThat(players.find("pintilii").single().hasSeniorRankings()).isFalse() + + expectThat(players.find("guscheh").single().hasSeniorRankings()).isFalse() + expectThat(players.find("guscheh").single().hasJuniorRankings()).isFalse() + expectThat(players.find("guscheh").single().hasFemaleRanking()).isFalse() + + expectThat(players.find("bentivoglio").single().hasSeniorRankings()).isTrue() + } } \ No newline at end of file