mirror of https://github.com/sbt/sbt.git
Extract withScope
This commit is contained in:
parent
9b526f54bf
commit
5b03379693
|
|
@ -57,29 +57,20 @@ object BuildDSLInstances {
|
|||
implicit def arbAttrKey[A: Manifest]: Arbitrary[AttributeKey[_]] =
|
||||
Arbitrary(Gen.identifier map (AttributeKey[A](_)))
|
||||
|
||||
implicit def arbInputKey[A: Manifest]: Arbitrary[InputKey[A]] = Arbitrary {
|
||||
val keyGen = Gen.identifier map (InputKey[A](_))
|
||||
Gen.frequency(
|
||||
def withScope[K <: Scoped.ScopingSetting[K]](keyGen: Gen[K]): Arbitrary[K] =
|
||||
Arbitrary(Gen.frequency(
|
||||
50 -> keyGen,
|
||||
1 -> (for (key <- keyGen; scope <- arbitrary[Scope]) yield key in scope)
|
||||
)
|
||||
}
|
||||
))
|
||||
|
||||
implicit def arbSettingKey[A: Manifest]: Arbitrary[SettingKey[A]] = Arbitrary {
|
||||
val keyGen = Gen.identifier map (SettingKey[A](_))
|
||||
Gen.frequency(
|
||||
50 -> keyGen,
|
||||
1 -> (for (key <- keyGen; scope <- arbitrary[Scope]) yield key in scope)
|
||||
)
|
||||
}
|
||||
implicit def arbInputKey[A: Manifest]: Arbitrary[InputKey[A]] =
|
||||
withScope(Gen.identifier map (InputKey[A](_)))
|
||||
|
||||
implicit def arbTaskKey[A: Manifest]: Arbitrary[TaskKey[A]] = Arbitrary {
|
||||
val keyGen = Gen.identifier map (TaskKey[A](_))
|
||||
Gen.frequency(
|
||||
50 -> keyGen,
|
||||
1 -> (for (key <- keyGen; scope <- arbitrary[Scope]) yield key in scope)
|
||||
)
|
||||
}
|
||||
implicit def arbSettingKey[A: Manifest]: Arbitrary[SettingKey[A]] =
|
||||
withScope(Gen.identifier map (SettingKey[A](_)))
|
||||
|
||||
implicit def arbTaskKey[A: Manifest]: Arbitrary[TaskKey[A]] =
|
||||
withScope(Gen.identifier map (TaskKey[A](_)))
|
||||
|
||||
implicit def arbKey[A: Manifest]: Arbitrary[Key[_]] = Arbitrary {
|
||||
Gen.frequency[Key[_]](
|
||||
|
|
|
|||
Loading…
Reference in New Issue