package Ġorg . h ild an . s udoku . solver . back tracking Ċ Ċ import Ġorg . h ild an . s udoku . checker . Check Result Ċ import Ġorg . h ild an . s udoku . checker . check Ċ import Ġorg . h ild an . s udoku . model . Grid Ċ import Ġorg . junit . jupiter . api . parallel . Execution Ċ import Ġorg . junit . jupiter . api . parallel . Execution Mode Ċ import Ġorg . junit . jupiter . params . Parameterized Test Ċ import Ġorg . junit . jupiter . params . provider . Method Source Ċ import Ġjava . nio . file . Path Ċ import Ġkotlin . io . path . Path Ċ import Ġkotlin . io . path . list Directory Entries Ċ import Ġkotlin . io . path . use Lines Ċ import Ġkotlin . system . measure Time Millis Ċ import Ġkotlin . test . assertEquals Ċ import Ġkotlin . time . Duration . Companion . milliseconds Ċ Ċ @ Execution ( Execution Mode . CON CURRENT ) Ċ class ĠBack tracking Solver Test Ġ{ ĊĊĠĠĠ Ġ@ Parameterized Test ĊĠĠĠ Ġ@ Method Source (" personal P uzz les ") ĊĠĠĠ Ġfun Ġtest Personal P uzz les ( pu zz les File : ĠPath ) Ġ{ ĊĠĠĠĠĠĠĠ Ġtest All P uzz les In ( pu zz les File ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Parameterized Test ĊĠĠĠ Ġ@ Method Source (" standard P uzz les ") ĊĠĠĠ Ġfun Ġtest Standard P uzz les ( pu zz les File : ĠPath ) Ġ{ ĊĠĠĠĠĠĠĠ Ġtest All P uzz les In ( pu zz les File ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġtest All P uzz les In ( pu zz les File : ĠPath ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġavg Time Ġ= Ġp uzz les File . use Lines Ġ{ Ġgrids Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgrids . map Ġ{ Ġencoded Grid Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmeasure Time Millis Ġ{ Ġsolve And Check ( encoded Grid ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}. average (). milliseconds ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġprintln (" Average Ġtime Ġ$ avg Time / grid Ġfor Ġ$ pu zz les File ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġsolve And Check ( encoded Grid : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġgrid Ġ= ĠGrid ( encoded Grid ) ĊĠĠĠĠĠĠĠ Ġgrid . solve With Back tracking () ĊĠĠĠĠĠĠĠ ĠassertEquals ( Check Result . Valid , Ġgrid . check ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĊĠĠĠĠĠĠĠ Ġ@ Jvm Static ĊĠĠĠĠĠĠĠ Ġfun Ġpersonal P uzz les (): ĠList < Path > Ġ= ĠPath (" dataset / personal "). list Directory Entries () ĊĊĠĠĠĠĠĠĠ Ġ@ Jvm Static ĊĠĠĠĠĠĠĠ Ġfun Ġstandard P uzz les (): ĠList < Path > Ġ= ĠPath (" dataset / standard "). list Directory Entries (" pu zz les *. txt ") ĊĠĠĠ Ġ} Ċ } Ċ