!9826 元能力 UT覆盖率增加 from lijun part 3

Merge pull request !9826 from zhubingwei/master
This commit is contained in:
openharmony_ci
2024-08-10 09:33:42 +00:00
committed by Gitee
2 changed files with 174 additions and 3 deletions
@@ -18,11 +18,15 @@ import("//foundation/ability/ability_runtime/ability_runtime.gni")
ohos_unittest("ui_service_extension_test") {
module_out_path = "ability_runtime/extension"
sources = [ "ui_service_extension_test.cpp" ]
sources = [
"${ability_runtime_path}/test/mock/frameworks_kits_ability_native_test/include/mock_ability_manager_service.cpp",
"ui_service_extension_test.cpp",
]
cflags = []
include_dirs = [
"${ability_runtime_path}/test/mock/frameworks_kits_ability_native_test/include",
"${ability_runtime_test_path}/mock/services_appmgr_test/include",
"${ability_runtime_path}/interfaces/kits/native/ability/native/ui_service_extension_ability",
"${ability_runtime_path}/interfaces/inner_api/runtime/include",
@@ -35,11 +39,13 @@ ohos_unittest("ui_service_extension_test") {
deps = [
"${ability_runtime_innerkits_path}/ability_manager:ability_manager",
"${ability_runtime_innerkits_path}/ability_manager:ability_start_options",
"${ability_runtime_native_path}/ability:ability_context_native",
"${ability_runtime_native_path}/ability/native:abilitykit_native",
"${ability_runtime_native_path}/ability/native:abilitykit_utils",
"${ability_runtime_native_path}/ability/native:ui_service_extension",
"${ability_runtime_native_path}/appkit:app_context",
"${ability_runtime_native_path}/appkit:appkit_native",
"${ability_runtime_services_path}/abilitymgr:abilityms",
"//third_party/googletest:gmock_main",
"//third_party/googletest:gtest_main",
]
@@ -20,10 +20,12 @@
#include "ui_service_extension.h"
#include "ui_service_extension_module_loader.h"
#include "ui_service_extension_context.h"
#include "ability_manager_client.h"
#undef private
#undef protected
#include "mock_ability_token.h"
#include "mock_ability_manager_service.h"
#include "ability_handler.h"
#include "ohos_application.h"
#include "runtime.h"
@@ -33,6 +35,16 @@ using namespace OHOS::Rosen;
namespace OHOS {
namespace AbilityRuntime {
class MockWindow : public Rosen::Window {
public:
virtual Ace::UIContent* GetUIContent() const
{
return uiContent_.get();
}
std::unique_ptr<Ace::UIContent> uiContent_ = Ace::UIContent::Create(nullptr, nullptr);
};
class UIServiceExtensionTest : public testing::Test {
public:
static void SetUpTestCase();
@@ -78,6 +90,7 @@ HWTEST_F(UIServiceExtensionTest, CreateAndInitContext_0100, TestSize.Level1)
TAG_LOGI(AAFwkTag::TEST, "CreateAndInitContext_0100 start");
Runtime::Options options;
options.lang = Runtime::Language::JS;
auto runtime = Runtime::Create(options);
auto uIServiceExtensionPtr = UIServiceExtension::Create(runtime);
@@ -105,6 +118,7 @@ HWTEST_F(UIServiceExtensionTest, Init_0100, TestSize.Level1)
TAG_LOGI(AAFwkTag::TEST, "Init_0100 start");
Runtime::Options options;
options.lang = Runtime::Language::CJ;
auto runtime = Runtime::Create(options);
auto uIServiceExtensionPtr = UIServiceExtension::Create(runtime);
@@ -133,6 +147,9 @@ HWTEST_F(UIServiceExtensionTest, StartAbility_0100, TestSize.Level1)
AAFwk::Want want;
AAFwk::StartOptions startOptions;
sptr<AAFwk::MockAbilityManagerService> porxyNew = new (std::nothrow) AAFwk::MockAbilityManagerService();
AbilityManagerClient::GetInstance()->proxy_ = porxyNew;
UIServiceExtensionContext uiServiceExtensionContext;
uiServiceExtensionContext.StartAbility(want, startOptions);
@@ -179,6 +196,11 @@ HWTEST_F(UIServiceExtensionTest, GetUIContent_0100, TestSize.Level1)
TAG_LOGI(AAFwkTag::TEST, "GetUIContent_0100 start");
UIServiceExtensionContext uiServiceExtensionContext;
uiServiceExtensionContext.SetWindow(nullptr);
uiServiceExtensionContext.GetUIContent();
sptr<Rosen::Window> window = new Rosen::Window();
uiServiceExtensionContext.SetWindow(window);
uiServiceExtensionContext.GetUIContent();
TAG_LOGI(AAFwkTag::TEST, "GetUIContent_0100 end");
@@ -195,7 +217,7 @@ HWTEST_F(UIServiceExtensionTest, StartAbilityByType_0100, TestSize.Level1)
std::string type;
AAFwk::WantParams wantParam;
std::shared_ptr<JsUIExtensionCallback> uiExtensionCallbacks;
std::shared_ptr<JsUIExtensionCallback> uiExtensionCallbacks{nullptr};
UIServiceExtensionContext uiServiceExtensionContext;
uiServiceExtensionContext.StartAbilityByType(type, wantParam, uiExtensionCallbacks);
@@ -203,6 +225,73 @@ HWTEST_F(UIServiceExtensionTest, StartAbilityByType_0100, TestSize.Level1)
TAG_LOGI(AAFwkTag::TEST, "StartAbilityByType_0100 end");
}
/**
* @tc.number: StartAbilityByType_0200
* @tc.name: UIServiceExtension StartAbilityByType
* @tc.desc: UIServiceExtension StartAbilityByType.
*/
HWTEST_F(UIServiceExtensionTest, StartAbilityByType_0200, TestSize.Level1)
{
TAG_LOGI(AAFwkTag::TEST, "StartAbilityByType_0200 start");
std::string type;
AAFwk::WantParams wantParam;
napi_env env;
std::shared_ptr<JsUIExtensionCallback> uiExtensionCallbacks = std::make_shared<JsUIExtensionCallback>(env);
UIServiceExtensionContext uiServiceExtensionContext;
uiServiceExtensionContext.SetWindow(nullptr);
uiServiceExtensionContext.StartAbilityByType(type, wantParam, uiExtensionCallbacks);
TAG_LOGI(AAFwkTag::TEST, "StartAbilityByType_0200 end");
}
/**
* @tc.number: StartAbilityByType_0300
* @tc.name: UIServiceExtension StartAbilityByType
* @tc.desc: UIServiceExtension StartAbilityByType.
*/
HWTEST_F(UIServiceExtensionTest, StartAbilityByType_0300, TestSize.Level1)
{
TAG_LOGI(AAFwkTag::TEST, "StartAbilityByType_0300 start");
std::string type;
AAFwk::WantParams wantParam;
napi_env env;
std::shared_ptr<JsUIExtensionCallback> uiExtensionCallbacks = std::make_shared<JsUIExtensionCallback>(env);
sptr<Rosen::Window> window = new MockWindow();
UIServiceExtensionContext uiServiceExtensionContext;
uiServiceExtensionContext.SetWindow(window);
uiServiceExtensionContext.StartAbilityByType(type, wantParam, uiExtensionCallbacks);
TAG_LOGI(AAFwkTag::TEST, "StartAbilityByType_0300 end");
}
/**
* @tc.number: StartAbilityByType_0400
* @tc.name: UIServiceExtension StartAbilityByType
* @tc.desc: UIServiceExtension StartAbilityByType.
*/
HWTEST_F(UIServiceExtensionTest, StartAbilityByType_0400, TestSize.Level1)
{
TAG_LOGI(AAFwkTag::TEST, "StartAbilityByType_0400 start");
std::string type;
AAFwk::WantParams wantParam;
const std::string FLAG_AUTH_READ_URI_PERMISSION = "ability.want.params.uriPermissionFlag";
wantParam.SetParam(FLAG_AUTH_READ_URI_PERMISSION, 0);
napi_env env;
std::shared_ptr<JsUIExtensionCallback> uiExtensionCallbacks = std::make_shared<JsUIExtensionCallback>(env);
sptr<Rosen::Window> window = new MockWindow();
UIServiceExtensionContext uiServiceExtensionContext;
uiServiceExtensionContext.SetWindow(window);
uiServiceExtensionContext.StartAbilityByType(type, wantParam, uiExtensionCallbacks);
TAG_LOGI(AAFwkTag::TEST, "StartAbilityByType_0400 end");
}
/**
* @tc.number: GetWindowOption_0100
* @tc.name: UIServiceExtension GetWindowOption
@@ -215,7 +304,10 @@ HWTEST_F(UIServiceExtensionTest, GetWindowOption_0100, TestSize.Level1)
AAFwk::Want want;
std::shared_ptr<Rosen::ExtensionWindowConfig> extensionWindowConfig
= std::make_shared<Rosen::ExtensionWindowConfig>();
int32_t hostWindowId{0};
extensionWindowConfig->windowAttribute = Rosen::ExtensionWindowAttribute::SUB_WINDOW;
extensionWindowConfig->subWindowOptions.isModal = true;
extensionWindowConfig->subWindowOptions.isTopmost = true;
int32_t hostWindowId{1};
Runtime::Options options;
auto runtime = Runtime::Create(options);
@@ -225,6 +317,79 @@ HWTEST_F(UIServiceExtensionTest, GetWindowOption_0100, TestSize.Level1)
TAG_LOGI(AAFwkTag::TEST, "GetWindowOption_0100 end");
}
/**
* @tc.number: GetWindowOption_0200
* @tc.name: UIServiceExtension GetWindowOption
* @tc.desc: UIServiceExtension GetWindowOption.
*/
HWTEST_F(UIServiceExtensionTest, GetWindowOption_0200, TestSize.Level1)
{
TAG_LOGI(AAFwkTag::TEST, "GetWindowOption_0200 start");
AAFwk::Want want;
std::shared_ptr<Rosen::ExtensionWindowConfig> extensionWindowConfig
= std::make_shared<Rosen::ExtensionWindowConfig>();
extensionWindowConfig->windowAttribute = Rosen::ExtensionWindowAttribute::SUB_WINDOW;
extensionWindowConfig->subWindowOptions.isModal = false;
extensionWindowConfig->subWindowOptions.isTopmost = true;
int32_t hostWindowId{0};
Runtime::Options options;
auto runtime = Runtime::Create(options);
auto uIServiceExtensionPtr = UIServiceExtension::Create(runtime);
uIServiceExtensionPtr->GetWindowOption(want, extensionWindowConfig, hostWindowId);
TAG_LOGI(AAFwkTag::TEST, "GetWindowOption_0200 end");
}
/**
* @tc.number: GetWindowOption_0300
* @tc.name: UIServiceExtension GetWindowOption
* @tc.desc: UIServiceExtension GetWindowOption.
*/
HWTEST_F(UIServiceExtensionTest, GetWindowOption_0300, TestSize.Level1)
{
TAG_LOGI(AAFwkTag::TEST, "GetWindowOption_0300 start");
AAFwk::Want want;
std::shared_ptr<Rosen::ExtensionWindowConfig> extensionWindowConfig
= std::make_shared<Rosen::ExtensionWindowConfig>();
extensionWindowConfig->windowAttribute = Rosen::ExtensionWindowAttribute::SUB_WINDOW;
extensionWindowConfig->subWindowOptions.isModal = true;
extensionWindowConfig->subWindowOptions.isTopmost = false;
int32_t hostWindowId{0};
Runtime::Options options;
auto runtime = Runtime::Create(options);
auto uIServiceExtensionPtr = UIServiceExtension::Create(runtime);
uIServiceExtensionPtr->GetWindowOption(want, extensionWindowConfig, hostWindowId);
TAG_LOGI(AAFwkTag::TEST, "GetWindowOption_0300 end");
}
/**
* @tc.number: GetWindowOption_0400
* @tc.name: UIServiceExtension GetWindowOption
* @tc.desc: UIServiceExtension GetWindowOption.
*/
HWTEST_F(UIServiceExtensionTest, GetWindowOption_0400, TestSize.Level1)
{
TAG_LOGI(AAFwkTag::TEST, "GetWindowOption_0400 start");
AAFwk::Want want;
std::shared_ptr<Rosen::ExtensionWindowConfig> extensionWindowConfig
= std::make_shared<Rosen::ExtensionWindowConfig>();
extensionWindowConfig->windowAttribute = Rosen::ExtensionWindowAttribute::SYSTEM_WINDOW;
int32_t hostWindowId{0};
Runtime::Options options;
auto runtime = Runtime::Create(options);
auto uIServiceExtensionPtr = UIServiceExtension::Create(runtime);
uIServiceExtensionPtr->GetWindowOption(want, extensionWindowConfig, hostWindowId);
TAG_LOGI(AAFwkTag::TEST, "GetWindowOption_0400 end");
}
/**
* @tc.number: SetWindow_0100
* @tc.name: UIServiceExtension SetWindow