Add ability to unwind stack for the current thread

Bug: webrtc:10308
Change-Id: Ia82cb7512524bede8da69bbc747ece6e718733ab
Reviewed-on: https://webrtc-review.googlesource.com/c/124993
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Commit-Queue: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26945}
diff --git a/sdk/android/native_unittests/stacktrace/stacktrace_unittest.cc b/sdk/android/native_unittests/stacktrace/stacktrace_unittest.cc
index 9a78f7a..efec852 100644
--- a/sdk/android/native_unittests/stacktrace/stacktrace_unittest.cc
+++ b/sdk/android/native_unittests/stacktrace/stacktrace_unittest.cc
@@ -163,6 +163,16 @@
   thread.Stop();
 }
 
+TEST(Stacktrace, TestCurrentThread) {
+  const uint32_t start_addr = GetCurrentRelativeExecutionAddress();
+  const std::vector<StackTraceElement> stack_trace = GetStackTrace();
+  const uint32_t end_addr = GetCurrentRelativeExecutionAddress();
+  EXPECT_TRUE(StackTraceContainsRange(stack_trace, start_addr, end_addr))
+      << "Caller region: [" << rtc::ToHex(start_addr) << ", "
+      << rtc::ToHex(end_addr)
+      << "] not contained in: " << StackTraceToString(stack_trace);
+}
+
 TEST(Stacktrace, TestSpinLock) {
   TestStacktrace(absl::make_unique<SpinDeadlock>());
 }