42 lines
13 KiB
Go
42 lines
13 KiB
Go
|
|
package shreder
|
||
|
|
|
||
|
|
import (
|
||
|
|
"encoding/base64"
|
||
|
|
"testing"
|
||
|
|
)
|
||
|
|
|
||
|
|
func TestDecodeEntry(t *testing.T) {
|
||
|
|
tests := []struct {
|
||
|
|
name string
|
||
|
|
data string
|
||
|
|
}{
|
||
|
|
{
|
||
|
|
name: "TestDecodeEntry1",
|
||
|
|
data: "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
|
||
|
|
},
|
||
|
|
}
|
||
|
|
|
||
|
|
for _, tt := range tests {
|
||
|
|
t.Run(tt.name, func(t *testing.T) {
|
||
|
|
data, _ := base64.StdEncoding.DecodeString(tt.data)
|
||
|
|
_, err := entriesToVersionedTransaction(0, newConstArray(data))
|
||
|
|
if err != nil {
|
||
|
|
t.Errorf("decodeEntry() error = %v", err)
|
||
|
|
return
|
||
|
|
}
|
||
|
|
})
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
func BenchmarkDecodeEntry(b *testing.B) {
|
||
|
|
data, _ := base64.StdEncoding.DecodeString(
|
||
|
|
"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
|
||
|
|
)
|
||
|
|
//constArray1 := newConstArray(data)
|
||
|
|
b.ReportAllocs()
|
||
|
|
b.ResetTimer()
|
||
|
|
for i := 0; i < b.N; i++ {
|
||
|
|
_, _ = entriesToVersionedTransaction(0, newConstArray(data))
|
||
|
|
}
|
||
|
|
}
|