diff --git a/aos/realtime_test.cc b/aos/realtime_test.cc
new file mode 100644
index 0000000..e77f140
--- /dev/null
+++ b/aos/realtime_test.cc
@@ -0,0 +1,76 @@
+#include "aos/realtime.h"
+
+#include "gtest/gtest.h"
+
+namespace aos {
+namespace testing {
+
+// Tests that ScopedRealtime handles the simple case.
+TEST(RealtimeTest, ScopedRealtime) {
+  CheckNotRealtime();
+  {
+    ScopedRealtime rt;
+    CheckRealtime();
+  }
+  CheckNotRealtime();
+}
+
+// Tests that ScopedRealtime handles nesting.
+TEST(RealtimeTest, DoubleScopedRealtime) {
+  CheckNotRealtime();
+  {
+    ScopedRealtime rt;
+    CheckRealtime();
+    {
+      ScopedRealtime rt2;
+      CheckRealtime();
+    }
+    CheckRealtime();
+  }
+  CheckNotRealtime();
+}
+
+// Tests that ScopedRealtime handles nesting with ScopedNotRealtime.
+TEST(RealtimeTest, ScopedNotRealtime) {
+  CheckNotRealtime();
+  {
+    ScopedRealtime rt;
+    CheckRealtime();
+    {
+      ScopedNotRealtime nrt;
+      CheckNotRealtime();
+    }
+    CheckRealtime();
+  }
+  CheckNotRealtime();
+}
+
+// Tests that ScopedRealtimeRestorer works both when starting RT and nonrt.
+TEST(RealtimeTest, ScopedRealtimeRestorer) {
+  CheckNotRealtime();
+  {
+    ScopedRealtime rt;
+    CheckRealtime();
+    {
+      ScopedRealtimeRestorer restore;
+      CheckRealtime();
+
+      MarkRealtime(false);
+      CheckNotRealtime();
+    }
+    CheckRealtime();
+  }
+  CheckNotRealtime();
+
+  {
+    ScopedRealtimeRestorer restore;
+    CheckNotRealtime();
+
+    MarkRealtime(true);
+    CheckRealtime();
+  }
+  CheckNotRealtime();
+}
+
+}  // namespace testing
+}  // namespace aos
