#include "test_utils/ANGLETest.h"
#include "test_utils/gl_raii.h"
namespace angle
{
class WebGLFramebufferTest : public ANGLETest<>
{ … };
constexpr GLint ALLOW_COMPLETE = …;
constexpr GLint ALLOW_UNSUPPORTED = …;
constexpr GLint ALLOW_INCOMPLETE_ATTACHMENT = …;
void checkFramebufferForAllowedStatuses(GLbitfield allowedStatuses)
{ … }
void checkBufferBits(GLenum attachment0, GLenum attachment1)
{ … }
TEST_P(WebGLFramebufferTest, TestFramebufferRequiredCombinations)
{ … }
void testAttachment(GLint width,
GLint height,
GLRenderbuffer *colorBuffer,
GLenum attachment,
GLRenderbuffer *buffer,
GLbitfield allowedStatuses)
{ … }
void testAttachments(GLRenderbuffer &colorBuffer,
GLenum attachment0,
GLRenderbuffer &buffer0,
GLenum attachment1,
GLRenderbuffer &buffer1,
GLbitfield allowedStatuses)
{ … }
void testColorRenderbuffer(GLint width,
GLint height,
GLenum internalformat,
GLbitfield allowedStatuses)
{ … }
GLint getRenderbufferParameter(GLenum paramName)
{ … }
void WebGLFramebufferTest::drawUByteColorQuad(GLuint program,
GLint uniformLoc,
const GLColor &color)
{ … }
void WebGLFramebufferTest::testDepthStencilDepthStencil(GLint width, GLint height)
{ … }
void WebGLFramebufferTest::testDepthStencilRenderbuffer(GLint width,
GLint height,
GLRenderbuffer *colorBuffer,
GLbitfield allowedStatuses)
{ … }
TEST_P(WebGLFramebufferTest, TestAttachments)
{ … }
bool tryDepth(GLRenderbuffer *depthBuffer,
GLenum *depthFormat,
GLenum *depthAttachment,
GLenum try_format,
GLenum try_attachment)
{ … }
bool checkValidColorDepthCombination(GLenum *depthFormat, GLenum *depthAttachment)
{ … }
void checkFramebuffer(GLenum expected)
{ … }
void WebGLFramebufferTest::testRenderingAndReading(GLuint program)
{ … }
void WebGLFramebufferTest::testUsingIncompleteFramebuffer(GLenum depthFormat,
GLenum depthAttachment)
{ … }
void testFramebufferIncompleteAttachment(GLenum depthFormat)
{ … }
void testFramebufferIncompleteMissingAttachment()
{ … }
void testFramebufferIncompleteDimensions(GLenum depthFormat, GLenum depthAttachment)
{ … }
class NoColorFB final : angle::NonCopyable
{ … };
void TestReadingMissingAttachment(int size)
{ … }
void WebGLFramebufferTest::testDrawingMissingAttachment()
{ … }
TEST_P(WebGLFramebufferTest, CheckValidColorDepthCombination)
{ … }
TEST_P(WebGLFramebufferTest, TextureAttachmentCommitBug)
{ … }
TEST_P(WebGLFramebufferTest, DepthStencilAttachmentOrdering)
{ … }
ANGLE_INSTANTIATE_TEST_ES2_AND_ES3(…);
}