import Ġutils . configure Tests Ċ import Ġutils . project Version Ċ import Ġutils . publication Channels Ċ Ċ // ĠCopyright Ġ 2 0 2 1 ĠP ants Ġproject Ġcontributors Ġ( see ĠCONTRIBUTORS . md ). Ċ // ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( see ĠLICENSE ). Ċ Ċ plugins Ġ{ ĊĠĠĠ Ġscala ĊĠĠĠ Ġid (" org . jetbrains . intellij ") Ġversion Ġ" 1 . 1 . 6 " Ċ } Ċ Ċ group Ġ= Ġ" com . intellij . plugins " Ċ version Ġ= Ġproject Version Ċ Ċ all projects Ġ{ ĊĠĠĠ Ġrepositories Ġ{ ĊĠĠĠĠĠĠĠ Ġmaven Central () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġplugin Manager . with Plugin (" org . jetbrains . intellij ") Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġidea Version : ĠString Ġby Ġproject ĊĠĠĠĠĠĠĠ Ġval Ġscala Plugin Version : ĠString Ġby Ġproject ĊĠĠĠĠĠĠĠ Ġint ellij Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtype . set (" IC ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġversion . set ( idea Version ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġplugins . set ( listOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" com . intellij . properties ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" org . intellij . groovy ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" com . intellij . gradle ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" com . intellij . java ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Python Core :$ idea Version ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" org . intellij . scala :$ scala Plugin Version ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" JUnit ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĠĠĠ Ġtasks Ġ{ ĊĠĠĠĠĠĠĠ Ġwith Type < Java Compile > Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsource Compatibility Ġ= Ġ" 1 . 8 " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtarget Compatibility Ġ= Ġ" 1 . 8 " ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ Ċ dependencies Ġ{ ĊĠĠĠ Ġval Ġscala Version : ĠString Ġby Ġproject ĊĠĠĠ Ġimplementation ( project (": common ")) ĊĠĠĠ Ġcompile Only (" org . scala - lang : scala - library :$ scala Version ") ĊĊĠĠĠ Ġtest Implementation ( project (": test Framework ")) ĊĠĠĠ Ġtest Compile Only (" org . scala - lang : scala - library :$ scala Version ") Ċ } Ċ Ċ tasks Ġ{ ĊĠĠĠ Ġpatch Plugin Xml Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġplugin Since Build : ĠString Ġby Ġproject ĊĠĠĠĠĠĠĠ Ġval Ġplugin Until Build : ĠString Ġby Ġproject ĊĠĠĠĠĠĠĠ Ġsince Build . set ( plugin Since Build ) ĊĠĠĠĠĠĠĠ Ġuntil Build . set ( plugin Until Build ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġval Ġseparate Tests Ġby Ġregistering ( Test :: class ) Ġ{ ĊĠĠĠĠĠĠĠ Ġ// ĠThose Ġtests Ġhave Ġto Ġrun Ġseparately Ġdue Ġto Ġthe Ġreuse Ġof Ġthe Ġproject Ġbetween Ġtests ĊĠĠĠĠĠĠĠ Ġgroup Ġ= Ġ" verification " ĊĊĠĠĠĠĠĠĠ Ġconfigure Tests () ĊĠĠĠĠĠĠĠ Ġset Fork Every ( 1 ) ĊĊĠĠĠĠĠĠĠ Ġfilter Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġinclude Tests Matching (" *. P ants Project Cache Test ") ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġtest Ġ{ ĊĠĠĠĠĠĠĠ Ġconfigure Tests () ĊĊĠĠĠĠĠĠĠ Ġdo First Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠFor Ġtests / com / twitter / intellij / p ants / integration / Whole Repo IntegrationTest . java ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfile (". cache / dummy _ repo "). take If Ġ{ Ġit . exists () Ġ} ?. delete Re cursively () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfile (" src / test / resources / testData / dummy _ repo "). copy Re cursively ( file (". cache / dummy _ repo "), Ġoverwrite Ġ= Ġtrue ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfile (". cache / dummy _ repo / p ants "). set Executable ( true ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠRemove ĠIntelliJ Ġindex Ġcache . ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfile (". cache / intellij /*/ idea - dist / system / cache s / "). take If Ġ{ Ġit . exists () Ġ} ?. delete Re cursively () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġfilter Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġexclude Tests Matching (" *. P ants Project Cache Test ") ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġfinal ized By ( separate Tests ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġpublish Plugin Ġ{ ĊĠĠĠĠĠĠĠ Ġchannels . set ( publication Channels ) ĊĠĠĠĠĠĠĠ ĠSystem . getenv (" TOKEN ") ?. take If Ġ{ Ġit . isNotBlank () Ġ} ?. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtoken . set ( it ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ