Share via


Smart Card Reader Removal When Blocked Test (Compact 7)

3/12/2014

Tests whether the system correctly handles the removal of a smart card reader when that card reader is blocked on a call, waiting for a smart card to be inserted, or removed.

Test Prerequisites

Your device must meet the following requirements before you run this test.

The following table shows the hardware requirements for the Smart Card Reader Removal When Blocked Test.

Requirements Description

Smart card reader

The smart card reader that you want to test

Any of the cards included in the PC/SC Test Cards v.2.0

You can obtain a list of these cards from the PC/SC Workgroup Web site:http://www.pcscworkgroup.com/

The following table shows the software requirements for the Smart Card Reader Insertion and Removal Test.

Requirements Description

Tux.exe

Test harness, which executes the test

Kato.dll

Logging engine, which logs test data

IFDTestTux.dll

The Tux DLL that contains the tests

USBCCID.dll or other smart card reader driver DLL

The smart card reader driver

Subtests

The table below lists the subtests included in this test.

SubTest ID Description

2002

Smart Card Reader Removal When Blocked Test

Setting Up the Test

This test has no additional requirements, beyond the standard test environment setup.

Running the Test

Command Syntax:

tux -o -d ifdtesttux -c "[-n iterations] [-p iterations] [-c]" [-x TestCaseID]

Command-line parameter Description

-x TestCaseID

Specifies the test case to run.

-c " … "

Specifies a list of test-specific parameters that Tux passes to the test DLL.

-n iterations

Specifies the number of test iterations to execute. The default value is five, which is enough for you to test at least two iterations of removing a smart card while the smart card reader is blocked waiting for a smart card to be inserted. These five iterations also test two card-reader removals when the smart card reader is blocked waiting for the smart card to be removed.

The following procedure describes the steps for running the Smart Card Reader Removal When Blocked Test. To run this test using the default values, at the command-line : tux -o -d ifdtesttux -x 2002.

To run the Smart Card Reader Removal When Blocked Test

1.The test operator attaches a smart card reader to the system.

2.The test opens a handle to the card reader and requests that a smart card be removed or inserted.

3.Test sets up a blocking call so that the smart card reader is waiting for a smart card to be inserted or removed.

4.The test operator removes the smart card reader from the system.

5.Test closes the handle to the smart card reader.

Alternating iterations of the test will demonstrate how the system behaves when the reader is blocked for either smart card insertion or removal.

Verifying the Test

When the test completes running, verify that "PASS" appears in the test log for all sub-tests.

Troubleshooting the Test

The following table describes troubleshooting tips for the Smart Card Reader Removal When Blocked Test.

Issue Solution

Test fails when using legacy drivers.

Certain legacy drivers, such as STCUSB.DLL, require that calls to IOCTLs be made from the kernel. If they are not made from the kernel, the test fails. To work around this issue, run Tux using the -n parameter:tux -o -n -d ifdtesttux

The Windows Embedded Compact Test Kit (CTK) displays an informational icon that indicates that Smart Card peripheral hardware was not detected

The CTK does not correctly detect the presence of the peripheral hardware. Therefore, the CTK incorrectly displays an informational icon that indicates that peripheral hardware was not detected.You can still test the USB CCID Smart Card reader by using the CTK, even though the CTK user interface indicates that the Smart Card peripheral hardware was not detected.

When you are running these test cases on a Windows Embedded CE PC-based development platform (CEPC), if the Smart Card reader is inserted before you turn on the CEPC, USBCCID.dll is not loaded when the CEPC is turned on.

After you turn on the CEPC, remove the Smart Card reader from the CEPC, and then reinsert it.

For additional platform specific issues, consult the CTK articles on the TechNet wiki.

See Also

Other Resources

Smart Card Tests