This proposal is made with the assumption that the minimal requirement for a WMA implementation is that the following functionality is available:
In this situation, the only possible way for TCK to test for sending/receiving messages is to require that some J2SE-based framework API will provide the functionality of a "network-initiated send" and "network-side receive" to the implementation under test. "Round trip" tests in which the device sends/receives Messages to itself will not work for all expected WMA implementations.
This document contains a proposal for the framework API. The framework is intended to run on J2SE and would be exhibit functionality approximately the same as WMA.
The framework would be located in the package,
com.sun.tck.wma package. The following APIs that were
unnecessary for testing and that have been omitted are:
Connector.open*Stream
Connector.open(String, ...) Methods with more than one parameter
MessageConnection.numberOfSegments
MessageConnection.setMessageListener
MessageListener
The proposal does not contain Javadoc comments, assuming that these will be copied from the WMA specification.
The API consists of a set of interfaces with the single entry point
com.sun.tck.wma.Connector interface and its
open(String) method. Licensees and the reference
implementation should provide an implementation of these interfaces
and should specify the name of the class that implements the
com.sun.tck.wma.Connector interface to the TCK.
The TCK will use a distributed test framework which tests if the Message, sent from the device, can be received by the network (and vice versa).
Possible problems with this approach: