rpc/stream/vif: fix flaky failure in IdleTimeout test

  Currently there are two races in a heavy load environment;
    o fake timers can be triggered before test setup - i.e.,
      before creating flows for testing.
      - Fixed by turn the fake timers after creating flows
    o when triggering a fake timer, we create a real timer
      and then stop it if the fake timer is already stopped.
      This is because no way to create a stopped timer.
      But the timer can be triggered before it is stopped
      with a heavy load.
      - Fixed by not creating a real timer if it is stopped
        and create one when it is requested (by Reset()).

    o Changed some t.Error to t.Fatal, since it makes debugging
      hard by consuming unexpected notifications and causing
      test timeout failure in the following test.

Change-Id: I24962f253fae00d32c18159681199da7d3f68bc3
2 files changed
tree: 51aa08cd242a75949ecb09eed718ce67815429e3
  1. cmd/
  2. examples/
  3. internal/
  4. lib/
  5. runtime/
  6. services/
  7. test/
  8. .gitignore
  9. AUTHORS
  10. CONTRIBUTORS
  11. envvar.go
  12. envvar_test.go
  13. LICENSE
  14. PATENTS
  15. README.md
  16. VERSION
README.md

Vanadium

This repository contains a reference implementation of the Vanadium APIs.

Unlike the APIs in https://github.com/vanadium/go.v23, which promises to provide backward compatibility this repository makes no such promises.