mirror of
https://gitee.com/openharmony/xts_hats
synced 2025-02-19 01:49:03 +00:00
修复扩展驱动测试用例失败
Signed-off-by: lixinsheng2 <lixinsheng2@huawei.com>
This commit is contained in:
parent
ce3f536b77
commit
4b456e80a4
@ -42,6 +42,23 @@ public:
|
||||
}
|
||||
};
|
||||
|
||||
static void clearDeviceMap(ExtDeviceManager &instance)
|
||||
{
|
||||
unordered_map<BusType, unordered_map<uint64_t, shared_ptr<Device>>> map;
|
||||
instance.deviceMap_ = map;
|
||||
}
|
||||
|
||||
static size_t getDeviceNum(unordered_map<uint64_t, shared_ptr<Device>> map)
|
||||
{
|
||||
size_t num = 0;
|
||||
for (auto &[_, device] : map) {
|
||||
if (!device->IsUnRegisted()) {
|
||||
num++;
|
||||
}
|
||||
}
|
||||
return num;
|
||||
}
|
||||
|
||||
HWTEST_F(DeviceManagerTest, SUB_Driver_Ext_DevManager_0300, TestSize.Level1)
|
||||
{
|
||||
BusExtensionCore &core = BusExtensionCore::GetInstance();
|
||||
@ -60,22 +77,25 @@ HWTEST_F(DeviceManagerTest, SUB_Driver_Ext_DevManager_0600, TestSize.Level1)
|
||||
// test OnDeviceAdd and OnDeviceRemove
|
||||
HWTEST_F(DeviceManagerTest, SUB_Driver_Ext_DevManager_0800, TestSize.Level1)
|
||||
{
|
||||
ExtDeviceManager &extMgr = ExtDeviceManager::GetInstance();
|
||||
clearDeviceMap(extMgr);
|
||||
std::shared_ptr<DevChangeCallback> callback = std::make_shared<DevChangeCallback>();
|
||||
std::shared_ptr<DeviceInfo> device = std::make_shared<DeviceInfo>(0);
|
||||
device->devInfo_.devBusInfo.busType = BusType::BUS_TYPE_TEST;
|
||||
device->devInfo_.devBusInfo.busDeviceId = 1;
|
||||
int32_t ret = callback->OnDeviceAdd(device);
|
||||
ASSERT_EQ(ret, EDM_OK);
|
||||
ExtDeviceManager &extMgr = ExtDeviceManager::GetInstance();
|
||||
ASSERT_EQ(extMgr.deviceMap_[BusType::BUS_TYPE_TEST].size(), 1);
|
||||
ASSERT_EQ(getDeviceNum(extMgr.deviceMap_[BusType::BUS_TYPE_TEST]), 1);
|
||||
ret = callback->OnDeviceRemove(device);
|
||||
ASSERT_EQ(ret, EDM_OK);
|
||||
ASSERT_EQ(extMgr.deviceMap_[BusType::BUS_TYPE_TEST].size(), 0);
|
||||
ASSERT_EQ(getDeviceNum(extMgr.deviceMap_[BusType::BUS_TYPE_TEST]), 0);
|
||||
}
|
||||
|
||||
// test adding device repeatedly
|
||||
HWTEST_F(DeviceManagerTest, SUB_Driver_Ext_DevManager_0900, TestSize.Level1)
|
||||
{
|
||||
ExtDeviceManager &extMgr = ExtDeviceManager::GetInstance();
|
||||
clearDeviceMap(extMgr);
|
||||
std::shared_ptr<DevChangeCallback> callback = std::make_shared<DevChangeCallback>();
|
||||
std::shared_ptr<DeviceInfo> device = std::make_shared<DeviceInfo>(0);
|
||||
device->devInfo_.devBusInfo.busType = BusType::BUS_TYPE_TEST;
|
||||
@ -84,17 +104,18 @@ HWTEST_F(DeviceManagerTest, SUB_Driver_Ext_DevManager_0900, TestSize.Level1)
|
||||
ASSERT_EQ(ret, EDM_OK);
|
||||
ret = callback->OnDeviceAdd(device);
|
||||
ASSERT_EQ(ret, EDM_OK);
|
||||
ExtDeviceManager &extMgr = ExtDeviceManager::GetInstance();
|
||||
ASSERT_EQ(extMgr.deviceMap_[BusType::BUS_TYPE_TEST].size(), 1);
|
||||
ASSERT_EQ(getDeviceNum(extMgr.deviceMap_[BusType::BUS_TYPE_TEST]), 1);
|
||||
ret = callback->OnDeviceRemove(device);
|
||||
ASSERT_EQ(ret, EDM_OK);
|
||||
ASSERT_EQ(extMgr.deviceMap_[BusType::BUS_TYPE_TEST].size(), 0);
|
||||
ASSERT_EQ(getDeviceNum(extMgr.deviceMap_[BusType::BUS_TYPE_TEST]), 0);
|
||||
ret = callback->OnDeviceRemove(device);
|
||||
ASSERT_EQ(ret, EDM_OK);
|
||||
}
|
||||
|
||||
HWTEST_F(DeviceManagerTest, SUB_Driver_Ext_DevManager_1000, TestSize.Level1)
|
||||
{
|
||||
ExtDeviceManager &extMgr = ExtDeviceManager::GetInstance();
|
||||
clearDeviceMap(extMgr);
|
||||
std::shared_ptr<DevChangeCallback> callback = std::make_shared<DevChangeCallback>();
|
||||
std::shared_ptr<DeviceInfo> device0 = std::make_shared<DeviceInfo>(0);
|
||||
device0->devInfo_.devBusInfo.busType = BusType::BUS_TYPE_TEST;
|
||||
@ -106,19 +127,19 @@ HWTEST_F(DeviceManagerTest, SUB_Driver_Ext_DevManager_1000, TestSize.Level1)
|
||||
device1->devInfo_.devBusInfo.busDeviceId = 2;
|
||||
ret = callback->OnDeviceAdd(device1);
|
||||
ASSERT_EQ(ret, EDM_OK);
|
||||
ExtDeviceManager &extMgr = ExtDeviceManager::GetInstance();
|
||||
ASSERT_EQ(extMgr.deviceMap_[BusType::BUS_TYPE_TEST].size(), 2);
|
||||
ASSERT_EQ(getDeviceNum(extMgr.deviceMap_[BusType::BUS_TYPE_TEST]), 2);
|
||||
ret = callback->OnDeviceRemove(device1);
|
||||
ASSERT_EQ(ret, EDM_OK);
|
||||
ASSERT_EQ(extMgr.deviceMap_[BusType::BUS_TYPE_TEST].size(), 1);
|
||||
ASSERT_EQ(getDeviceNum(extMgr.deviceMap_[BusType::BUS_TYPE_TEST]), 1);
|
||||
ret = callback->OnDeviceRemove(device0);
|
||||
ASSERT_EQ(ret, EDM_OK);
|
||||
ASSERT_EQ(extMgr.deviceMap_[BusType::BUS_TYPE_TEST].size(), 0);
|
||||
ASSERT_EQ(getDeviceNum(extMgr.deviceMap_[BusType::BUS_TYPE_TEST]), 0);
|
||||
}
|
||||
|
||||
HWTEST_F(DeviceManagerTest, SUB_Driver_Ext_DevManager_1300, TestSize.Level1)
|
||||
{
|
||||
ExtDeviceManager &extMgr = ExtDeviceManager::GetInstance();
|
||||
clearDeviceMap(extMgr);
|
||||
std::vector<std::shared_ptr<DeviceInfo>> devVec = extMgr.QueryDevice(BUS_TYPE_TEST);
|
||||
ASSERT_EQ(devVec.size(), 0);
|
||||
std::shared_ptr<DevChangeCallback> callback = std::make_shared<DevChangeCallback>();
|
||||
@ -136,7 +157,7 @@ HWTEST_F(DeviceManagerTest, SUB_Driver_Ext_DevManager_1300, TestSize.Level1)
|
||||
ASSERT_EQ(devVec.size(), 2);
|
||||
ret = callback->OnDeviceRemove(device0);
|
||||
ret = callback->OnDeviceRemove(device1);
|
||||
ASSERT_EQ(extMgr.deviceMap_[BusType::BUS_TYPE_TEST].size(), 0);
|
||||
ASSERT_EQ(getDeviceNum(extMgr.deviceMap_[BusType::BUS_TYPE_TEST]), 0);
|
||||
}
|
||||
|
||||
HWTEST_F(DeviceManagerTest, SUB_Driver_Ext_DevManager_0500, TestSize.Level1)
|
||||
|
Loading…
x
Reference in New Issue
Block a user