NDISTest 6.0 - 1 Machine - 1c_FaultHandling
This automated test uses a fault injection feature of NDIS. Each loop will set bits in the registry for the driver under test. These bits will cause NDIS to fail specific NDIS calls. The registry value name is NdisDriverVerifyFlags. The loop, value, and NDIS call are listed below:
Loop | Value | NDIS Call |
---|---|---|
0 |
0x001 |
NdisMAllocateMapRegisters |
1 |
0x002 |
NdisMRegisterInterrupt |
2 |
0x004 |
NdisMAllocateSharedMemory |
3 |
0x010 |
NdisMMapIoSpace |
4 |
0x020 |
NdisMRegisterIoPortRange |
5 |
0x040 |
Read NdisGetSetBusConfigSpace |
6 |
0x080 |
Write NdisGetSetBusConfigSpace |
7 |
0x100 |
NdisMInitializeScatterGatherDma |
The driver should not load unless it does not call the particular function. This test is successful as long the driver does not crash the system. During each test loop, after the driver fails to load the registry is cleared and the driver is loaded normally to be sure it still works.
Test details
Associated requirements |
Device.Network.LAN.Base.NDISRequirements |
Platforms |
Windows 7 (x64) Windows 7 (x86) Windows 8 (x64) Windows 8 (x86) Windows Server 2012 (x64) Windows Server 2008 R2 (x64) Windows 8.1 x64 Windows 8.1 x86 Windows Server 2012 R2 |
Expected run time |
~5 minutes |
Categories |
Certification Functional |
Type |
Automated |
Running the test
Before you run the test, complete the test setup as described in the test requirements: LAN Testing Prerequisites.
Troubleshooting
For troubleshooting information, see Troubleshooting LAN Testing.
More information
Parameters
Parameter | Description |
---|---|
queryTestDeviceID |
The ID of the test device. Example: //Devnode/DeviceID |
Command syntax
Command | Description |
---|---|
[WTTRunWorkingDir]\ndistest\bin\ndtest.exe /auto /client /dvi /u /target:Miniport /tc:[queryTestDeviceID] /script:{1c_FaultHandling.wsf} |
Runs the test. |