Add urandom_test to all_tests.json
Change-Id: I4e30bc8b8c1bd1215f516a6c89735782cfbf8ef5
Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/38284
Reviewed-by: Adam Langley <agl@google.com>
Reviewed-by: David Benjamin <davidben@google.com>
Commit-Queue: Adam Langley <agl@google.com>
diff --git a/util/all_tests.go b/util/all_tests.go
index fbff48c..4dd7f2c 100644
--- a/util/all_tests.go
+++ b/util/all_tests.go
@@ -55,6 +55,7 @@
}
type test struct {
+ env []string
args []string
shard, numShards int
// cpu, if not empty, contains a code to simulate. For SDE, run `sde64
@@ -148,7 +149,7 @@
prog := path.Join(*buildDir, test.args[0])
args := append([]string{}, test.args[1:]...)
if *simulateARMCPUs && test.cpu != "" {
- args = append(args, "--cpu=" + test.cpu)
+ args = append(args, "--cpu="+test.cpu)
}
if *useSDE {
// SDE is neither compatible with the unwind tester nor automatically
@@ -167,6 +168,11 @@
} else {
cmd = exec.Command(prog, args...)
}
+ if test.env != nil {
+ cmd.Env = make([]string, len(os.Environ()))
+ copy(cmd.Env, os.Environ())
+ cmd.Env = append(cmd.Env, test.env...)
+ }
var outBuf bytes.Buffer
cmd.Stdout = &outBuf
cmd.Stderr = &outBuf
@@ -258,7 +264,12 @@
var result []test
for _, args := range testArgs {
- result = append(result, test{args: args})
+ var env []string
+ for len(args) > 0 && strings.HasPrefix(args[0], "$") {
+ env = append(env, args[0][1:])
+ args = args[1:]
+ }
+ result = append(result, test{args: args, env: env})
}
return result, nil
}
@@ -272,11 +283,18 @@
}
func (t test) shortName() string {
- return t.args[0] + t.shardMsg() + t.cpuMsg()
+ return t.args[0] + t.shardMsg() + t.cpuMsg() + t.envMsg()
+}
+
+func SpaceIf(returnSpace bool) string {
+ if !returnSpace {
+ return ""
+ }
+ return " "
}
func (t test) longName() string {
- return strings.Join(t.args, " ") + t.cpuMsg()
+ return strings.Join(t.env, " ") + SpaceIf(len(t.env) != 0) + strings.Join(t.args, " ") + t.cpuMsg()
}
func (t test) shardMsg() string {
@@ -295,6 +313,14 @@
return fmt.Sprintf(" (for CPU %q)", t.cpu)
}
+func (t test) envMsg() string {
+ if len(t.env) == 0 {
+ return ""
+ }
+
+ return " (custom environment)"
+}
+
func (t test) getGTestShards() ([]test, error) {
if *numWorkers == 1 || len(t.args) != 1 {
return []test{t}, nil