delve/dwarf/frame/frame_parser_test.go

53 lines
1.2 KiB
Go
Raw Normal View History

package frame_test
import (
"testing"
"github.com/davecheney/profile"
"github.com/derekparker/dbg/dwarf/_helper"
"github.com/derekparker/dbg/dwarf/frame"
)
// func TestParse(t *testing.T) {
// var (
// data = dwarfhelper.GrabDebugFrameSection("../../_fixtures/testprog", t)
// fe = frame.Parse(data)[0]
// ce = fe.CIE
// )
// if ce.Length != 16 {
// t.Error("Length was not parsed correctly, got ", ce.Length)
// }
// if ce.Version != 0x3 {
// t.Fatalf("Version was not parsed correctly expected %#v got %#v", 0x3, ce.Version)
// }
// if ce.Augmentation != "" {
// t.Fatal("Augmentation was not parsed correctly")
// }
// if ce.CodeAlignmentFactor != 0x1 {
// t.Fatal("Code Alignment Factor was not parsed correctly")
// }
// if ce.DataAlignmentFactor != -4 {
// t.Fatalf("Data Alignment Factor was not parsed correctly got %#v", ce.DataAlignmentFactor)
// }
// if fe.Length != 32 {
// t.Fatal("Length was not parsed correctly, got ", fe.Length)
// }
// }
func BenchmarkParse(b *testing.B) {
defer profile.Start(profile.CPUProfile).Stop()
data := dwarfhelper.GrabDebugFrameSection("../../_fixtures/testprog", nil)
b.ResetTimer()
for i := 0; i < b.N; i++ {
frame.Parse(data)
}
}