1 /* 2 * Copyright (c) 2025 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 "gtest/gtest.h" 17 18 #include "interfaces/inner_api/ace_kit/src/view/frame_node_impl.h" 19 #include "test/unittest/interfaces/ace_kit/mock/mock_ace_kit_pattern.h" 20 #include "ui/view_factory/abstract_view_factory.h" 21 22 using namespace testing; 23 using namespace testing::ext; 24 25 namespace OHOS::Ace::Kit { 26 class ContentModifierTest : public testing::Test {}; 27 28 /** 29 * @tc.name: ContentModifierTest001 30 * @tc.desc: 31 * @tc.type: FUNC 32 */ 33 HWTEST_F(ContentModifierTest, ContentModifierTest001, TestSize.Level1) 34 { 35 const std::string tag = "TEST1"; 36 const int32_t id = 1; 37 auto mockPattern = AceType::MakeRefPtr<MockAceKitPattern>(); 38 auto frameNode = AbstractViewFactory::CreateFrameNode(tag, id, mockPattern); 39 EXPECT_NE(frameNode, nullptr); 40 auto frameNodeImpl = AceType::DynamicCast<FrameNodeImpl>(frameNode); 41 ASSERT_TRUE(frameNodeImpl); 42 43 auto paintMethod = mockPattern->CreateNodePaintMethod(); 44 ASSERT_TRUE(paintMethod); 45 auto contentModifier = paintMethod->GetContentModifier(); 46 ASSERT_TRUE(contentModifier); 47 auto rsModifier = contentModifier->GetRSModifier(); 48 EXPECT_FALSE(rsModifier); 49 contentModifier->InitAdapter(); 50 EXPECT_TRUE(contentModifier->GetRSModifier()); 51 } 52 } // namespace OHOS::Ace::Kit 53