>># 
>># 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: chngkybrdm.m,v 1.6 92/06/11 17:11:50 rws Exp $
>># 
>>#      SCCS:  @(#)  EAll.mc Rel 1.5	    (3/12/92)
>>#
>>TITLE XChangeKeyboardMapping CH07
>>ASSERTION A XChangeKeyboardMapping-1
A call to XChangeKeyboardMapping associates
keysyms_per_keycode KeySyms for each of the num_codes
KeyCodes starting with first_keycode, with the KeySyms
being taken from the array keysyms.
>>STRATEGY
Set up keysym array.
Call XChangeKeyboardMapping.
Verify that keyboard mapping has been changed.
>>ASSERTION A XChangeKeyboardMapping-2
The KeySyms for KeyCodes outside the specified range remain
unchanged.
>>STRATEGY
Get current keymap.
Call XChangeKeyboardMapping to change part of the map.
Verify that there is no change outside the specified range.
>>ASSERTION A XChangeKeyboardMapping-3
A call to XChangeKeyboardMapping generates a MappingNotify
event.
>>STRATEGY
Call XChangeKeyboardMapping.
Verify that a MappingNotify event is generated.
>>ASSERTION A XChangeKeyboardMapping-4
It is legal for the KeySym NoSymbol to appear anywhere in
the KeySym list for a particular KeyCode.
>>STRATEGY
Call XChangeKeyboardMapping with the KeySym NoSymbol in the list.
Verify that no error occurs.
>>ASSERTION A XChangeKeyboardMapping-5
When first_keycode is less than the value of min_keycode
returned by XDisplayKeycodes, then a BadValue error occurs.
>>STRATEGY
Set first_keycode to a value less than min_keycode.
Call XChangeKeyboardMapping.
Verify that a BadValue error occurs.
>>ASSERTION A XChangeKeyboardMapping-6
When first_keycode+num_codes-1 is greater than the
value of max_keycode returned by XDisplayKeycodes, then a
BadValue error occurs.
>>STRATEGY
Set end of range to beyond max_keycode.
Call XChangeKeyboardMapping.
Verify that a BadValue error occurs.
>>ASSERTION B XChangeKeyboardMapping-7
When the server fails to allocate a required resource, then
a BadAlloc error occurs.
>>STRATEGY
Report UNTESTED
