1 /*
2 * Copyright (c) 2020-2021 Huawei Device Co., Ltd.
3 *
4 * HDF is dual licensed: you can use it either under the terms of
5 * the GPL, or the BSD license, at your option.
6 * See the LICENSE file in the root of this repository for complete details.
7 */
8
9 #include <cstdint>
10 #include <cstdio>
11 #include <cstdlib>
12 #include <fcntl.h>
13 #include <gtest/gtest.h>
14 #include <string>
15 #include <unistd.h>
16 #include "hdf_uhdf_test.h"
17 #include "pwm_test.h"
18 #include "hdf_io_service_if.h"
19
20 using namespace testing::ext;
21
22 class HdfLitePwmTest : public testing::Test {
23 public:
24 static void SetUpTestCase();
25 static void TearDownTestCase();
26 void SetUp();
27 void TearDown();
28 };
29
SetUpTestCase()30 void HdfLitePwmTest::SetUpTestCase()
31 {
32 HdfTestOpenService();
33 }
34
TearDownTestCase()35 void HdfLitePwmTest::TearDownTestCase()
36 {
37 HdfTestCloseService();
38 }
39
SetUp()40 void HdfLitePwmTest::SetUp()
41 {
42 }
43
TearDown()44 void HdfLitePwmTest::TearDown()
45 {
46 }
47
48 /**
49 * @tc.name: PwmSetPeriodTest001
50 * @tc.desc: pwm function test
51 * @tc.type: FUNC
52 * @tc.require: AR000F868C
53 */
54 HWTEST_F(HdfLitePwmTest, PwmSetPeriodTest001, TestSize.Level1)
55 {
56 struct HdfTestMsg msg = {TEST_PAL_PWM_TYPE, PWM_SET_PERIOD_TEST, -1};
57 EXPECT_EQ(0, HdfTestSendMsgToService(&msg));
58 EXPECT_EQ(0, PwmTestExecute(PWM_SET_PERIOD_TEST));
59 }
60
61 /**
62 * @tc.name: PwmSetDutyTest001
63 * @tc.desc: pwm function test
64 * @tc.type: FUNC
65 * @tc.require: AR000F868C
66 */
67 HWTEST_F(HdfLitePwmTest, PwmSetDutyTest001, TestSize.Level1)
68 {
69 struct HdfTestMsg msg = {TEST_PAL_PWM_TYPE, PWM_SET_DUTY_TEST, -1};
70 EXPECT_EQ(0, HdfTestSendMsgToService(&msg));
71 EXPECT_EQ(0, PwmTestExecute(PWM_SET_DUTY_TEST));
72 }
73
74 /**
75 * @tc.name: PwmSetPolarityTest001
76 * @tc.desc: pwm function test
77 * @tc.type: FUNC
78 * @tc.require: AR000F868C
79 */
80 HWTEST_F(HdfLitePwmTest, PwmSetPolarityTest001, TestSize.Level1)
81 {
82 struct HdfTestMsg msg = { TEST_PAL_PWM_TYPE, PWM_SET_POLARITY_TEST, -1};
83 EXPECT_EQ(0, HdfTestSendMsgToService(&msg));
84 EXPECT_EQ(0, PwmTestExecute(PWM_SET_POLARITY_TEST));
85 }
86
87 /**
88 * @tc.name: PwmSetGetConfigTest001
89 * @tc.desc: pwm function test
90 * @tc.type: FUNC
91 * @tc.require: AR000F868D
92 */
93 HWTEST_F(HdfLitePwmTest, PwmSetGetConfigTest001, TestSize.Level1)
94 {
95 struct HdfTestMsg msg = {TEST_PAL_PWM_TYPE, PWM_SET_GET_CONFIG_TEST, -1};
96 EXPECT_EQ(0, HdfTestSendMsgToService(&msg));
97 EXPECT_EQ(0, PwmTestExecute(PWM_SET_GET_CONFIG_TEST));
98 }
99
100 /**
101 * @tc.name: PwmEnableTest001
102 * @tc.desc: pwm function test
103 * @tc.type: FUNC
104 * @tc.require: AR000F868D
105 */
106 HWTEST_F(HdfLitePwmTest, PwmEnableTest001, TestSize.Level1)
107 {
108 struct HdfTestMsg msg = {TEST_PAL_PWM_TYPE, PWM_ENABLE_TEST, -1};
109 EXPECT_EQ(0, HdfTestSendMsgToService(&msg));
110 EXPECT_EQ(0, PwmTestExecute(PWM_ENABLE_TEST));
111 }
112
113 /**
114 * @tc.name: PwmDisableTest001
115 * @tc.desc: pwm function test
116 * @tc.type: FUNC
117 * @tc.require: AR000F868D
118 */
119 HWTEST_F(HdfLitePwmTest, PwmDisableTest001, TestSize.Level1)
120 {
121 struct HdfTestMsg msg = {TEST_PAL_PWM_TYPE, PWM_DISABLE_TEST, -1};
122 EXPECT_EQ(0, HdfTestSendMsgToService(&msg));
123 EXPECT_EQ(0, PwmTestExecute(PWM_DISABLE_TEST));
124 }
125
126 /**
127 * @tc.name: PwmIfPerformanceTest001
128 * @tc.desc: pwm user if performance test
129 * @tc.type: FUNC
130 * @tc.require:
131 */
132 HWTEST_F(HdfLitePwmTest, PwmIfPerformanceTest001, TestSize.Level1)
133 {
134 EXPECT_EQ(0, PwmTestExecute(PWM_IF_PERFORMANCE_TEST));
135 }
136