You are an expert in writing code in many different languages. Your goal is to perform code completion for the following code, keeping in mind the rest of the code and the file meta data.
    Metadata details:
    filename: tree_test.go
    path of file: ./repos/delve/pkg/dwarf/godwarf
    
    the code of the file until where you have to start completion: package godwarf

import (
	"testing"
)

func makeRanges(v ...uint64) [][2]uint64 {
	r := make([][2]uint64, 0, len(v)/2)
	for i := 0; i < len(v); i += 2 {
		r = append(r, [2]uint64{v[i], v[i+1]})
	}
	return r
}

func assertRanges(t *testing.T, out, tgt [][2]uint64) {
	if len(out) != len(tgt) {
		t.Errorf("\nexpected:\t%v\ngot:\t\t%v", tgt, out)
	}
	for i := range out {
		if out[i] != tgt[i] {
			t.Errorf("\nexpected:\t%v\ngot:\t\t%v", tgt, o
    
func TestContainsPC(t *testing.T) {
	mr := makeRanges

	tcs := []struct {
		rngs [][2]uint64
		pc   uint64
		tgt  bool
	}{
		{mr(1, 10), 1, true},
		{mr(1, 10), 5, true},
		{mr(1, 10), 10, false},
		{mr(1, 10, 20, 30), 15, false},
		{mr(1, 10, 20, 30), 20, true},
		{mr(1, 10, 20, 30), 30, false},
		{mr(1, 10, 20, 30), 31, false},
	}

	for _, tc := range tcs {
		n := &Tree{Ranges: tc.rngs}
		if n.ContainsPC(tc.pc) != tc.tgt {
			if tc.tgt {
				t.Errorf("ranges %v does not contain %d (but should)", tc.rngs, tc.pc)
			} else {
				t.Errorf("ranges %v does contain %d (but shouldn't)", tc.rngs, tc.pc)
			}
		}
	}
}