diff --git a/syncs/watchdog_test.go b/syncs/watchdog_test.go index b5cc3452e..116d00625 100644 --- a/syncs/watchdog_test.go +++ b/syncs/watchdog_test.go @@ -6,9 +6,12 @@ package syncs import ( "context" + "runtime" "sync" "testing" "time" + + "tailscale.com/util/cibuild" ) // Time-based tests are fundamentally flaky. @@ -46,6 +49,12 @@ func TestWatchContended(t *testing.T) { } func TestWatchMultipleValues(t *testing.T) { + if cibuild.On() && runtime.GOOS == "windows" { + // On the CI machine, it sometimes takes 500ms to start a new goroutine. + // When this happens, we don't get enough events quickly enough. + // Nothing's wrong, and it's not worth working around. Just skip the test. + t.Skip("flaky on Windows CI") + } mu := new(sync.Mutex) ctx, cancel := context.WithCancel(context.Background()) defer cancel() // not necessary, but keep vet happy