scalaprops / scalaprops-magnolia

Generation of arbitrary case classes / ADTs instances with Scalaprops and Magnolia

Version Matrix


Build Status scaladoc


for jvm

libraryDependencies += "com.github.scalaprops" %% "scalaprops-magnolia" % "0.6.2"

for scala-js

libraryDependencies += "com.github.scalaprops" %%% "scalaprops-magnolia" % "0.6.2"


Import the content of scalaprop.ScalapropsMagnolia close to where you want scalaprops.Gen type classes to be automatically available for case classes / sealed hierarchies,

import scalaprops.{Gen, Cogen}
import scalaprops.ScalapropsMagnoliaGen._
import scalaprops.ScalapropsMagnoliaCogen._

sealed trait X 
case class Y(value: Boolean) extends X
case class Z(value: Int) extends X

Gen[X] // automatically available Gen[X] instance !
Cogen[X] // automatically available Cogen[X] instance !