Commit graph

7 commits

Author SHA1 Message Date
Brian Nguyen c8f664587d [GLX_dummy] Implement selected dummy functions
Implement a fake glXChooseVisual() and glXCreateContext() function for
use with the makecurrent tests. Likewise, implement
glMakeCurrentTestResults(), glBegin(), and glEnd().

Implement a fake glXGetClientString() for use with the getclientstr
test.
2013-08-26 11:03:43 -07:00
Brian Nguyen e906738529 [GLX_dummy] Implement an example extension function and its dispatcher
To test that vendor-implemented dispatching works in the getprocaddress
test, implement glXExampleExtensionFunction and its vendor-neutral
dispatcher in GLX_dummy, and plug each respectively into the
getProcAddress and getDispatchAddress callback functions.
2013-08-26 11:03:43 -07:00
Brian Nguyen c11bd25282 [GLX_dummy] Implement glMakeCurrentTestResults()
This fake GL extension function is used by the glxnscreens and
makecurrent tests.  This plugs the function prototype spec into
GLX_dummy's getDispatchProto() callback and adds an entry into the table
used by its getProcAddress() callback.
2013-08-26 11:03:43 -07:00
Brian Nguyen d3b38da75d [GLX_dummy] Implement the getProcAddress() callback 2013-08-26 11:03:43 -07:00
Brian Nguyen 01ea1d2e41 [GLX_dummy] Define glMakeCurrentTestResults()
This fake GL extension function will be responsible for performing
various queries on the vendor library for the purposes of testing,
and also serves as a useful test of the API driver's handling of
dynamic GL entrypoints.
2013-08-26 11:03:43 -07:00
Brian Nguyen b3f7cbc3e0 [tests] Add a GLX_dummy dummy vendor library
This vendor library will be loaded by the API library in various
subtests in the test suite, and will implement the bare minimum
needed to verify features and code paths in the API library. This
includes creating a fake GL "context", making current to the
"context", and calling some GL functions.
2013-08-26 11:03:43 -07:00
Brian Nguyen 42589ec4c5 [tests] Add basic test infrastructure
This adds build infrastructure for unit testing the API library
using the serial test harness. TODO: this should be replaced with
the parallel test harness, as the automake documentation says the
serial harness is deprecated.

The first and last tests to be run are scripts to initialize the test
environment (an X session with a special -modulepath argument and
xorg.conf file to pick up x11glvnd) and tear it down after all unit
tests are run.

This also adds a placeholder directory for a fake vendor library
called "GLX_dummy", to be implemented later.
2013-08-26 11:03:43 -07:00