我目前正在为测试硬件通信端口的程序编写一些 CPPunit 测试(是的,我正在为测试应用程序编写单元测试;-))。我正在测试的一个类基本上是设备文件描述符的包装器;我对文件描述符进行调用 read()
。Linux 上是否有设备文件/驱动程序,如果您访问它,当您从中读取时,您会读回您写的内容(如 FIFO 队列设备)? 如果我有这个设备文件,那么在我的包装器中替换实际的设备文件会非常简单,并且可以很容易地模拟现实世界硬件上可能发生的“环回”场景。write()
write()
read()
本质上,我正在寻找的是一种假设的"/dev/echo"
设备。
例如:设备的行为如下:
open("/dev/echo", O_RDRW);
write(fdEcho, 123, sizeof(int));
write(fdEcho, 456, sizeof(int));
write(fdEcho, 789, sizeof(int));
read(fdEcho, iData, sizeof(int); // returns 123
read(fdEcho, iData2, sizeof(int); // returns 456
read(fdEcho, iData3, sizeof(int); // returns 789