1e0dac50fSopenharmony_ci/* 2e0dac50fSopenharmony_ci * Copyright (c) 2021 Huawei Device Co., Ltd. 3e0dac50fSopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License"); 4e0dac50fSopenharmony_ci * you may not use this file except in compliance with the License. 5e0dac50fSopenharmony_ci * You may obtain a copy of the License at 6e0dac50fSopenharmony_ci * 7e0dac50fSopenharmony_ci * http://www.apache.org/licenses/LICENSE-2.0 8e0dac50fSopenharmony_ci * 9e0dac50fSopenharmony_ci * Unless required by applicable law or agreed to in writing, software 10e0dac50fSopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS, 11e0dac50fSopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12e0dac50fSopenharmony_ci * See the License for the specific language governing permissions and 13e0dac50fSopenharmony_ci * limitations under the License. 14e0dac50fSopenharmony_ci */ 15e0dac50fSopenharmony_ci 16e0dac50fSopenharmony_ci#include <gtest/gtest.h> 17e0dac50fSopenharmony_ci#include "window_option.h" 18e0dac50fSopenharmony_ci 19e0dac50fSopenharmony_ciusing namespace testing; 20e0dac50fSopenharmony_ciusing namespace testing::ext; 21e0dac50fSopenharmony_ci 22e0dac50fSopenharmony_cinamespace OHOS { 23e0dac50fSopenharmony_cinamespace Rosen { 24e0dac50fSopenharmony_cinamespace { 25e0dac50fSopenharmony_ciconst SystemBarProperty SYS_BAR_PROP_DEFAULT; 26e0dac50fSopenharmony_ciconst SystemBarProperty SYS_BAR_PROP_1(true, 0xE5111111, 0xE5222222); 27e0dac50fSopenharmony_ciconst SystemBarProperty SYS_BAR_PROP_2(false, 0xE5222222, 0xE5333333); 28e0dac50fSopenharmony_ciconst std::unordered_map<WindowType, SystemBarProperty>& SYS_BAR_PROPS_TEST = { 29e0dac50fSopenharmony_ci { WindowType::WINDOW_TYPE_STATUS_BAR, SYS_BAR_PROP_1 }, 30e0dac50fSopenharmony_ci { WindowType::WINDOW_TYPE_NAVIGATION_BAR, SYS_BAR_PROP_2 }, 31e0dac50fSopenharmony_ci}; 32e0dac50fSopenharmony_ciconst std::unordered_map<WindowType, SystemBarProperty>& SYS_BAR_PROPS_DEFAULT = { 33e0dac50fSopenharmony_ci { WindowType::WINDOW_TYPE_STATUS_BAR, SYS_BAR_PROP_DEFAULT }, 34e0dac50fSopenharmony_ci { WindowType::WINDOW_TYPE_NAVIGATION_BAR, SYS_BAR_PROP_DEFAULT }, 35e0dac50fSopenharmony_ci}; 36e0dac50fSopenharmony_ci} 37e0dac50fSopenharmony_ciclass WindowOptionTest : public testing::Test { 38e0dac50fSopenharmony_cipublic: 39e0dac50fSopenharmony_ci static void SetUpTestCase(); 40e0dac50fSopenharmony_ci static void TearDownTestCase(); 41e0dac50fSopenharmony_ci virtual void SetUp() override; 42e0dac50fSopenharmony_ci virtual void TearDown() override; 43e0dac50fSopenharmony_ci}; 44e0dac50fSopenharmony_civoid WindowOptionTest::SetUpTestCase() 45e0dac50fSopenharmony_ci{ 46e0dac50fSopenharmony_ci} 47e0dac50fSopenharmony_ci 48e0dac50fSopenharmony_civoid WindowOptionTest::TearDownTestCase() 49e0dac50fSopenharmony_ci{ 50e0dac50fSopenharmony_ci} 51e0dac50fSopenharmony_ci 52e0dac50fSopenharmony_civoid WindowOptionTest::SetUp() 53e0dac50fSopenharmony_ci{ 54e0dac50fSopenharmony_ci} 55e0dac50fSopenharmony_ci 56e0dac50fSopenharmony_civoid WindowOptionTest::TearDown() 57e0dac50fSopenharmony_ci{ 58e0dac50fSopenharmony_ci} 59e0dac50fSopenharmony_ci 60e0dac50fSopenharmony_cinamespace { 61e0dac50fSopenharmony_ci/** 62e0dac50fSopenharmony_ci * @tc.name: WindowRect01 63e0dac50fSopenharmony_ci * @tc.desc: SetWindowRect/GetWindowRect 64e0dac50fSopenharmony_ci * @tc.type: FUNC 65e0dac50fSopenharmony_ci */ 66e0dac50fSopenharmony_ciHWTEST_F(WindowOptionTest, WindowRect01, Function | SmallTest | Level2) 67e0dac50fSopenharmony_ci{ 68e0dac50fSopenharmony_ci sptr<WindowOption> option = new WindowOption(); 69e0dac50fSopenharmony_ci struct Rect rect = {1, 2, 3u, 4u}; 70e0dac50fSopenharmony_ci option->SetWindowRect(rect); 71e0dac50fSopenharmony_ci 72e0dac50fSopenharmony_ci ASSERT_EQ(1, option->GetWindowRect().posX_); 73e0dac50fSopenharmony_ci ASSERT_EQ(2, option->GetWindowRect().posY_); 74e0dac50fSopenharmony_ci ASSERT_EQ(3u, option->GetWindowRect().width_); 75e0dac50fSopenharmony_ci ASSERT_EQ(4u, option->GetWindowRect().height_); 76e0dac50fSopenharmony_ci} 77e0dac50fSopenharmony_ci 78e0dac50fSopenharmony_ci/** 79e0dac50fSopenharmony_ci * @tc.name: WindowType01 80e0dac50fSopenharmony_ci * @tc.desc: SetWindowType/GetWindowType 81e0dac50fSopenharmony_ci * @tc.type: FUNC 82e0dac50fSopenharmony_ci */ 83e0dac50fSopenharmony_ciHWTEST_F(WindowOptionTest, WindowType01, Function | SmallTest | Level2) 84e0dac50fSopenharmony_ci{ 85e0dac50fSopenharmony_ci sptr<WindowOption> option = new WindowOption(); 86e0dac50fSopenharmony_ci option->SetWindowType(WindowType::WINDOW_TYPE_APP_MAIN_WINDOW); 87e0dac50fSopenharmony_ci ASSERT_EQ(WindowType::WINDOW_TYPE_APP_MAIN_WINDOW, option->GetWindowType()); 88e0dac50fSopenharmony_ci} 89e0dac50fSopenharmony_ci 90e0dac50fSopenharmony_ci/** 91e0dac50fSopenharmony_ci * @tc.name: WindowMode01 92e0dac50fSopenharmony_ci * @tc.desc: SetWindowMode/GetWindowMode 93e0dac50fSopenharmony_ci * @tc.type: FUNC 94e0dac50fSopenharmony_ci */ 95e0dac50fSopenharmony_ciHWTEST_F(WindowOptionTest, WindowMode01, Function | SmallTest | Level2) 96e0dac50fSopenharmony_ci{ 97e0dac50fSopenharmony_ci sptr<WindowOption> option = new WindowOption(); 98e0dac50fSopenharmony_ci option->SetWindowMode(WindowMode::WINDOW_MODE_FULLSCREEN); 99e0dac50fSopenharmony_ci ASSERT_EQ(WindowMode::WINDOW_MODE_FULLSCREEN, option->GetWindowMode()); 100e0dac50fSopenharmony_ci} 101e0dac50fSopenharmony_ci 102e0dac50fSopenharmony_ci/** 103e0dac50fSopenharmony_ci * @tc.name: WindowMode02 104e0dac50fSopenharmony_ci * @tc.desc: SetWindowMode/GetWindowMode 105e0dac50fSopenharmony_ci * @tc.type: FUNC 106e0dac50fSopenharmony_ci */ 107e0dac50fSopenharmony_ciHWTEST_F(WindowOptionTest, WindowMode02, Function | SmallTest | Level2) 108e0dac50fSopenharmony_ci{ 109e0dac50fSopenharmony_ci sptr<WindowOption> option = new WindowOption(); 110e0dac50fSopenharmony_ci WindowMode defaultMode = option->GetWindowMode(); 111e0dac50fSopenharmony_ci option->SetWindowMode(WindowMode::WINDOW_MODE_UNDEFINED); 112e0dac50fSopenharmony_ci ASSERT_EQ(defaultMode, option->GetWindowMode()); 113e0dac50fSopenharmony_ci} 114e0dac50fSopenharmony_ci 115e0dac50fSopenharmony_ci/** 116e0dac50fSopenharmony_ci * @tc.name: WindowMode03 117e0dac50fSopenharmony_ci * @tc.desc: SetWindowMode/GetWindowMode 118e0dac50fSopenharmony_ci * @tc.type: FUNC 119e0dac50fSopenharmony_ci */ 120e0dac50fSopenharmony_ciHWTEST_F(WindowOptionTest, WindowMode03, Function | SmallTest | Level2) 121e0dac50fSopenharmony_ci{ 122e0dac50fSopenharmony_ci sptr<WindowOption> option = new WindowOption(); 123e0dac50fSopenharmony_ci option->SetWindowMode(WindowMode::WINDOW_MODE_SPLIT_PRIMARY); 124e0dac50fSopenharmony_ci ASSERT_EQ(WindowMode::WINDOW_MODE_SPLIT_PRIMARY, option->GetWindowMode()); 125e0dac50fSopenharmony_ci} 126e0dac50fSopenharmony_ci 127e0dac50fSopenharmony_ci/** 128e0dac50fSopenharmony_ci * @tc.name: WindowMode04 129e0dac50fSopenharmony_ci * @tc.desc: SetWindowMode/GetWindowMode 130e0dac50fSopenharmony_ci * @tc.type: FUNC 131e0dac50fSopenharmony_ci */ 132e0dac50fSopenharmony_ciHWTEST_F(WindowOptionTest, WindowMode04, Function | SmallTest | Level2) 133e0dac50fSopenharmony_ci{ 134e0dac50fSopenharmony_ci sptr<WindowOption> option = new WindowOption(); 135e0dac50fSopenharmony_ci option->SetWindowMode(WindowMode::WINDOW_MODE_SPLIT_SECONDARY); 136e0dac50fSopenharmony_ci ASSERT_EQ(WindowMode::WINDOW_MODE_SPLIT_SECONDARY, option->GetWindowMode()); 137e0dac50fSopenharmony_ci} 138e0dac50fSopenharmony_ci 139e0dac50fSopenharmony_ci/** 140e0dac50fSopenharmony_ci * @tc.name: WindowMode05 141e0dac50fSopenharmony_ci * @tc.desc: SetWindowMode/GetWindowMode 142e0dac50fSopenharmony_ci * @tc.type: FUNC 143e0dac50fSopenharmony_ci */ 144e0dac50fSopenharmony_ciHWTEST_F(WindowOptionTest, WindowMode05, Function | SmallTest | Level2) 145e0dac50fSopenharmony_ci{ 146e0dac50fSopenharmony_ci sptr<WindowOption> option = new WindowOption(); 147e0dac50fSopenharmony_ci option->SetWindowMode(WindowMode::WINDOW_MODE_FLOATING); 148e0dac50fSopenharmony_ci ASSERT_EQ(WindowMode::WINDOW_MODE_FLOATING, option->GetWindowMode()); 149e0dac50fSopenharmony_ci} 150e0dac50fSopenharmony_ci 151e0dac50fSopenharmony_ci/** 152e0dac50fSopenharmony_ci * @tc.name: WindowMode06 153e0dac50fSopenharmony_ci * @tc.desc: SetWindowMode/GetWindowMode 154e0dac50fSopenharmony_ci * @tc.type: FUNC 155e0dac50fSopenharmony_ci */ 156e0dac50fSopenharmony_ciHWTEST_F(WindowOptionTest, WindowMode06, Function | SmallTest | Level2) 157e0dac50fSopenharmony_ci{ 158e0dac50fSopenharmony_ci sptr<WindowOption> option = new WindowOption(); 159e0dac50fSopenharmony_ci option->SetWindowMode(WindowMode::WINDOW_MODE_PIP); 160e0dac50fSopenharmony_ci ASSERT_EQ(WindowMode::WINDOW_MODE_PIP, option->GetWindowMode()); 161e0dac50fSopenharmony_ci} 162e0dac50fSopenharmony_ci/** 163e0dac50fSopenharmony_ci * @tc.name: Focusable01 164e0dac50fSopenharmony_ci * @tc.desc: SetFocusable/GetFocusable 165e0dac50fSopenharmony_ci * @tc.type: FUNC 166e0dac50fSopenharmony_ci */ 167e0dac50fSopenharmony_ciHWTEST_F(WindowOptionTest, Focusable01, Function | SmallTest | Level2) 168e0dac50fSopenharmony_ci{ 169e0dac50fSopenharmony_ci sptr<WindowOption> option = new WindowOption(); 170e0dac50fSopenharmony_ci option->SetFocusable(true); 171e0dac50fSopenharmony_ci ASSERT_EQ(true, option->GetFocusable()); 172e0dac50fSopenharmony_ci} 173e0dac50fSopenharmony_ci 174e0dac50fSopenharmony_ci/** 175e0dac50fSopenharmony_ci * @tc.name: Touchable01 176e0dac50fSopenharmony_ci * @tc.desc: SetTouchable/GetTouchable 177e0dac50fSopenharmony_ci * @tc.type: FUNC 178e0dac50fSopenharmony_ci */ 179e0dac50fSopenharmony_ciHWTEST_F(WindowOptionTest, Touchable01, Function | SmallTest | Level2) 180e0dac50fSopenharmony_ci{ 181e0dac50fSopenharmony_ci sptr<WindowOption> option = new WindowOption(); 182e0dac50fSopenharmony_ci option->SetTouchable(true); 183e0dac50fSopenharmony_ci ASSERT_EQ(true, option->GetTouchable()); 184e0dac50fSopenharmony_ci} 185e0dac50fSopenharmony_ci 186e0dac50fSopenharmony_ci/** 187e0dac50fSopenharmony_ci * @tc.name: DisplayId01 188e0dac50fSopenharmony_ci * @tc.desc: SetDisplayId/GetDisplayId 189e0dac50fSopenharmony_ci * @tc.type: FUNC 190e0dac50fSopenharmony_ci */ 191e0dac50fSopenharmony_ciHWTEST_F(WindowOptionTest, DisplayId01, Function | SmallTest | Level2) 192e0dac50fSopenharmony_ci{ 193e0dac50fSopenharmony_ci sptr<WindowOption> option = new WindowOption(); 194e0dac50fSopenharmony_ci option->SetDisplayId(1); 195e0dac50fSopenharmony_ci ASSERT_EQ(1, option->GetDisplayId()); 196e0dac50fSopenharmony_ci} 197e0dac50fSopenharmony_ci 198e0dac50fSopenharmony_ci/** 199e0dac50fSopenharmony_ci * @tc.name: ParentId01 200e0dac50fSopenharmony_ci * @tc.desc: SetParentId/GetParentId 201e0dac50fSopenharmony_ci * @tc.type: FUNC 202e0dac50fSopenharmony_ci */ 203e0dac50fSopenharmony_ciHWTEST_F(WindowOptionTest, ParentId01, Function | SmallTest | Level2) 204e0dac50fSopenharmony_ci{ 205e0dac50fSopenharmony_ci sptr<WindowOption> option = new WindowOption(); 206e0dac50fSopenharmony_ci option->SetParentId(1); 207e0dac50fSopenharmony_ci ASSERT_EQ(1, option->GetParentId()); 208e0dac50fSopenharmony_ci} 209e0dac50fSopenharmony_ci 210e0dac50fSopenharmony_ci/** 211e0dac50fSopenharmony_ci * @tc.name: WindowName01 212e0dac50fSopenharmony_ci * @tc.desc: SetWindowName/GetWindowName 213e0dac50fSopenharmony_ci * @tc.type: FUNC 214e0dac50fSopenharmony_ci */ 215e0dac50fSopenharmony_ciHWTEST_F(WindowOptionTest, WindowName01, Function | SmallTest | Level2) 216e0dac50fSopenharmony_ci{ 217e0dac50fSopenharmony_ci sptr<WindowOption> option = new WindowOption(); 218e0dac50fSopenharmony_ci option->SetWindowName("Sub Window"); 219e0dac50fSopenharmony_ci ASSERT_EQ("Sub Window", option->GetWindowName()); 220e0dac50fSopenharmony_ci} 221e0dac50fSopenharmony_ci 222e0dac50fSopenharmony_ci/** 223e0dac50fSopenharmony_ci * @tc.name: BundleName01 224e0dac50fSopenharmony_ci * @tc.desc: SetBundleName/GetBundleName 225e0dac50fSopenharmony_ci * @tc.type: FUNC 226e0dac50fSopenharmony_ci */ 227e0dac50fSopenharmony_ciHWTEST_F(WindowOptionTest, BundleName01, Function | SmallTest | Level2) 228e0dac50fSopenharmony_ci{ 229e0dac50fSopenharmony_ci sptr<WindowOption> option = new WindowOption(); 230e0dac50fSopenharmony_ci option->SetBundleName("settings"); 231e0dac50fSopenharmony_ci ASSERT_EQ("settings", option->GetBundleName()); 232e0dac50fSopenharmony_ci} 233e0dac50fSopenharmony_ci 234e0dac50fSopenharmony_ci/** 235e0dac50fSopenharmony_ci * @tc.name: WindowFlag01 236e0dac50fSopenharmony_ci * @tc.desc: SetWindowFlags/GetWindowFlags 237e0dac50fSopenharmony_ci * @tc.type: FUNC 238e0dac50fSopenharmony_ci */ 239e0dac50fSopenharmony_ciHWTEST_F(WindowOptionTest, WindowFlag01, Function | SmallTest | Level2) 240e0dac50fSopenharmony_ci{ 241e0dac50fSopenharmony_ci sptr<WindowOption> option = new WindowOption(); 242e0dac50fSopenharmony_ci option->SetWindowFlags(1u); 243e0dac50fSopenharmony_ci ASSERT_EQ(1u, option->GetWindowFlags()); 244e0dac50fSopenharmony_ci} 245e0dac50fSopenharmony_ci 246e0dac50fSopenharmony_ci/** 247e0dac50fSopenharmony_ci * @tc.name: WindowFlag02 248e0dac50fSopenharmony_ci * @tc.desc: AddWindowFlag/GetWindowFlags 249e0dac50fSopenharmony_ci * @tc.type: FUNC 250e0dac50fSopenharmony_ci */ 251e0dac50fSopenharmony_ciHWTEST_F(WindowOptionTest, WindowFlag02, Function | SmallTest | Level2) 252e0dac50fSopenharmony_ci{ 253e0dac50fSopenharmony_ci sptr<WindowOption> option = new WindowOption(); 254e0dac50fSopenharmony_ci option->AddWindowFlag(WindowFlag::WINDOW_FLAG_NEED_AVOID); 255e0dac50fSopenharmony_ci ASSERT_EQ(static_cast<uint32_t>(WindowFlag::WINDOW_FLAG_NEED_AVOID), option->GetWindowFlags()); 256e0dac50fSopenharmony_ci} 257e0dac50fSopenharmony_ci 258e0dac50fSopenharmony_ci/** 259e0dac50fSopenharmony_ci * @tc.name: WindowFlag03 260e0dac50fSopenharmony_ci * @tc.desc: AddWindowFlag/RemoveWindowFlag/GetWindowFlags 261e0dac50fSopenharmony_ci * @tc.type: FUNC 262e0dac50fSopenharmony_ci */ 263e0dac50fSopenharmony_ciHWTEST_F(WindowOptionTest, WindowFlag03, Function | SmallTest | Level2) 264e0dac50fSopenharmony_ci{ 265e0dac50fSopenharmony_ci sptr<WindowOption> option = new WindowOption(); 266e0dac50fSopenharmony_ci option->AddWindowFlag(WindowFlag::WINDOW_FLAG_NEED_AVOID); 267e0dac50fSopenharmony_ci option->AddWindowFlag(WindowFlag::WINDOW_FLAG_PARENT_LIMIT); 268e0dac50fSopenharmony_ci option->RemoveWindowFlag(WindowFlag::WINDOW_FLAG_NEED_AVOID); 269e0dac50fSopenharmony_ci ASSERT_EQ(static_cast<uint32_t>(WindowFlag::WINDOW_FLAG_PARENT_LIMIT), option->GetWindowFlags()); 270e0dac50fSopenharmony_ci} 271e0dac50fSopenharmony_ci 272e0dac50fSopenharmony_ci/** 273e0dac50fSopenharmony_ci * @tc.name: SetGetSystemBarProperty01 274e0dac50fSopenharmony_ci * @tc.desc: SetSystemBarProperty with test param and get 275e0dac50fSopenharmony_ci * @tc.type: FUNC 276e0dac50fSopenharmony_ci */ 277e0dac50fSopenharmony_ciHWTEST_F(WindowOptionTest, SetGetSystemBarProperty01, Function | SmallTest | Level3) 278e0dac50fSopenharmony_ci{ 279e0dac50fSopenharmony_ci sptr<WindowOption> option = new WindowOption(); 280e0dac50fSopenharmony_ci option->SetSystemBarProperty(WindowType::WINDOW_TYPE_STATUS_BAR, SYS_BAR_PROP_1); 281e0dac50fSopenharmony_ci option->SetSystemBarProperty(WindowType::WINDOW_TYPE_NAVIGATION_BAR, SYS_BAR_PROP_2); 282e0dac50fSopenharmony_ci ASSERT_EQ(SYS_BAR_PROPS_TEST, option->GetSystemBarProperty()); 283e0dac50fSopenharmony_ci} 284e0dac50fSopenharmony_ci 285e0dac50fSopenharmony_ci/** 286e0dac50fSopenharmony_ci * @tc.name: SetGetSystemBarProperty02 287e0dac50fSopenharmony_ci * @tc.desc: SetSystemBarProperty with invalid type and get 288e0dac50fSopenharmony_ci * @tc.type: FUNC 289e0dac50fSopenharmony_ci */ 290e0dac50fSopenharmony_ciHWTEST_F(WindowOptionTest, SetGetSystemBarProperty02, Function | SmallTest | Level3) 291e0dac50fSopenharmony_ci{ 292e0dac50fSopenharmony_ci sptr<WindowOption> option = new WindowOption(); 293e0dac50fSopenharmony_ci option->SetSystemBarProperty(WindowType::WINDOW_TYPE_APP_MAIN_WINDOW, SYS_BAR_PROP_1); 294e0dac50fSopenharmony_ci option->SetSystemBarProperty(WindowType::WINDOW_TYPE_MEDIA, SYS_BAR_PROP_2); 295e0dac50fSopenharmony_ci ASSERT_EQ(SYS_BAR_PROPS_DEFAULT, option->GetSystemBarProperty()); 296e0dac50fSopenharmony_ci} 297e0dac50fSopenharmony_ci 298e0dac50fSopenharmony_ci/** 299e0dac50fSopenharmony_ci * @tc.name: SetGetSystemBarProperty03 300e0dac50fSopenharmony_ci * @tc.desc: GetSystemBarProperty with no set 301e0dac50fSopenharmony_ci * @tc.type: FUNC 302e0dac50fSopenharmony_ci */ 303e0dac50fSopenharmony_ciHWTEST_F(WindowOptionTest, SetGetSystemBarProperty03, Function | SmallTest | Level3) 304e0dac50fSopenharmony_ci{ 305e0dac50fSopenharmony_ci sptr<WindowOption> option = new WindowOption(); 306e0dac50fSopenharmony_ci ASSERT_EQ(SYS_BAR_PROPS_DEFAULT, option->GetSystemBarProperty()); 307e0dac50fSopenharmony_ci} 308e0dac50fSopenharmony_ci 309e0dac50fSopenharmony_ci/** 310e0dac50fSopenharmony_ci * @tc.name: HitOffset 311e0dac50fSopenharmony_ci * @tc.desc: HitOffset setter/getter test 312e0dac50fSopenharmony_ci * @tc.type: FUNC 313e0dac50fSopenharmony_ci */ 314e0dac50fSopenharmony_ciHWTEST_F(WindowOptionTest, HitOffset, Function | SmallTest | Level3) 315e0dac50fSopenharmony_ci{ 316e0dac50fSopenharmony_ci sptr<WindowOption> option = new WindowOption(); 317e0dac50fSopenharmony_ci option->SetHitOffset(1, 1); 318e0dac50fSopenharmony_ci PointInfo point = {1, 1}; 319e0dac50fSopenharmony_ci ASSERT_EQ(point.x, option->GetHitOffset().x); 320e0dac50fSopenharmony_ci ASSERT_EQ(point.y, option->GetHitOffset().y); 321e0dac50fSopenharmony_ci} 322e0dac50fSopenharmony_ci 323e0dac50fSopenharmony_ci/** 324e0dac50fSopenharmony_ci * @tc.name: KeepScreenOn 325e0dac50fSopenharmony_ci * @tc.desc: KeepScreenOn setter/getter test 326e0dac50fSopenharmony_ci * @tc.type: FUNC 327e0dac50fSopenharmony_ci */ 328e0dac50fSopenharmony_ciHWTEST_F(WindowOptionTest, KeepScreenOn, Function | SmallTest | Level3) 329e0dac50fSopenharmony_ci{ 330e0dac50fSopenharmony_ci sptr<WindowOption> option = new WindowOption(); 331e0dac50fSopenharmony_ci option->SetKeepScreenOn(true); 332e0dac50fSopenharmony_ci ASSERT_EQ(true, option->IsKeepScreenOn()); 333e0dac50fSopenharmony_ci option->SetKeepScreenOn(false); 334e0dac50fSopenharmony_ci ASSERT_EQ(false, option->IsKeepScreenOn()); 335e0dac50fSopenharmony_ci} 336e0dac50fSopenharmony_ci 337e0dac50fSopenharmony_ci/** 338e0dac50fSopenharmony_ci * @tc.name: TurnScreenOn 339e0dac50fSopenharmony_ci * @tc.desc: TurnScreenOn setter/getter test 340e0dac50fSopenharmony_ci * @tc.type: FUNC 341e0dac50fSopenharmony_ci */ 342e0dac50fSopenharmony_ciHWTEST_F(WindowOptionTest, TurnScreenOn, Function | SmallTest | Level3) 343e0dac50fSopenharmony_ci{ 344e0dac50fSopenharmony_ci sptr<WindowOption> option = new WindowOption(); 345e0dac50fSopenharmony_ci option->SetTurnScreenOn(true); 346e0dac50fSopenharmony_ci ASSERT_EQ(true, option->IsTurnScreenOn()); 347e0dac50fSopenharmony_ci option->SetTurnScreenOn(false); 348e0dac50fSopenharmony_ci ASSERT_EQ(false, option->IsTurnScreenOn()); 349e0dac50fSopenharmony_ci} 350e0dac50fSopenharmony_ci 351e0dac50fSopenharmony_ci/** 352e0dac50fSopenharmony_ci * @tc.name: Brightness 353e0dac50fSopenharmony_ci * @tc.desc: Brightness setter/getter test 354e0dac50fSopenharmony_ci * @tc.type: FUNC 355e0dac50fSopenharmony_ci */ 356e0dac50fSopenharmony_ciHWTEST_F(WindowOptionTest, Brightness, Function | SmallTest | Level3) 357e0dac50fSopenharmony_ci{ 358e0dac50fSopenharmony_ci sptr<WindowOption> option = new WindowOption(); 359e0dac50fSopenharmony_ci option->SetBrightness(MINIMUM_BRIGHTNESS); 360e0dac50fSopenharmony_ci ASSERT_EQ(MINIMUM_BRIGHTNESS, option->GetBrightness()); 361e0dac50fSopenharmony_ci option->SetBrightness(MAXIMUM_BRIGHTNESS); 362e0dac50fSopenharmony_ci ASSERT_EQ(MAXIMUM_BRIGHTNESS, option->GetBrightness()); 363e0dac50fSopenharmony_ci 364e0dac50fSopenharmony_ci float brightness = -0.5; 365e0dac50fSopenharmony_ci option->SetBrightness(brightness); 366e0dac50fSopenharmony_ci ASSERT_EQ(brightness, option->GetBrightness()); 367e0dac50fSopenharmony_ci brightness = 2.0; 368e0dac50fSopenharmony_ci option->SetBrightness(brightness); 369e0dac50fSopenharmony_ci ASSERT_EQ(brightness, option->GetBrightness()); 370e0dac50fSopenharmony_ci} 371e0dac50fSopenharmony_ci 372e0dac50fSopenharmony_ci/** 373e0dac50fSopenharmony_ci * @tc.name: CallingWindow 374e0dac50fSopenharmony_ci * @tc.desc: CallingWindow setter/getter test 375e0dac50fSopenharmony_ci * @tc.type: FUNC 376e0dac50fSopenharmony_ci */ 377e0dac50fSopenharmony_ciHWTEST_F(WindowOptionTest, CallingWindow, Function | SmallTest | Level3) 378e0dac50fSopenharmony_ci{ 379e0dac50fSopenharmony_ci sptr<WindowOption> option = new WindowOption(); 380e0dac50fSopenharmony_ci option->SetCallingWindow(1); 381e0dac50fSopenharmony_ci ASSERT_EQ(1, option->GetCallingWindow()); 382e0dac50fSopenharmony_ci} 383e0dac50fSopenharmony_ci 384e0dac50fSopenharmony_ci/** 385e0dac50fSopenharmony_ci * @tc.name: SetWindowSessionType 386e0dac50fSopenharmony_ci * @tc.desc: SetWindowSessionType fun 387e0dac50fSopenharmony_ci * @tc.type: FUNC 388e0dac50fSopenharmony_ci */ 389e0dac50fSopenharmony_ciHWTEST_F(WindowOptionTest, SetWindowSessionType, Function | SmallTest | Level3) 390e0dac50fSopenharmony_ci{ 391e0dac50fSopenharmony_ci sptr<WindowOption> option = new WindowOption(); 392e0dac50fSopenharmony_ci auto ret = true; 393e0dac50fSopenharmony_ci option->SetWindowSessionType(WindowSessionType::SCENE_SESSION); 394e0dac50fSopenharmony_ci ASSERT_EQ(true, ret); 395e0dac50fSopenharmony_ci} 396e0dac50fSopenharmony_ci 397e0dac50fSopenharmony_ci/** 398e0dac50fSopenharmony_ci * @tc.name: GetWindowSessionType 399e0dac50fSopenharmony_ci * @tc.desc: GetWindowSessionType fun 400e0dac50fSopenharmony_ci * @tc.type: FUNC 401e0dac50fSopenharmony_ci */ 402e0dac50fSopenharmony_ciHWTEST_F(WindowOptionTest, GetWindowSessionType, Function | SmallTest | Level3) 403e0dac50fSopenharmony_ci{ 404e0dac50fSopenharmony_ci sptr<WindowOption> option = new WindowOption(); 405e0dac50fSopenharmony_ci option->SetWindowSessionType(WindowSessionType::SCENE_SESSION); 406e0dac50fSopenharmony_ci option->GetWindowSessionType(); 407e0dac50fSopenharmony_ci ASSERT_EQ(WindowSessionType::SCENE_SESSION, option->GetWindowSessionType()); 408e0dac50fSopenharmony_ci} 409e0dac50fSopenharmony_ci 410e0dac50fSopenharmony_ci/** 411e0dac50fSopenharmony_ci * @tc.name: Test01 412e0dac50fSopenharmony_ci * @tc.desc: Test01 413e0dac50fSopenharmony_ci * @tc.type: FUNC 414e0dac50fSopenharmony_ci */ 415e0dac50fSopenharmony_ciHWTEST_F(WindowOptionTest, Test01, Function | SmallTest | Level3) 416e0dac50fSopenharmony_ci{ 417e0dac50fSopenharmony_ci sptr<WindowOption> option = new WindowOption(); 418e0dac50fSopenharmony_ci ASSERT_NE(nullptr, option); 419e0dac50fSopenharmony_ci option->SetIsUIExtFirstSubWindow(true); 420e0dac50fSopenharmony_ci option->SetSubWindowTitle("Test"); 421e0dac50fSopenharmony_ci std::string ret = option->GetSubWindowTitle(); 422e0dac50fSopenharmony_ci ASSERT_EQ(true, ret == "Test"); 423e0dac50fSopenharmony_ci option->SetSubWindowDecorEnable(true); 424e0dac50fSopenharmony_ci bool ret1 = option->GetSubWindowDecorEnable(); 425e0dac50fSopenharmony_ci ASSERT_EQ(true, ret1); 426e0dac50fSopenharmony_ci option->SetOnlySupportSceneBoard(true); 427e0dac50fSopenharmony_ci bool ret2 = option->GetOnlySupportSceneBoard(); 428e0dac50fSopenharmony_ci ASSERT_EQ(true, ret2); 429e0dac50fSopenharmony_ci} 430e0dac50fSopenharmony_ci 431e0dac50fSopenharmony_ci/** 432e0dac50fSopenharmony_ci * @tc.name: RealParentId 433e0dac50fSopenharmony_ci * @tc.desc: RealParentId setter and getter test 434e0dac50fSopenharmony_ci * @tc.type: FUNC 435e0dac50fSopenharmony_ci */ 436e0dac50fSopenharmony_ciHWTEST_F(WindowOptionTest, SetRealParentId, Function | SmallTest | Level3) 437e0dac50fSopenharmony_ci{ 438e0dac50fSopenharmony_ci sptr<WindowOption> option = sptr<WindowOption>::MakeSptr(); 439e0dac50fSopenharmony_ci ASSERT_NE(nullptr, option); 440e0dac50fSopenharmony_ci option->SetRealParentId(114); 441e0dac50fSopenharmony_ci EXPECT_EQ(114, option->GetRealParentId()); 442e0dac50fSopenharmony_ci option->SetRealParentId(514); 443e0dac50fSopenharmony_ci EXPECT_EQ(514, option->GetRealParentId()); 444e0dac50fSopenharmony_ci} 445e0dac50fSopenharmony_ci 446e0dac50fSopenharmony_ci/** 447e0dac50fSopenharmony_ci * @tc.name: SetParentWindowType 448e0dac50fSopenharmony_ci * @tc.desc: SetParentWindowType setter and getter test 449e0dac50fSopenharmony_ci * @tc.type: FUNC 450e0dac50fSopenharmony_ci */ 451e0dac50fSopenharmony_ciHWTEST_F(WindowOptionTest, SetParentWindowType, Function | SmallTest | Level3) 452e0dac50fSopenharmony_ci{ 453e0dac50fSopenharmony_ci sptr<WindowOption> option = sptr<WindowOption>::MakeSptr(); 454e0dac50fSopenharmony_ci ASSERT_NE(nullptr, option); 455e0dac50fSopenharmony_ci option->SetParentWindowType(WindowType::WINDOW_TYPE_TOAST); 456e0dac50fSopenharmony_ci EXPECT_EQ(WindowType::WINDOW_TYPE_TOAST, option->GetParentWindowType()); 457e0dac50fSopenharmony_ci option->SetParentWindowType(WindowType::WINDOW_TYPE_APP_COMPONENT); 458e0dac50fSopenharmony_ci EXPECT_EQ(WindowType::WINDOW_TYPE_APP_COMPONENT, option->GetParentWindowType()); 459e0dac50fSopenharmony_ci} 460e0dac50fSopenharmony_ci 461e0dac50fSopenharmony_ci/** 462e0dac50fSopenharmony_ci * @tc.name: UIExtensionUsage 463e0dac50fSopenharmony_ci * @tc.desc: UIExtensionUsage setter and getter test 464e0dac50fSopenharmony_ci * @tc.type: FUNC 465e0dac50fSopenharmony_ci */ 466e0dac50fSopenharmony_ciHWTEST_F(WindowOptionTest, SetUIExtensionUsage, Function | SmallTest | Level3) 467e0dac50fSopenharmony_ci{ 468e0dac50fSopenharmony_ci sptr<WindowOption> option = sptr<WindowOption>::MakeSptr(); 469e0dac50fSopenharmony_ci ASSERT_NE(nullptr, option); 470e0dac50fSopenharmony_ci option->SetUIExtensionUsage(0); 471e0dac50fSopenharmony_ci EXPECT_EQ(0, option->GetUIExtensionUsage()); 472e0dac50fSopenharmony_ci option->SetUIExtensionUsage(1); 473e0dac50fSopenharmony_ci EXPECT_EQ(1, option->GetUIExtensionUsage()); 474e0dac50fSopenharmony_ci} 475e0dac50fSopenharmony_ci 476e0dac50fSopenharmony_ci/** 477e0dac50fSopenharmony_ci * @tc.name: SetDialogDecorEnable 478e0dac50fSopenharmony_ci * @tc.desc: SetDialogDecorEnable 479e0dac50fSopenharmony_ci * @tc.type: FUNC 480e0dac50fSopenharmony_ci */ 481e0dac50fSopenharmony_ciHWTEST_F(WindowOptionTest, SetDialogDecorEnable, Function | SmallTest | Level3) 482e0dac50fSopenharmony_ci{ 483e0dac50fSopenharmony_ci sptr<WindowOption> option = new WindowOption(); 484e0dac50fSopenharmony_ci ASSERT_NE(nullptr, option); 485e0dac50fSopenharmony_ci option->SetDialogDecorEnable(true); 486e0dac50fSopenharmony_ci ASSERT_EQ(true, option->GetDialogDecorEnable()); 487e0dac50fSopenharmony_ci option->SetDialogDecorEnable(false); 488e0dac50fSopenharmony_ci ASSERT_EQ(false, option->GetDialogDecorEnable()); 489e0dac50fSopenharmony_ci} 490e0dac50fSopenharmony_ci 491e0dac50fSopenharmony_ci/** 492e0dac50fSopenharmony_ci * @tc.name: SetDialogTitle 493e0dac50fSopenharmony_ci * @tc.desc: SetDialogTitle 494e0dac50fSopenharmony_ci * @tc.type: FUNC 495e0dac50fSopenharmony_ci */ 496e0dac50fSopenharmony_ciHWTEST_F(WindowOptionTest, SetDialogTitle, Function | SmallTest | Level3) 497e0dac50fSopenharmony_ci{ 498e0dac50fSopenharmony_ci sptr<WindowOption> option = new WindowOption(); 499e0dac50fSopenharmony_ci ASSERT_NE(nullptr, option); 500e0dac50fSopenharmony_ci option->SetDialogTitle("Test"); 501e0dac50fSopenharmony_ci std::string ret = option->GetDialogTitle(); 502e0dac50fSopenharmony_ci ASSERT_EQ(true, ret == "Test"); 503e0dac50fSopenharmony_ci} 504e0dac50fSopenharmony_ci 505e0dac50fSopenharmony_ci/** 506e0dac50fSopenharmony_ci * @tc.name: SetWindowTopmost 507e0dac50fSopenharmony_ci * @tc.desc: SetWindowTopmost 508e0dac50fSopenharmony_ci * @tc.type: FUNC 509e0dac50fSopenharmony_ci */ 510e0dac50fSopenharmony_ciHWTEST_F(WindowOptionTest, SetWindowTopmost, Function | SmallTest | Level3) 511e0dac50fSopenharmony_ci{ 512e0dac50fSopenharmony_ci sptr<WindowOption> option = new WindowOption(); 513e0dac50fSopenharmony_ci ASSERT_NE(nullptr, option); 514e0dac50fSopenharmony_ci option->SetWindowTopmost(true); 515e0dac50fSopenharmony_ci ASSERT_EQ(true, option->GetWindowTopmost()); 516e0dac50fSopenharmony_ci option->SetWindowTopmost(false); 517e0dac50fSopenharmony_ci ASSERT_EQ(false, option->GetWindowTopmost()); 518e0dac50fSopenharmony_ci} 519e0dac50fSopenharmony_ci} 520e0dac50fSopenharmony_ci} // namespace Rosen 521e0dac50fSopenharmony_ci} // namespace OHOS 522