VideoSendStreamTest: remove lock recursions.

This change removes lock recursions and adds thread annotations.

Bug: webrtc:11567
Change-Id: Id3f375ed925b0b8f3cad449d0971d9236088b1d5
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176225
Reviewed-by: Magnus Flodman <mflodman@webrtc.org>
Commit-Queue: Markus Handell <handellm@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31382}
diff --git a/video/video_send_stream_tests.cc b/video/video_send_stream_tests.cc
index 63acb80..449e194 100644
--- a/video/video_send_stream_tests.cc
+++ b/video/video_send_stream_tests.cc
@@ -2483,29 +2483,34 @@
           released_(false),
           encoder_factory_(this) {}
 
-    bool IsReleased() {
+    bool IsReleased() RTC_LOCKS_EXCLUDED(crit_) {
       rtc::CritScope lock(&crit_);
       return released_;
     }
 
-    bool IsReadyForEncode() {
+    bool IsReadyForEncode() RTC_LOCKS_EXCLUDED(crit_) {
       rtc::CritScope lock(&crit_);
-      return initialized_ && callback_registered_;
+      return IsReadyForEncodeLocked();
     }
 
-    size_t num_releases() {
+    size_t num_releases() RTC_LOCKS_EXCLUDED(crit_) {
       rtc::CritScope lock(&crit_);
       return num_releases_;
     }
 
    private:
+    bool IsReadyForEncodeLocked() RTC_EXCLUSIVE_LOCKS_REQUIRED(crit_) {
+      return initialized_ && callback_registered_;
+    }
+
     void SetFecControllerOverride(
         FecControllerOverride* fec_controller_override) override {
       // Ignored.
     }
 
     int32_t InitEncode(const VideoCodec* codecSettings,
-                       const Settings& settings) override {
+                       const Settings& settings) override
+        RTC_LOCKS_EXCLUDED(crit_) {
       rtc::CritScope lock(&crit_);
       EXPECT_FALSE(initialized_);
       initialized_ = true;
@@ -2522,16 +2527,16 @@
     }
 
     int32_t RegisterEncodeCompleteCallback(
-        EncodedImageCallback* callback) override {
+        EncodedImageCallback* callback) override RTC_LOCKS_EXCLUDED(crit_) {
       rtc::CritScope lock(&crit_);
       EXPECT_TRUE(initialized_);
       callback_registered_ = true;
       return 0;
     }
 
-    int32_t Release() override {
+    int32_t Release() override RTC_LOCKS_EXCLUDED(crit_) {
       rtc::CritScope lock(&crit_);
-      EXPECT_TRUE(IsReadyForEncode());
+      EXPECT_TRUE(IsReadyForEncodeLocked());
       EXPECT_FALSE(released_);
       initialized_ = false;
       callback_registered_ = false;