From 9b3f4c924efd3fd484949643b2fe5c8c2fa4e5e4 Mon Sep 17 00:00:00 2001 From: Dave Collins Date: Wed, 13 Mar 2019 01:11:59 -0500 Subject: [PATCH] txscript: Add bench for stake revocation scripts. --- txscript/bench_test.go | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/txscript/bench_test.go b/txscript/bench_test.go index 211f9320..e3d27577 100644 --- a/txscript/bench_test.go +++ b/txscript/bench_test.go @@ -392,3 +392,18 @@ func BenchmarkIsStakeGenerationScript(b *testing.B) { _ = isStakeGenScript(scriptVersion, script) } } + +// BenchmarkIsStakeRevocationScript benchmarks how long it takes to analyze a +// very large script to determine if it is a standard stake revocation script. +func BenchmarkIsStakeRevocationScript(b *testing.B) { + script, err := genComplexScript() + if err != nil { + b.Fatalf("failed to create benchmark script: %v", err) + } + + b.ResetTimer() + for i := 0; i < b.N; i++ { + pops, _ := parseScript(script) + _ = isStakeRevocation(pops) + } +}