Use the first available CPU instead of 0 and 1

This makes the test work in docker containers.

Change-Id: I21a93e59434182ba50ef8c9ea45e24dc0e79a617
Signed-off-by: Austin Schuh <austin.schuh@bluerivertech.com>
diff --git a/aos/events/event_loop_param_test.cc b/aos/events/event_loop_param_test.cc
index 4a298f0..b74a3fe 100644
--- a/aos/events/event_loop_param_test.cc
+++ b/aos/events/event_loop_param_test.cc
@@ -780,11 +780,23 @@
 
 // Verify that SetRuntimeAffinity fails while running.
 TEST_P(AbstractEventLoopDeathTest, SetRuntimeAffinity) {
+  const cpu_set_t available = GetCurrentThreadAffinity();
+  int first_cpu = -1;
+  for (int i = 0; i < CPU_SETSIZE; ++i) {
+    if (CPU_ISSET(i, &available)) {
+      first_cpu = i;
+      break;
+      continue;
+    }
+  }
+  CHECK_NE(first_cpu, -1) << ": Default affinity has no CPUs?";
+
   auto loop = MakePrimary();
   // Confirm that runtime priority calls work when not running.
-  loop->SetRuntimeAffinity(MakeCpusetFromCpus({0}));
+  loop->SetRuntimeAffinity(MakeCpusetFromCpus({first_cpu}));
 
-  loop->OnRun([&]() { loop->SetRuntimeAffinity(MakeCpusetFromCpus({1})); });
+  loop->OnRun(
+      [&]() { loop->SetRuntimeAffinity(MakeCpusetFromCpus({first_cpu})); });
 
   EXPECT_DEATH(Run(), "Cannot set affinity while running");
 }