Import Cobalt 19.master.0.205881
diff --git a/src/base/test/android/java_handler_thread_helpers.h b/src/base/test/android/java_handler_thread_helpers.h
new file mode 100644
index 0000000..364fb2c
--- /dev/null
+++ b/src/base/test/android/java_handler_thread_helpers.h
@@ -0,0 +1,43 @@
+// Copyright 2016 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef BASE_ANDROID_JAVA_HANDLER_THREAD_FOR_TESTING_H_
+#define BASE_ANDROID_JAVA_HANDLER_THREAD_FOR_TESTING_H_
+
+#include <jni.h>
+
+#include <memory>
+
+#include "base/android/scoped_java_ref.h"
+#include "starboard/types.h"
+
+namespace base {
+
+class WaitableEvent;
+
+namespace android {
+
+class JavaHandlerThread;
+
+// Test-only helpers for working with JavaHandlerThread.
+class JavaHandlerThreadHelpers {
+ public:
+ // Create the Java peer first and test that it works before connecting to the
+ // native object.
+ static std::unique_ptr<JavaHandlerThread> CreateJavaFirst();
+
+ static void ThrowExceptionAndAbort(WaitableEvent* event);
+
+ static bool IsExceptionTestException(
+ ScopedJavaLocalRef<jthrowable> exception);
+
+ private:
+ JavaHandlerThreadHelpers() = default;
+ ~JavaHandlerThreadHelpers() = default;
+};
+
+} // namespace android
+} // namespace base
+
+#endif // BASE_ANDROID_JAVA_HANDLER_THREAD_FOR_TESTING_H_