Home | History | Annotate | Download | only in source
      1 /*
      2  *  Copyright (c) 2012 The WebRTC project authors. All Rights Reserved.
      3  *
      4  *  Use of this source code is governed by a BSD-style license
      5  *  that can be found in the LICENSE file in the root of the source
      6  *  tree. An additional intellectual property rights grant can be found
      7  *  in the file PATENTS.  All contributing project authors may
      8  *  be found in the AUTHORS file in the root of the source tree.
      9  */
     10 
     11 #include "webrtc/system_wrappers/source/thread_posix.h"
     12 
     13 #include "testing/gtest/include/gtest/gtest.h"
     14 
     15 TEST(ThreadTestPosix, PrioritySettings) {
     16   // API assumes that max_prio - min_prio > 2. Test the extreme case.
     17   const int kMinPrio = -1;
     18   const int kMaxPrio = 2;
     19 
     20   int last_priority = kMinPrio;
     21   for (int priority = webrtc::kLowPriority;
     22        priority <= webrtc::kRealtimePriority; ++priority) {
     23     int system_priority = webrtc::ConvertToSystemPriority(
     24         static_cast<webrtc::ThreadPriority>(priority), kMinPrio, kMaxPrio);
     25     EXPECT_GT(system_priority, kMinPrio);
     26     EXPECT_LT(system_priority, kMaxPrio);
     27     EXPECT_GE(system_priority, last_priority);
     28     last_priority = system_priority;
     29   }
     30 }
     31