>># 
>># Copyright 1990, 1991 by the Massachusetts Institute of Technology and
>># UniSoft Group Limited.
>># 
>># Permission to use, copy, modify, distribute, and sell this software and
>># its documentation for any purpose is hereby granted without fee,
>># provided that the above copyright notice appear in all copies and that
>># both that copyright notice and this permission notice appear in
>># supporting documentation, and that the names of MIT and UniSoft not be
>># used in advertising or publicity pertaining to distribution of the
>># software without specific, written prior permission.  MIT and UniSoft
>># make no representations about the suitability of this software for any
>># purpose.  It is provided "as is" without express or implied warranty.
>># 
>># $XConsortium: chckmskevn.m,v 1.8 92/06/11 17:18:40 rws Exp $
>># 
>>#
>>TITLE XCheckMaskEvent CH08
>>ASSERTION A XCheckMaskEvent-1
A call to XCheckMaskEvent returns in event_return the first
event in the event queue matching event_mask.
>>STRATEGY
Discard all events on the event queue.
Call XPutBackEvent to put events on the event queue.
Call XCheckMaskEvent.
Verify that XCheckMaskEvent returned True.
Verify the correct event-type was returned.
Verify the first matching event in event queue was returned.
>>ASSERTION - XCheckMaskEvent-2
When a call to XCheckMaskEvent finds a matching event, then
XCheckMaskEvent returns True.
>>ASSERTION A XCheckMaskEvent-3
A call to XCheckMaskEvent removes the returned event from
the event queue.
>>STRATEGY
Discard all events on the event queue.
Call XPutBackEvent to put events on the event queue.
Call XPending to get the current event queue size.
Call XCheckMaskEvent.
Call XPending to get the current event queue size.
Verify that size of event queue has decreased by one.
>>ASSERTION - XCheckMaskEvent-4
When a matching event is not in the event queue, then a
call to XCheckMaskEvent returns in event_return the first
matching event available on the X server connection.
>>ASSERTION A XCheckMaskEvent-5
When a matching event is not in the event queue and is not
available on the X server connection, then a call to
XCheckMaskEvent returns False.
>>STRATEGY
Discard all events on the event queue.
Call XCheckMaskEvent.
Verify that XCheckMaskEvent returned False.
>>ASSERTION A XCheckMaskEvent-6
When a matching event is not in the event queue and is not
available on the X server connection, then a call to
XCheckMaskEvent flushes the output buffer.
>>STRATEGY
Create client2.
Discard all events on the event queue.
Create pixmap.
Call XCheckMaskEvent.
Verify that XCheckMaskEvent returned False.
Empty the buffer.
Ensure the server has dealt with anything flushed to it: do XSync()
Verify that the output buffer was flushed by effect on server.
