Update additional tools to take a GrDirectContext

GM was updated in:
https://skia-review.googlesource.com/c/skia/+/300172 (Make GM::onGpuSetup take a GrDirectContext)

This CL updates: skpbench, nanobench, and some testing infrastructure.

Only minor changes were made to the unit tests as they will be updated
en masse in a follow up cl.

Change-Id: Ieffc98865d4c9fc73e292d3c807ed4ae2081745a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/300220
Reviewed-by: Adlai Holler <adlai@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
diff --git a/tools/gpu/TestContext.h b/tools/gpu/TestContext.h
index 35cf3d8..acf3cf9 100644
--- a/tools/gpu/TestContext.h
+++ b/tools/gpu/TestContext.h
@@ -17,6 +17,7 @@
 #include "tools/gpu/FenceSync.h"
 
 class GrContext;
+class GrDirectContext;
 struct GrContextOptions;
 
 namespace sk_gpu_test {
@@ -70,7 +71,7 @@
      * unfinished flushes active on the GPU at a time. If we have 2 outstanding flushes then we will
      * wait on the CPU until one has finished.
      */
-    void flushAndWaitOnSync(GrContext* context);
+    void flushAndWaitOnSync(GrDirectContext* context);
 
     /**
      * This notifies the context that we are deliberately testing abandoning