From b402ef6e1ec33674bf72806a0138d5170427f343 Mon Sep 17 00:00:00 2001 From: zhaowenli Date: Wed, 3 Jan 2024 11:19:56 +0000 Subject: [PATCH] =?UTF-8?q?fixed=20c155eb5=20from=20https://gitee.com/ZWL1?= =?UTF-8?q?1/security=5Fsecurity=5Fcomponent=5Fmanager/pulls/81=20tdd?= =?UTF-8?q?=E7=94=A8=E4=BE=8B=E8=A1=A5=E5=85=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: zhaowenli Change-Id: I194d57da95687b3e51c7c2c793724db8d77ba0c7 --- .../unittest/src/sec_comp_entity_test.cpp | 28 ++++++++ .../test/unittest/src/sec_comp_stub_test.cpp | 65 +++++++++++++++++++ 2 files changed, 93 insertions(+) diff --git a/services/security_component_service/sa/test/unittest/src/sec_comp_entity_test.cpp b/services/security_component_service/sa/test/unittest/src/sec_comp_entity_test.cpp index 4809666..97d689a 100644 --- a/services/security_component_service/sa/test/unittest/src/sec_comp_entity_test.cpp +++ b/services/security_component_service/sa/test/unittest/src/sec_comp_entity_test.cpp @@ -152,3 +152,31 @@ HWTEST_F(SecCompEntityTest, CompareComponentBasicInfo001, TestSize.Level1) bool isRectCheck = true; ASSERT_FALSE(entity_->CompareComponentBasicInfo(other, isRectCheck)); } + +/** + * @tc.name: CheckKeyEvent001 + * @tc.desc: Test CheckKeyEvent + * @tc.type: FUNC + * @tc.require: AR000HO9J7 + */ +HWTEST_F(SecCompEntityTest, CheckKeyEvent001, TestSize.Level1) +{ + SecCompClickEvent clickInfo; + clickInfo.type = ClickEventType::KEY_EVENT_TYPE; + auto current = static_cast( + std::chrono::high_resolution_clock::now().time_since_epoch().count()) / 1000; + clickInfo.key.timestamp = current - 1000000L - 1; + ASSERT_EQ(SC_SERVICE_ERROR_CLICK_EVENT_INVALID, entity_->CheckClickInfo(clickInfo)); + + clickInfo.key.timestamp = current + 1; + ASSERT_EQ(SC_SERVICE_ERROR_CLICK_EVENT_INVALID, entity_->CheckClickInfo(clickInfo)); + + clickInfo.key.timestamp = current - 1; + clickInfo.key.keyCode = 1; + ASSERT_EQ(SC_SERVICE_ERROR_CLICK_EVENT_INVALID, entity_->CheckClickInfo(clickInfo)); + + clickInfo.key.keyCode = KEY_SPACE; + ASSERT_EQ(SC_OK, entity_->CheckKeyEvent(clickInfo)); + clickInfo.key.keyCode = KEY_ENTER; + ASSERT_EQ(SC_OK, entity_->CheckKeyEvent(clickInfo)); +} diff --git a/services/security_component_service/sa/test/unittest/src/sec_comp_stub_test.cpp b/services/security_component_service/sa/test/unittest/src/sec_comp_stub_test.cpp index e880224..87bb4af 100644 --- a/services/security_component_service/sa/test/unittest/src/sec_comp_stub_test.cpp +++ b/services/security_component_service/sa/test/unittest/src/sec_comp_stub_test.cpp @@ -198,3 +198,68 @@ HWTEST_F(SecCompStubTest, VerifySavePermissionInner001, TestSize.Level1) ASSERT_EQ(SC_OK, stub_->VerifySavePermissionInner(data, reply)); ASSERT_NE(SC_OK, stub_->GetEnhanceRemoteObjectInner(data, reply)); } + +/** + * @tc.name: Marshalling001 + * @tc.desc: Test SecCompClickEventParcel::Marshalling + * @tc.type: FUNC + * @tc.require: AR000HO9J7 + */ +HWTEST_F(SecCompStubTest, Marshalling001, TestSize.Level1) +{ + sptr clickParcel = new (std::nothrow) SecCompClickEventParcel(); + Parcel out; + EXPECT_FALSE(clickParcel->Marshalling(out)); + clickParcel->clickInfoParams_.type = ClickEventType::UNKNOWN_EVENT_TYPE; + EXPECT_FALSE(clickParcel->Marshalling(out)); + + clickParcel->clickInfoParams_.extraInfo.dataSize = 1; + clickParcel->clickInfoParams_.type = ClickEventType::POINT_EVENT_TYPE; + EXPECT_FALSE(clickParcel->Marshalling(out)); + clickParcel->clickInfoParams_.type = ClickEventType::KEY_EVENT_TYPE; + EXPECT_FALSE(clickParcel->Marshalling(out)); + + uint8_t data[32] = {0}; + clickParcel->clickInfoParams_.extraInfo.dataSize = 32; + clickParcel->clickInfoParams_.extraInfo.data = data; + EXPECT_TRUE(clickParcel->Marshalling(out)); +} + +/** + * @tc.name: Unmarshalling001 + * @tc.desc: Test SecCompClickEventParcel::Unmarshalling + * @tc.type: FUNC + * @tc.require: AR000HO9J7 + */ +HWTEST_F(SecCompStubTest, Unmarshalling001, TestSize.Level1) +{ + sptr clickParcel = new (std::nothrow) SecCompClickEventParcel(); + Parcel in; + in.WriteInt32(1); + EXPECT_EQ(nullptr, clickParcel->Unmarshalling(in)); + in.WriteInt32(2); + EXPECT_EQ(nullptr, clickParcel->Unmarshalling(in)); + in.WriteInt32(0); + EXPECT_EQ(nullptr, clickParcel->Unmarshalling(in)); + + in.WriteInt32(2); + in.WriteUint64(1); + in.WriteInt32(1); + int dataSize = MAX_EXTRA_SIZE + 1; + in.WriteUint32(dataSize); + EXPECT_EQ(nullptr, clickParcel->Unmarshalling(in)); + + in.WriteInt32(2); + in.WriteUint64(1); + in.WriteInt32(1); + in.WriteUint32(1); + EXPECT_EQ(nullptr, clickParcel->Unmarshalling(in)); + + in.WriteInt32(2); + in.WriteUint64(1); + in.WriteInt32(1); + in.WriteUint32(32); + uint8_t data[32] = {0}; + in.WriteBuffer(data, 32); + EXPECT_NE(nullptr, clickParcel->Unmarshalling(in)); +} -- Gitee