var err error
switch {
case tt.oneArgF != nil:
- err = quick.Check(checkAliasingOneArg(tt.oneArgF), &quick.Config{MaxCountScale: 1 << 8})
+ err = quick.Check(checkAliasingOneArg(tt.oneArgF), quickCheckConfig(256))
case tt.twoArgsF != nil:
- err = quick.Check(checkAliasingTwoArgs(tt.twoArgsF), &quick.Config{MaxCountScale: 1 << 8})
+ err = quick.Check(checkAliasingTwoArgs(tt.twoArgsF), quickCheckConfig(256))
}
if err != nil {
t.Errorf("%v: %v", tt.name, err)
return hex.EncodeToString(v.Bytes())
}
-// quickCheckConfig1024 will make each quickcheck test run (1024 * -quickchecks)
-// times. The default value of -quickchecks is 100.
-var quickCheckConfig1024 = &quick.Config{MaxCountScale: 1 << 10}
+// quickCheckConfig returns a quick.Config that scales the max count by the
+// given factor if the -short flag is not set.
+func quickCheckConfig(slowScale int) *quick.Config {
+ cfg := new(quick.Config)
+ if !testing.Short() {
+ cfg.MaxCountScale = float64(slowScale)
+ }
+ return cfg
+}
func generateFieldElement(rand *mathrand.Rand) Element {
const maskLow52Bits = (1 << 52) - 1
return t1.Equal(t2) == 1 && isInBounds(t1) && isInBounds(t2)
}
- if err := quick.Check(multiplyDistributesOverAdd, quickCheckConfig1024); err != nil {
+ if err := quick.Check(multiplyDistributesOverAdd, quickCheckConfig(1024)); err != nil {
t.Error(err)
}
}
return t1.Equal(t2) == 1 && isInBounds(t1) && isInBounds(t2)
}
- if err := quick.Check(mult32EquivalentToMul, quickCheckConfig1024); err != nil {
+ if err := quick.Check(mult32EquivalentToMul, quickCheckConfig(1024)); err != nil {
t.Error(err)
}
}
return *t1 == *t2 && isInBounds(t2)
}
- if err := quick.Check(asmLikeGeneric, quickCheckConfig1024); err != nil {
+ if err := quick.Check(asmLikeGeneric, quickCheckConfig(1024)); err != nil {
t.Error(err)
}
return t1 == t2 && isInBounds(&t2)
}
- if err := quick.Check(asmLikeGeneric, quickCheckConfig1024); err != nil {
+ if err := quick.Check(asmLikeGeneric, quickCheckConfig(1024)); err != nil {
t.Error(err)
}
}
b1 == b2 && isInBounds(&b2)
}
- if err := quick.Check(asmLikeGeneric, quickCheckConfig1024); err != nil {
+ if err := quick.Check(asmLikeGeneric, quickCheckConfig(1024)); err != nil {
t.Error(err)
}
}
}, v, x, y)
},
} {
- err := quick.Check(f, &quick.Config{MaxCountScale: 1 << 5})
+ err := quick.Check(f, quickCheckConfig(32))
if err != nil {
t.Errorf("%v: %v", name, err)
}
"testing/quick"
)
+// quickCheckConfig returns a quick.Config that scales the max count by the
+// given factor if the -short flag is not set.
+func quickCheckConfig(slowScale int) *quick.Config {
+ cfg := new(quick.Config)
+ if !testing.Short() {
+ cfg.MaxCountScale = float64(slowScale)
+ }
+ return cfg
+}
+
var scOneBytes = [32]byte{1}
var scOne, _ = new(Scalar).SetCanonicalBytes(scOneBytes[:])
var scMinusOne, _ = new(Scalar).SetCanonicalBytes(scalarMinusOneBytes[:])
return reflect.ValueOf(val)
}
-// quickCheckConfig1024 will make each quickcheck test run (1024 * -quickchecks)
-// times. The default value of -quickchecks is 100.
-var quickCheckConfig1024 = &quick.Config{MaxCountScale: 1 << 10}
-
func TestScalarGenerate(t *testing.T) {
f := func(sc Scalar) bool {
return isReduced(sc.Bytes())
}
- if err := quick.Check(f, quickCheckConfig1024); err != nil {
+ if err := quick.Check(f, quickCheckConfig(1024)); err != nil {
t.Errorf("generated unreduced scalar: %v", err)
}
}
repr := sc.Bytes()
return bytes.Equal(in[:], repr) && isReduced(repr)
}
- if err := quick.Check(f1, quickCheckConfig1024); err != nil {
+ if err := quick.Check(f1, quickCheckConfig(1024)); err != nil {
t.Errorf("failed bytes->scalar->bytes round-trip: %v", err)
}
}
return sc1 == sc2
}
- if err := quick.Check(f2, quickCheckConfig1024); err != nil {
+ if err := quick.Check(f2, quickCheckConfig(1024)); err != nil {
t.Errorf("failed scalar->bytes->scalar round-trip: %v", err)
}
inBig := bigIntFromLittleEndianBytes(in[:])
return inBig.Mod(inBig, mod).Cmp(scBig) == 0
}
- if err := quick.Check(f, quickCheckConfig1024); err != nil {
+ if err := quick.Check(f, quickCheckConfig(1024)); err != nil {
t.Error(err)
}
}
return t1 == t2 && isReduced(reprT1) && isReduced(reprT2)
}
- if err := quick.Check(multiplyDistributesOverAdd, quickCheckConfig1024); err != nil {
+ if err := quick.Check(multiplyDistributesOverAdd, quickCheckConfig(1024)); err != nil {
t.Error(err)
}
}
return t1 == t2 && isReduced(t1.Bytes())
}
- if err := quick.Check(addLikeSubNeg, quickCheckConfig1024); err != nil {
+ if err := quick.Check(addLikeSubNeg, quickCheckConfig(1024)); err != nil {
t.Error(err)
}
}
)
var (
- // quickCheckConfig32 will make each quickcheck test run (32 * -quickchecks)
- // times. The default value of -quickchecks is 100.
- quickCheckConfig32 = &quick.Config{MaxCountScale: 1 << 5}
-
// a random scalar generated using dalek.
dalekScalar, _ = (&Scalar{}).SetCanonicalBytes([]byte{219, 106, 114, 9, 174, 249, 155, 89, 69, 203, 201, 93, 92, 116, 234, 187, 78, 115, 103, 172, 182, 98, 62, 103, 187, 136, 13, 100, 248, 110, 12, 4})
// the above, times the edwards25519 basepoint.
return check.Equal(&r) == 1
}
- if err := quick.Check(scalarMultDistributesOverAdd, quickCheckConfig32); err != nil {
+ if err := quick.Check(scalarMultDistributesOverAdd, quickCheckConfig(32)); err != nil {
t.Error(err)
}
}
return p.Equal(&q) == 1
}
- if err := quick.Check(scalarMultNonIdentityPoint, quickCheckConfig32); err != nil {
+ if err := quick.Check(scalarMultNonIdentityPoint, quickCheckConfig(32)); err != nil {
t.Error(err)
}
}
return p.Equal(&q) == 1
}
- if err := quick.Check(scalarMultMatchesBaseMult, quickCheckConfig32); err != nil {
+ if err := quick.Check(scalarMultMatchesBaseMult, quickCheckConfig(32)); err != nil {
t.Error(err)
}
}
return p.Equal(&check) == 1
}
- if err := quick.Check(varTimeDoubleBaseMultMatchesBaseMult, quickCheckConfig32); err != nil {
+ if err := quick.Check(varTimeDoubleBaseMultMatchesBaseMult, quickCheckConfig(32)); err != nil {
t.Error(err)
}
}