Basic Tests

These are some basic sanity tests implemented in the FDC3 Conformance Framework. It is expected that Desktop Agent testers will run these first before commencing the much more thorough tests in section 2 onwards.
BasicCL1: You can create a context listener by callingfdc3.addContextListener('fdc3.contact',<handler>). AListenerobject is returned and can be used to remove the listener again by calling itsunsubscribefunction.BasicCL2: You can create an unfiltered context listener by callingfdc3.addContextListener(null,<handler>). AListenerobject is returned and can be used to remove the listener again by calling itsunsubscribefunction.BasicIL1: You can create an intent listener by callingfdc3.addIntentListener(<intent name>,<handler>). AListenerobject is returned and can be used to remove the listener again by calling itsunsubscribefunction.BasicGI1: An application can retrieve anImplementationMetadataobject to find out the version of FDC3 it is using and the provider details by calling:fdc3.getInfo()await fdc3.getInfo()
BasicAC1: An application can retrieve a named 'App' channel via thefdc3.getOrCreateChannel(<name>)function. TheChannelobject returned conforms to the defined interface.BasicUC1: An application can query the available user/system channels, which are returned as an array ofChannelObjects conforming to the defined interface. The API call is:fdc3.getSystemChannels()await fdc3.getUserChannels()
BasicJC1: The application should be able to join one of the user/system channels with the channel's id. Having done so, the current channel should NOT be null, and be set for the application to the channel for the id given. After you leave the current channel, it should go back to beingnull.- The channel is joined with:
fdc3.joinChannel(<channelId>)fdc3.joinUserChannel(<channelId>)
- A
Channelobject representing the current channel is retrieved with:fdc3.getCurrentChannel()to get the current channel.
- The channel is left with:
fdc3.leaveCurrentChannel()
- The channel is joined with:
BasicRI1: The application should be able to raise an intent by invoking:fdc3.raiseIntent(<intent name>)- A promise should be returned.
BasicRI2: The application should be able to raise an intent for some item of context by invoking:fdc3.raiseIntentForContext(<context>)- A promise should be returned.