1 /* 2 * Copyright (c) 2023 Huawei Device Co., Ltd. 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 */ 15 #include <iostream> 16 17 #include "gpu_collector.h" 18 19 #include <gtest/gtest.h> 20 21 using namespace testing::ext; 22 using namespace OHOS::HiviewDFX; 23 using namespace OHOS::HiviewDFX::UCollectUtil; 24 using namespace OHOS::HiviewDFX::UCollect; 25 26 class GpuCollectorTest : public testing::Test { 27 public: SetUp()28 void SetUp() {}; TearDown()29 void TearDown() {}; SetUpTestCase()30 static void SetUpTestCase() {}; TearDownTestCase()31 static void TearDownTestCase() {}; 32 }; 33 34 #ifdef UNIFIED_COLLECTOR_GPU_ENABLE 35 /** 36 * @tc.name: GpuCollectorTest001 37 * @tc.desc: used to test GpuCollector.CollectSysGpuLoad 38 * @tc.type: FUNC 39 */ 40 HWTEST_F(GpuCollectorTest, GpuCollectorTest001, TestSize.Level1) 41 { 42 std::shared_ptr<GpuCollector> collector = GpuCollector::Create(); 43 CollectResult<SysGpuLoad> data = collector->CollectSysGpuLoad(); 44 std::cout << "collect system gpu load result" << data.retCode << std::endl; 45 ASSERT_TRUE(data.retCode == UcError::SUCCESS); 46 } 47 48 /** 49 * @tc.name: GpuCollectorTest002 50 * @tc.desc: used to test GpuCollector.CollectGpuFrequency 51 * @tc.type: FUNC 52 */ 53 HWTEST_F(GpuCollectorTest, GpuCollectorTest002, TestSize.Level1) 54 { 55 std::shared_ptr<GpuCollector> collector = GpuCollector::Create(); 56 CollectResult<GpuFreq> data = collector->CollectGpuFrequency(); 57 std::cout << "collect system gpu frequency result" << data.retCode << std::endl; 58 ASSERT_TRUE(data.retCode == UcError::SUCCESS); 59 } 60 #else 61 /** 62 * @tc.name: GpuCollectorTest001 63 * @tc.desc: used to test empty GpuCollector 64 * @tc.type: FUNC 65 */ 66 HWTEST_F(GpuCollectorTest, GpuCollectorTest001, TestSize.Level1) 67 { 68 std::shared_ptr<GpuCollector> collector = GpuCollector::Create(); 69 auto data1 = collector->CollectSysGpuLoad(); 70 ASSERT_TRUE(data1.retCode == UcError::FEATURE_CLOSED); 71 auto data2 = collector->CollectGpuFrequency(); 72 ASSERT_TRUE(data1.retCode == UcError::FEATURE_CLOSED); 73 } 74 #endif 75