package wow.doge.mygame import org.scalatest.funsuite.AnyFunSuite import wow.doge.mygame.subsystems.moddingsystem.ModdingSystem import monix.execution.Scheduler.Implicits.global import io.circe.Printer import monix.bio.UIO import cats.syntax.eq._ class ModdingSystemTest extends AnyFunSuite { val printer = Printer.spaces2 test("main") { val io = for { res <- ModdingSystem.run() _ <- UIO( assert( (res.parseSuccesses.length + res.parseFailures.length) eqv res.readSuccesses.length ) ) _ <- ModdingSystem.log(res) } yield res io.attempt.runSyncUnsafe() match { case Left(value) => pprint.log(value); () case Right(value) => () } } }