scalaprops / scalaprops-magnolia   0.7.0

MIT License GitHub

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

Scala versions: 2.13 2.12
Scala.js versions: 1.x 0.6

scalaprops-magnolia

scaladoc

build.sbt

for jvm

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

for scala-js

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

example

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 !