funcTestNonpollableDeadline(t *testing.T) { // On BSD systems regular files seem to be pollable, // so just run this test on Linux. if runtime.GOOS != "linux" { t.Skipf("skipping on %s", runtime.GOOS) }
f, err := ioutil.TempFile("", "ostest") if err != nil { t.Fatal(err) } defer os.Remove(f.Name()) defer f.Close() deadline := time.Now().Add(10 * time.Second) if err := f.SetDeadline(deadline); err != os.ErrNoDeadline { t.Errorf("SetDeadline on file returned %v, wanted %v", err, os.ErrNoDeadline) } if err := f.SetReadDeadline(deadline); err != os.ErrNoDeadline { t.Errorf("SetReadDeadline on file returned %v, wanted %v", err, os.ErrNoDeadline) } if err := f.SetWriteDeadline(deadline); err != os.ErrNoDeadline { t.Errorf("SetWriteDeadline on file returned %v, wanted %v", err, os.ErrNoDeadline) } }
// TestRacyRead tests that it is safe to mutate the input Read buffer // immediately after cancellation has occurred. funcTestRacyRead(t *testing.T) { t.Parallel()