• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (c) 2024 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 
16 #include <cstddef>
17 #include "gtest/gtest.h"
18 #include "skia_adapter/skia_runtime_effect.h"
19 #include "skia_adapter/skia_runtime_shader_builder.h"
20 #include "effect/runtime_effect.h"
21 
22 using namespace testing;
23 using namespace testing::ext;
24 
25 namespace OHOS {
26 namespace Rosen {
27 namespace Drawing {
28 class SkiaRuntimeEffectTest : public testing::Test {
29 public:
30     static void SetUpTestCase();
31     static void TearDownTestCase();
32     void SetUp() override;
33     void TearDown() override;
34 };
35 
SetUpTestCase()36 void SkiaRuntimeEffectTest::SetUpTestCase() {}
TearDownTestCase()37 void SkiaRuntimeEffectTest::TearDownTestCase() {}
SetUp()38 void SkiaRuntimeEffectTest::SetUp() {}
TearDown()39 void SkiaRuntimeEffectTest::TearDown() {}
40 
41 /**
42  * @tc.name: InitForShader001
43  * @tc.desc: Test InitForShader
44  * @tc.type: FUNC
45  * @tc.require: I91EQ7
46  */
47 HWTEST_F(SkiaRuntimeEffectTest, InitForShader001, TestSize.Level1)
48 {
49     RuntimeEffectOptions op;
50     std::string s = "safd";
51     SkiaRuntimeEffect skiaRuntimeEffect;
52     skiaRuntimeEffect.InitForShader(s, op);
53     EXPECT_TRUE(skiaRuntimeEffect.GetRuntimeEffect() == nullptr);
54 }
55 
56 /**
57  * @tc.name: InitForShader002
58  * @tc.desc: Test InitForShader
59  * @tc.type: FUNC
60  * @tc.require: I91EQ7
61  */
62 HWTEST_F(SkiaRuntimeEffectTest, InitForShader002, TestSize.Level1)
63 {
64     std::string s = "safd";
65     SkiaRuntimeEffect skiaRuntimeEffect;
66     skiaRuntimeEffect.InitForShader(s);
67     EXPECT_TRUE(skiaRuntimeEffect.GetRuntimeEffect() == nullptr);
68 }
69 
70 /**
71  * @tc.name: InitForBlender001
72  * @tc.desc: Test InitForBlender
73  * @tc.type: FUNC
74  * @tc.require: I91EQ7
75  */
76 HWTEST_F(SkiaRuntimeEffectTest, InitForBlender001, TestSize.Level1)
77 {
78     std::string s = "safd";
79     SkiaRuntimeEffect skiaRuntimeEffect;
80     skiaRuntimeEffect.InitForBlender(s);
81     EXPECT_TRUE(skiaRuntimeEffect.GetRuntimeEffect() == nullptr);
82 }
83 
84 /**
85  * @tc.name: GetRuntimeEffect001
86  * @tc.desc: Test GetRuntimeEffect
87  * @tc.type: FUNC
88  * @tc.require: I91EQ7
89  */
90 HWTEST_F(SkiaRuntimeEffectTest, GetRuntimeEffect001, TestSize.Level1)
91 {
92     SkiaRuntimeEffect skiaRuntimeEffect;
93     EXPECT_TRUE(skiaRuntimeEffect.GetRuntimeEffect() == nullptr);
94 }
95 
96 /**
97  * @tc.name: MakeShader001
98  * @tc.desc: Test MakeShader
99  * @tc.type: FUNC
100  * @tc.require: I91EQ7
101  */
102 HWTEST_F(SkiaRuntimeEffectTest, MakeShader001, TestSize.Level1)
103 {
104     SkiaRuntimeShaderBuilder skiaRuntimeShaderBuilder;
105     EXPECT_TRUE(skiaRuntimeShaderBuilder.MakeShader(nullptr, false) == nullptr);
106     Matrix matrix;
107     EXPECT_TRUE(skiaRuntimeShaderBuilder.MakeShader(&matrix, false) == nullptr);
108 }
109 
110 /**
111  * @tc.name: SetRuntimeEffect001
112  * @tc.desc: Test SetRuntimeEffect
113  * @tc.type: FUNC
114  * @tc.require: I91EQ7
115  */
116 HWTEST_F(SkiaRuntimeEffectTest, SetRuntimeEffect001, TestSize.Level1)
117 {
118     SkiaRuntimeEffect skiaRuntimeEffect;
119     sk_sp<SkRuntimeEffect> effect;
120     skiaRuntimeEffect.SetRuntimeEffect(effect);
121     auto effect2 = skiaRuntimeEffect.GetRuntimeEffect();
122     ASSERT_TRUE(effect == effect2);
123 }
124 
125 /**
126  * @tc.name: InitForES3Shader001
127  * @tc.desc: Test InitForES3Shader
128  * @tc.type: FUNC
129  * @tc.require: I91EQ7
130  */
131 HWTEST_F(SkiaRuntimeEffectTest, InitForES3Shader001, TestSize.Level1)
132 {
133     std::string s1 = "safd";
134     SkiaRuntimeEffect skiaRuntimeEffect;
135     skiaRuntimeEffect.InitForES3Shader(s1);
136     EXPECT_TRUE(skiaRuntimeEffect.GetRuntimeEffect() == nullptr);
137 }
138 } // namespace Drawing
139 } // namespace Rosen
140 } // namespace OHOS