-------------------------------------------------------------------------
drawElements Quality Program Test Specification
-----------------------------------------------

Copyright 2014 The Android Open Source Project

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

     http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-------------------------------------------------------------------------
    Buffer management and data transfer tests

Tests:
 + dEQP-GLES3.functional.buffers.*

Includes:
 + Creating and destroying buffers
 + Mapping buffers
   - Reading and writing to buffers
   - MAP_INVALIDATE_RANGE_BIT
   - MAP_INVALIDATE_BUFFER_BIT
   - MAP_FLUSH_EXPLICIT_BIT
   - MAP_UNSYNCHRONIZED_BIT
 + Copying buffers
 + Data verification by using buffer in rendering
 + Data verification using buffer mapping

Excludes:
 + Writing buffer data with glBufferData, glBufferSubData
   - Will be covered in 2012.3 release
 + Negative API tests
   - Will be covered in separate negative API test set

Description:

Buffer tests perform a sequence of API calls that modify the buffer data.
All buffer-related calls are written to log for inspection.

Buffer contents are verified by either mapping buffer for reading or using
buffer in rendering as a vertex array, uniform buffer or pixel unpack buffer.
Results are compared against reference data or reference rendering.