WMDM Compliance Test
This test validates common WMDM scenarios for Portable Media Devices by exercising content transfer, device initialization, and content cancellation scenarios at the WMDM level.
Test details
Associated requirements |
Device.Portable.MediaPlayer.MTP Device.Portable.MobilePhone.MTP |
Platforms |
Windows 7 (x64) Windows 7 (x86) Windows 8 (x64) Windows 8 (x86) Windows 8.1 x64 Windows 8.1 x86 |
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: Device.Portable Testing Prerequisites.
Note
You may need additional hardware if the test device provides bus-specific support. To determine whether you need additional hardware, see the description for each bus-specific test.
Troubleshooting
For troubleshooting information, see Troubleshooting Device.Portable Testing.
More Information
The WMDM Compliance test consists of these test cases:
Device storage initialization
Transfer cancellation from PC to Device
Transfer cancellation from Device to PC
Initialize Device Storage
This test case initializes (formats) the device by using the WMDM device interface. The device must be Windows® Portable Device (WPD) compliant and support the WMDM interface. No other setup is required.
Command line: WmdmCopy WmdmCopy.exe wmdmcopy_Format.pro –c -e “{44CDDF79-39E8-41b2-AB57-4B49530CEFC3}" -l "s98wtt.dll"
Get WMDM interface. (Test will be skipped if the device does not support WMDM.)
Get device data
IF WMDM interface exists and can be initialized
Get root storage (IWMDMStorageGlobals)
Initialize storage
Sleep 5 seconds //some devices reboot after format
Set MaxFormatRetryCount to 10
WHILE WMDM device is not found
ENDWHILE
Refresh the device list
If WMDM device exists break
If retry count greater than 10
FAIL test
break
ENDIF
Sleep 2 seconds
ENDIF
Transfer Cancellation from PC to Device
This test case verifies cancellation while transferring content to the device by using the WMDM device interface. The device must be WPD compliant and support the WMDM interface. No other setup is required.
Command line: WmdmCopy.exe WmdmCopy_Content_Transfer_Cancellation.pro -c -e “{C8853606-B76C-42c4-9E51-C0ADFA156DEA}” -l “s98wtt.dll”
Get WMDM interface. (Test will be skipped if device does not support WMDM.)
Get device data
IF WMDM interface exists and can be initialized
Get test content directory
FOR count of 10
Transfer test file from PC to WMDM device
Cancel transfer before completed
IF transfer passed FAIL test
ENDFOR
Transfer file from PC to WMDM device
IF transfer failed FAIL test
ENDIF
Transfer Cancellation from Device to PC
This test case verifies cancellation while transferring content to the device by using the WMDM device interface. The device must be WPD compliant and support the WMDM interface. No other setup is required.
Command line: WmdmCopy.exe WmdmCopy_Content_Transfer_From_Device_Cancellation.pro -c -e “{BA63CCBB-30FD-4432-A8F6-A6597D87BA0F}” -l “s98wtt.dll”
Get WMDM interface. (Test will be skipped if device does not support WMDM.)
Get device data
IF WMDM interface exists and can be initialized
Get test content directory
FOR count of 10
Transfer test file from WMDM device to PC
Cancel transfer before completed
IF transfer passed FAIL test
ENDFOR
Transfer file from WMDM device to PC
IF transfer failed FAIL test
ENDIF
File list
File | Location |
---|---|
wmdmcopy.exe |
[TestBinRoot]\NTTEST\MULTIMEDIATEST\wmdm\wmdmcopy\ |
test.mp3 |
[Wow64TestBinRoot]\NTTEST\MULTIMEDIATEST\wmdm\wmdmcopy\wdk\ |
test.wma |
[Wow64TestBinRoot]\NTTEST\MULTIMEDIATEST\wmdm\wmdmcopy\wdk\ |
proghelp.dll |
[TestBinRoot]\NTTEST\MULTIMEDIATEST\wmdm\proghelp\ |
s98wtt.dll |
[TestBinRoot]\NTTEST\MULTIMEDIATEST\Common\ |
test.asf |
[Wow64TestBinRoot]\NTTEST\MULTIMEDIATEST\wmdm\wmdmcopy\wdk\ |
test.wav |
[Wow64TestBinRoot]\NTTEST\MULTIMEDIATEST\wmdm\wmdmcopy\wdk\ |
test.wmv |
[Wow64TestBinRoot]\NTTEST\MULTIMEDIATEST\wmdm\wmdmcopy\wdk\ |
WmdmCopy_Content_Transfer_From_Device_Cancellation.pro |
[TestBinRoot]\NTTEST\MULTIMEDIATEST\wmdm\wmdmcopy\ |
WmdmCopy_Content_Transfer_Cancellation.pro |
[TestBinRoot]\NTTEST\MULTIMEDIATEST\wmdm\wmdmcopy\ |
WmdmCopy_Initialize_Device_Storage.pro |
[TestBinRoot]\NTTEST\MULTIMEDIATEST\wmdm\wmdmcopy\ |