scalacheck generate a complex class
case class MyCaseClass(e: SomeEnum, l: Long, d: SomeDouble)
def ratiosGen: Gen[MyCaseClass] = for {
e <- Gen.oneOf(Seq(State.ALWAYS, State.NONE, State.NEVER, null)) // one of the items.
l <- Arbitrary.arbitrary[Long]
d <- Arbitrary.arbitrary[Double]
} yield MyCaseClass(e, l, d)