thread_quota_test.cc
Go to the documentation of this file.
1 // Copyright 2021 gRPC authors.
2 //
3 // Licensed under the Apache License, Version 2.0 (the "License");
4 // you may not use this file except in compliance with the License.
5 // You may obtain a copy of the License at
6 //
7 // http://www.apache.org/licenses/LICENSE-2.0
8 //
9 // Unless required by applicable law or agreed to in writing, software
10 // distributed under the License is distributed on an "AS IS" BASIS,
11 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 // See the License for the specific language governing permissions and
13 // limitations under the License.
14 
16 
17 #include "gtest/gtest.h"
18 
19 namespace grpc_core {
20 namespace testing {
21 
22 TEST(ThreadQuotaTest, Works) {
23  auto q = MakeRefCounted<ThreadQuota>();
24  EXPECT_TRUE(q->Reserve(128));
25  q->SetMax(10);
26  EXPECT_FALSE(q->Reserve(128));
27  EXPECT_FALSE(q->Reserve(1));
28  q->Release(118);
29  EXPECT_FALSE(q->Reserve(1));
30  q->Release(1);
31  EXPECT_TRUE(q->Reserve(1));
32  EXPECT_FALSE(q->Reserve(1));
33  q->Release(10);
34 }
35 
36 } // namespace testing
37 } // namespace grpc_core
38 
39 // Hook needed to run ExecCtx outside of iomgr.
41 
42 int main(int argc, char** argv) {
43  ::testing::InitGoogleTest(&argc, argv);
44  return RUN_ALL_TESTS();
45 }
EXPECT_FALSE
#define EXPECT_FALSE(condition)
Definition: bloaty/third_party/googletest/googletest/include/gtest/gtest.h:1970
testing
Definition: aws_request_signer_test.cc:25
grpc_core
Definition: call_metric_recorder.h:31
RUN_ALL_TESTS
int RUN_ALL_TESTS() GTEST_MUST_USE_RESULT_
Definition: bloaty/third_party/googletest/googletest/include/gtest/gtest.h:2471
testing::InitGoogleTest
GTEST_API_ void InitGoogleTest(int *argc, char **argv)
Definition: bloaty/third_party/googletest/googletest/src/gtest.cc:6106
grpc_core::testing::TEST
TEST(ServiceConfigParserTest, DoubleRegistration)
Definition: service_config_test.cc:448
EXPECT_TRUE
#define EXPECT_TRUE(condition)
Definition: bloaty/third_party/googletest/googletest/include/gtest/gtest.h:1967
thread_quota.h
main
int main(int argc, char **argv)
Definition: thread_quota_test.cc:42
grpc_set_default_iomgr_platform
void grpc_set_default_iomgr_platform()
Definition: thread_quota_test.cc:40


grpc
Author(s):
autogenerated on Fri May 16 2025 03:00:36