0018接口test测试代码内容增加
定义新函数
在test.c中,我们定义一个新的函数Test_GetDeviceInfo
来封装对SDF_GetDeviceInfo
的调用,实现获取设备信息的功能。
函数代码
// 测试获取设备信息的函数
SGD_RV Test_GetDeviceInfo(SGD_HANDLE phSessionHandle) {
DEVICEINFO deviceInfo;
SGD_RV rv = SDF_GetDeviceInfo(phSessionHandle, &deviceInfo);
if (rv != SDR_OK) {
printf("Failed to get device info with error code: %08x\n", rv);
} else {
printf("Device Info:\n");//设备信息
printf("IssuerName: %s\n", deviceInfo.IssuerName);//用户名
printf("DeviceName: %s\n", deviceInfo.DeviceName);//设备名
printf("DeviceSerial: %s\n", deviceInfo.DeviceSerial);//设备系列
printf("DeviceVersion: %u\n", deviceInfo.DeviceVersion);//设备版本
printf("StandardVersion: %u\n", deviceInfo.StandardVersion);//标准版
printf("AsymAlgAbility: %u, %u\n", deviceInfo.AsymAlgAbility[0], deviceInfo.AsymAlgAbility[1]);//不对称算术能力
printf("SymAlgAbility: %u\n", deviceInfo.SymAlgAbility);//符号运算能力
printf("HashAlgAbility: %u\n", deviceInfo.HashAlgAbility);//哈希代数能力
printf("BufferSize: %u\n", deviceInfo.BufferSize);//缓冲器大小
}
return rv;
}
测试代码
在main函数中,我们增加对这个新函数的调用来测试设备信息获取功能:
int main(int argc, char *argv[])
{
// ... 省略之前的代码 ...
// 测试获取设备信息
printf("Testing getting device information...\n");
rv = Test_GetDeviceInfo(sessionHandle);
if(rv != SDR_OK) {
printf("Get device information failed with error code: %08x\n", rv);
} else {
printf("Get device information success.\n");
}
// ... 省略其他测试代码 ...
// ... 省略清理资源和关闭设备的代码 ...
return 0;
}
代码解析
- 在这段测试代码中,我们首先打印出一个消息表明我们正在测试获取设备信息的功能。
- 我们调用
Test_GetDeviceInfo
函数并检查返回值。如果函数成功执行,它将打印出设备信息;如果失败,它将打印出错误代码。
这样,我们就在test.c文件中增加了一个新的测试函数,并在main函数中增加了相应的测试代码来进行测试。