>># 
>># 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: cpygc.m,v 1.7 92/06/11 16:15:19 rws Exp $
>># 
>>#      SCCS:  @(#)  EAll.mc Rel 1.5	    (3/12/92)
>>#
>>TITLE XCopyGC CH05
>>ASSERTION A XCopyGC-1
A call to XCopyGC copies the components specified by the
valuemask argument from the src argument to the dest
argument.
>>STRATEGY
Create a source GC with function set to GXxor.
Create a different, destination GC.
Copy the source GC to the destination GC with XCopyGC.
Verify that GCValues structures are identical for the destination and source GC with XGetGCValues.
Verify the destination GC component function is used in graphics operations:
   Plot point (0,0) with XDrawPoint.
   Set fg to W_FG ^ W_BG with XSetForeground.
   Plot point (0,0) with XDrawPoint.
   Verify that pixel at (0,0) is W_BG.

>>ASSERTION B XCopyGC-2
When the server fails to allocate a required resource, then
a BadAlloc error occurs.
>>STRATEGY
Report UNTESTED
>>ASSERTION C XCopyGC-3
When the src and dest arguments do not have the same depth,
then a BadMatch error occurs.
>>STRATEGY
If multiple pixmap depths are supported:
   Create a pixmap with a different depth to the root window
   Create a GC on the root window
   Create a GC on the pixmap
   Copy from the first GC to the second using XCopyGC.
   Verify that a BadMatch error was generated.
>>ASSERTION C XCopyGC-4
When the src and dest arguments were not created for the
same root, then a BadMatch error occurs.
>>STRATEGY
If multiple roots are supported:
   Create a GC for two different roots.
   Copy from the first to the second.
   Verify that a BadMatch error occurred.
   Copy from the second to the first.
   Verify that a BadMatch error occurred.
>>ASSERTION A XCopyGC-5
When either the src or dest argument does not name a
defined GC, then a BadGC error occurs.
>>STRATEGY
Create a bad GC
Create a good GC
Call XCopyGC with bad source, good destination GC's
Verify that BadGC error occurs
Call XCopyGC with good source, bad destination GC's
Verify that BadGC error occurs
Call XCopyGC with bad source, bad destination GC's
Verify that BadGC error occurs
