| Server IP : 217.160.0.212 / Your IP : 216.73.216.141 Web Server : Apache System : Linux www 6.18.51-i1-ampere #1196 SMP Fri Sep 11 20:43:55 CEST 2026 aarch64 User : sws1073854427 ( 1073854427) PHP Version : 8.4.23 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /lib/go-1.23/src/internal/coverage/cfile/ |
Upload File : |
// Copyright 2022 The Go Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
//go:build SELECT_USING_THIS_TAG
package cfile
import "testing"
var funcInvoked bool
//go:noinline
func thisFunctionOnlyCalledFromSnapshotTest(n int) int {
if funcInvoked {
panic("bad")
}
funcInvoked = true
// Contents here not especially important, just so long as we
// have some statements.
t := 0
for i := 0; i < n; i++ {
for j := 0; j < i; j++ {
t += i ^ j
}
}
return t
}
// Tests runtime/coverage.snapshot() directly. Note that if
// coverage is not enabled, the hook is designed to just return
// zero.
func TestCoverageSnapshotImpl(t *testing.T) {
C1 := Snapshot()
thisFunctionOnlyCalledFromSnapshotTest(15)
C2 := Snapshot()
cond := "C1 > C2"
val := C1 > C2
if testing.CoverMode() != "" {
cond = "C1 >= C2"
val = C1 >= C2
}
t.Logf("%f %f\n", C1, C2)
if val {
t.Errorf("erroneous snapshots, %s = true C1=%f C2=%f",
cond, C1, C2)
}
}