diff --git a/frameworks/cj/ffi/cj_ability_delegator.cpp b/frameworks/cj/ffi/cj_ability_delegator.cpp index c0d58d50b1e..6ff8ad5e1cb 100644 --- a/frameworks/cj/ffi/cj_ability_delegator.cpp +++ b/frameworks/cj/ffi/cj_ability_delegator.cpp @@ -63,6 +63,11 @@ std::string CJShellCmdResult::Dump() { return shellCmdResultr_->Dump(); } + +void CJAbilityDelegator::FinishTest(const char* msg, int64_t code) +{ + delegator_->FinishUserTest(msg, code); +} extern "C" { int64_t FFIAbilityDelegatorRegistryGetAbilityDelegator() @@ -144,6 +149,15 @@ int32_t FFIAbilityDelegatorApplicationContext(int64_t id) } return appContext->GetID(); } + +void FFIAbilityDelegatorFinishTest(int64_t id, const char* msg, int64_t code) +{ + auto cjDelegator = FFI::FFIData::GetData(id); + if (cjDelegator == nullptr) { + TAG_LOGE(AAFwkTag::CONTEXT, "cj delegator is null."); + } + cjDelegator->FinishTest(msg, code); +} } } } \ No newline at end of file diff --git a/frameworks/cj/ffi/cj_ability_delegator.h b/frameworks/cj/ffi/cj_ability_delegator.h index 5a5682b7dab..55a9151224a 100644 --- a/frameworks/cj/ffi/cj_ability_delegator.h +++ b/frameworks/cj/ffi/cj_ability_delegator.h @@ -34,6 +34,7 @@ public: int32_t StartAbility(const AAFwk::Want& want); std::shared_ptr ExecuteShellCommand(const char* cmd, int64_t timeoutSec); std::shared_ptr GetAppContext(); + void FinishTest(const char* msg, int64_t code); private: std::shared_ptr delegator_; @@ -58,6 +59,7 @@ CJ_EXPORT int32_t FFIGetExitCode(int64_t id); CJ_EXPORT const char* FFIGetStdResult(int64_t id); CJ_EXPORT const char* FFIDump(int64_t id); CJ_EXPORT int32_t FFIAbilityDelegatorApplicationContext(int64_t id); +CJ_EXPORT void FFIAbilityDelegatorFinishTest(int64_t id, const char* msg, int64_t code); }; } } diff --git a/frameworks/cj/mock/cj_ability_ffi.cpp b/frameworks/cj/mock/cj_ability_ffi.cpp index a51ac6bbac0..c490a2588d0 100644 --- a/frameworks/cj/mock/cj_ability_ffi.cpp +++ b/frameworks/cj/mock/cj_ability_ffi.cpp @@ -39,6 +39,7 @@ int FFIGetExitCode(); int FFIGetStdResult(); int FFIDump(); int FFIAbilityDelegatorApplicationContext(); +int FFIAbilityDelegatorFinishTest(); struct AbilityContextBroker { int64_t isAbilityContextExisted = 1;