package Ġorg . mon sim . impl . util Ċ Ċ import Ġmu . Kotlin Logging Ċ import Ġorg . junit . jupiter . api . Assertions . assertEquals Ċ import Ġorg . junit . jupiter . api . Test Ċ import Ġorg . mon sim . bean . type . Space Type Ċ import Ġorg . mon sim . api . util . Space Classifier Ċ import Ġorg . mon sim . bean . domain . Game Ċ import Ġorg . mon sim . bean . type . Space Type . PROPERTY Ċ import Ġorg . mon sim . bean . type . Space Type . CARD Ċ import Ġorg . mon sim . bean . type . Space Type . T AX Ċ import Ġorg . mon sim . bean . type . Space Type . J AIL Ċ import Ġorg . mon sim . bean . type . Space Type . FREE Ċ import Ġorg . mon sim . bean . type . Space Type . GO _ TO _ J AIL Ċ import Ġorg . mon sim . bean . type . Space Type . GO ĊĊ Ċ class ĠSpace Classifier Test Ġ{ ĊĠĠĠ Ġprivate Ġval Ġlog Ġ= ĠKotlin Logging . logger Ġ{} ĊĊĠĠĠ Ġprivate Ġval Ġspace Classifier : ĠSpace Classifier Ġ= ĠSpace Classifier Impl () ĊĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġclassify Spaces () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġgame Ġ= ĠGame () ĊĊĠĠĠĠĠĠĠ Ġval Ġspace Types Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠlistOf ( GO , ĠPROPERTY , ĠC ARD , ĠPROPERTY , ĠT AX , ĠPROPERTY , ĠPROPERTY , ĠC ARD , ĠPROPERTY , ĠPROPERTY , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠJ AIL , ĠPROPERTY , ĠPROPERTY , ĠPROPERTY , ĠPROPERTY , ĠPROPERTY , ĠPROPERTY , ĠC ARD , ĠPROPERTY , ĠPROPERTY , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠFREE , ĠPROPERTY , ĠC ARD , ĠPROPERTY , ĠPROPERTY , ĠPROPERTY , ĠPROPERTY , ĠPROPERTY , ĠPROPERTY , ĠPROPERTY , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠGO _ TO _ J AIL , ĠPROPERTY , ĠPROPERTY , ĠC ARD , ĠPROPERTY , ĠPROPERTY , ĠC ARD , ĠPROPERTY , ĠT AX , ĠPROPERTY ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġexpected Ġ= Ġmutable Map Of < Int , ĠSet < Space Type >>() ĊĠĠĠĠĠĠĠ Ġspace Types . forEach Indexed Ġ{ Ġindex , Ġspace Type Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġexpected . put ( 1 0 0 1 Ġ+ Ġindex , Ġset Of ( space Type )) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġval Ġspace Types Map Ġ= Ġspace Classifier . classify Spaces ( game ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( expected , Ġspace Types Map ) ĊĊĠĠĠ Ġ} Ċ }