44 lines
915 B
Go
44 lines
915 B
Go
|
// utils_test.go -- Test harness utilities for sign
|
||
|
//
|
||
|
// (c) 2016 Sudhi Herle <sudhi@herle.net>
|
||
|
//
|
||
|
// Licensing Terms: GPLv2
|
||
|
//
|
||
|
// If you need a commercial license for this work, please contact
|
||
|
// the author.
|
||
|
//
|
||
|
// This software does not come with any express or implied
|
||
|
// warranty; it is provided "as is". No claim is made to its
|
||
|
// suitability for any purpose.
|
||
|
|
||
|
package sign
|
||
|
|
||
|
import (
|
||
|
"crypto/subtle"
|
||
|
"fmt"
|
||
|
"runtime"
|
||
|
"testing"
|
||
|
)
|
||
|
|
||
|
func newAsserter(t *testing.T) func(cond bool, msg string, args ...interface{}) {
|
||
|
return func(cond bool, msg string, args ...interface{}) {
|
||
|
if cond {
|
||
|
return
|
||
|
}
|
||
|
|
||
|
_, file, line, ok := runtime.Caller(1)
|
||
|
if !ok {
|
||
|
file = "???"
|
||
|
line = 0
|
||
|
}
|
||
|
|
||
|
s := fmt.Sprintf(msg, args...)
|
||
|
t.Fatalf("%s: %d: Assertion failed: %s\n", file, line, s)
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// Return true if two byte arrays are equal
|
||
|
func byteEq(x, y []byte) bool {
|
||
|
return subtle.ConstantTimeCompare(x, y) == 1
|
||
|
}
|