Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
PojavLauncherTeam
GitHub Repository: PojavLauncherTeam/angle
Path: blob/main_old/src/tests/gles1_conformance_tests/CovglTests.cpp
1693 views
1
//
2
// Copyright 2020 The ANGLE Project Authors. All rights reserved.
3
// Use of this source code is governed by a BSD-style license that can be
4
// found in the LICENSE file.
5
//
6
// CovglTests.cpp:
7
// GLES1 conformance covgl tests.
8
// Function prototypes taken from tproto.h and turned into gtest tests using a macro.
9
//
10
11
#include "test_utils/ANGLETest.h"
12
#include "test_utils/gl_raii.h"
13
14
#ifdef __cplusplus
15
extern "C" {
16
#endif
17
18
#if !defined(GL_OES_VERSION_1_1) && defined(GL_VERSION_ES_CM_1_1) && defined(GL_VERSION_ES_CL_1_1)
19
# if GL_VERSION_ES_CM_1_1 || GL_VERSION_ES_CL_1_1
20
# define GL_OES_VERSION_1_1
21
# endif
22
#endif
23
24
// ES 1.0
25
extern void StateReset(void);
26
extern void ProbeError(void (*)(void));
27
extern GLboolean tkCheckExtension(const char *name);
28
29
extern void CallActiveTexture(void);
30
extern void CallAlphaFunc(void);
31
extern void CallBlendFunc(void);
32
extern void CallBindDeleteTexture(void);
33
extern void CallClear(void);
34
extern void CallClearColor(void);
35
extern void CallClearDepth(void);
36
extern void CallClearStencil(void);
37
extern void CallClientActiveTexture(void);
38
extern void CallColor(void);
39
extern void CallColorMask(void);
40
extern void CallColorPointer(void);
41
extern void CallCompressedTexImage2D(void);
42
extern void CallCompressedTexSubImage2D(void);
43
extern void CallCopyTexImage2D(void);
44
extern void CallCopyTexSubImage2D(void);
45
extern void CallCullFace(void);
46
extern void CallDepthFunc(void);
47
extern void CallDepthMask(void);
48
extern void CallDepthRange(void);
49
extern void CallDrawArrays(void);
50
extern void CallDrawElements(void);
51
52
#ifdef GL_OES_draw_texture
53
extern void CallDrawTex(void);
54
#endif /* GL_OES_draw_texture */
55
56
extern void CallEdgeFlag(void);
57
extern void CallEnableDisable(void);
58
extern void CallEnableDisableClientState(void);
59
extern void CallFinish(void);
60
extern void CallFlush(void);
61
extern void CallFog(void);
62
extern void CallFrontFace(void);
63
extern void CallFrustum(void);
64
extern void CallGenTextures(void);
65
extern void CallGet(void);
66
extern void CallGetError(void);
67
extern void CallGetString(void);
68
#ifdef GL_OES_VERSION_1_1
69
extern void CallGetTexEnv(void);
70
extern void CallGetLight(void);
71
extern void CallGetMaterial(void);
72
extern void CallGetClipPlane(void);
73
extern void CallGetPointer(void);
74
#endif /* GL_OES_VERSION_1_1 */
75
76
#ifdef GL_OES_VERSION_1_1
77
extern void CallGetBufferParameter(void);
78
extern void CallGetTexParameter(void);
79
#endif /* GL_OES_VERSION_1_1 */
80
81
extern void CallHint(void);
82
extern void CallLight(void);
83
extern void CallLightModel(void);
84
extern void CallLineWidth(void);
85
extern void CallLoadIdentity(void);
86
extern void CallLoadMatrix(void);
87
extern void CallLogicOp(void);
88
extern void CallMaterial(void);
89
extern void CallMatrixMode(void);
90
extern void CallMultiTexCoord(void);
91
extern void CallMultMatrix(void);
92
extern void CallNormal(void);
93
extern void CallNormalPointer(void);
94
extern void CallOrtho(void);
95
extern void CallPixelStore(void);
96
#ifdef GL_OES_VERSION_1_1
97
extern void CallPointParameter(void);
98
#endif /* GL_OES_VERSION_1_1 */
99
extern void CallPointSize(void);
100
extern void CallPolygonOffset(void);
101
extern void CallPopMatrix(void);
102
extern void CallPushMatrix(void);
103
extern void CallReadPixels(void);
104
extern void CallRotate(void);
105
extern void CallSampleCoverage(void);
106
extern void CallScale(void);
107
extern void CallScissor(void);
108
extern void CallShadeModel(void);
109
extern void CallStencilFunc(void);
110
extern void CallStencilMask(void);
111
extern void CallStencilOp(void);
112
#ifdef GL_OES_VERSION_1_1
113
extern void CallIsTexture(void);
114
extern void CallIsEnabled(void);
115
#endif /* GL_OES_VERSION_1_1 */
116
extern void CallTexCoord(void);
117
extern void CallTexCoordPointer(void);
118
extern void CallTexEnv(void);
119
extern void CallTexImage2D(void);
120
extern void CallTexParameter(void);
121
extern void CallTexSubImage2D(void);
122
extern void CallTranslate(void);
123
extern void CallVertexPointer(void);
124
extern void CallViewport(void);
125
126
#ifdef GL_OES_VERSION_1_1
127
extern void CallBindDeleteBuffer(void);
128
extern void CallBufferData(void);
129
extern void CallBufferSubData(void);
130
extern void CallGenBuffers(void);
131
extern void CallIsBuffer(void);
132
extern void CallPointSizePointerOES(void);
133
extern void CallClipPlane(void);
134
#endif /* GL_OES_VERSION_1_1 */
135
136
#ifdef GL_OES_matrix_palette
137
extern void CallCurrentPaletteMatrixOES(void);
138
extern void CallLoadPaletteFromModelViewMatrixOES(void);
139
extern void CallMatrixIndexPointerOES(void);
140
extern void CallWeightPointerOES(void);
141
#endif /* GL_OES_matrix_palette */
142
143
#ifdef GL_OES_query_matrix
144
extern void CallQueryMatrix(void);
145
#endif
146
147
void ProbeEnumANGLE(void)
148
{
149
ASSERT_GL_NO_ERROR();
150
}
151
152
#ifdef __cplusplus
153
}
154
155
#endif
156
157
namespace angle
158
{
159
class GLES1CovglTest : public ANGLETest
160
{
161
protected:
162
GLES1CovglTest()
163
{
164
setWindowWidth(48);
165
setWindowHeight(48);
166
setConfigRedBits(8);
167
setConfigGreenBits(8);
168
setConfigBlueBits(8);
169
setConfigAlphaBits(8);
170
setConfigDepthBits(24);
171
setConfigStencilBits(8);
172
}
173
174
void testSetUp() override
175
{
176
StateReset();
177
glViewport(0, 0, 48, 48);
178
glScissor(0, 0, 48, 48);
179
}
180
};
181
182
TEST_P(GLES1CovglTest, Get)
183
{
184
ProbeError(CallGet);
185
}
186
187
TEST_P(GLES1CovglTest, GetError)
188
{
189
ProbeError(CallGetError);
190
}
191
TEST_P(GLES1CovglTest, GetString)
192
{
193
ProbeError(CallGetString);
194
}
195
196
#ifdef GL_OES_VERSION_1_1
197
TEST_P(GLES1CovglTest, GetTexEnv)
198
{
199
ProbeError(CallGetTexEnv);
200
}
201
TEST_P(GLES1CovglTest, GetLight)
202
{
203
ProbeError(CallGetLight);
204
}
205
TEST_P(GLES1CovglTest, GetMaterial)
206
{
207
ProbeError(CallGetMaterial);
208
}
209
TEST_P(GLES1CovglTest, GetClipPlane)
210
{
211
ProbeError(CallGetClipPlane);
212
}
213
TEST_P(GLES1CovglTest, GetPointer)
214
{
215
ProbeError(CallGetPointer);
216
}
217
TEST_P(GLES1CovglTest, GetTexParameter)
218
{
219
ProbeError(CallGetTexParameter);
220
}
221
TEST_P(GLES1CovglTest, GetBufferParameter)
222
{
223
ProbeError(CallGetBufferParameter);
224
}
225
#endif /* GL_OES_VERSION_1_1 */
226
227
TEST_P(GLES1CovglTest, EnableDisable)
228
{
229
ProbeError(CallEnableDisable);
230
}
231
232
TEST_P(GLES1CovglTest, Hint)
233
{
234
ProbeError(CallHint);
235
}
236
237
TEST_P(GLES1CovglTest, Viewport)
238
{
239
ProbeError(CallViewport);
240
}
241
TEST_P(GLES1CovglTest, Ortho)
242
{
243
ProbeError(CallOrtho);
244
}
245
TEST_P(GLES1CovglTest, Frustum)
246
{
247
ProbeError(CallFrustum);
248
}
249
TEST_P(GLES1CovglTest, Scissor)
250
{
251
ProbeError(CallScissor);
252
}
253
254
TEST_P(GLES1CovglTest, LoadIdentity)
255
{
256
ProbeError(CallLoadIdentity);
257
}
258
TEST_P(GLES1CovglTest, MatrixMode)
259
{
260
ProbeError(CallMatrixMode);
261
}
262
TEST_P(GLES1CovglTest, PushMatrix)
263
{
264
ProbeError(CallPushMatrix);
265
}
266
TEST_P(GLES1CovglTest, LoadMatrix)
267
{
268
ProbeError(CallLoadMatrix);
269
}
270
TEST_P(GLES1CovglTest, MultMatrix)
271
{
272
ProbeError(CallMultMatrix);
273
}
274
TEST_P(GLES1CovglTest, Rotate)
275
{
276
ProbeError(CallRotate);
277
}
278
TEST_P(GLES1CovglTest, Scale)
279
{
280
ProbeError(CallScale);
281
}
282
TEST_P(GLES1CovglTest, Translate)
283
{
284
ProbeError(CallTranslate);
285
}
286
TEST_P(GLES1CovglTest, PopMatrix)
287
{
288
ProbeError(CallPopMatrix);
289
}
290
291
TEST_P(GLES1CovglTest, Clear)
292
{
293
ProbeError(CallClear);
294
}
295
TEST_P(GLES1CovglTest, ClearColor)
296
{
297
ProbeError(CallClearColor);
298
}
299
TEST_P(GLES1CovglTest, ClearDepth)
300
{
301
ProbeError(CallClearDepth);
302
}
303
TEST_P(GLES1CovglTest, ClearStencil)
304
{
305
ProbeError(CallClearStencil);
306
}
307
308
TEST_P(GLES1CovglTest, ColorMask)
309
{
310
ProbeError(CallColorMask);
311
}
312
TEST_P(GLES1CovglTest, Color)
313
{
314
ProbeError(CallColor);
315
}
316
317
TEST_P(GLES1CovglTest, Normal)
318
{
319
ProbeError(CallNormal);
320
}
321
322
TEST_P(GLES1CovglTest, AlphaFunc)
323
{
324
ProbeError(CallAlphaFunc);
325
}
326
TEST_P(GLES1CovglTest, BlendFunc)
327
{
328
ProbeError(CallBlendFunc);
329
}
330
TEST_P(GLES1CovglTest, DepthFunc)
331
{
332
ProbeError(CallDepthFunc);
333
}
334
TEST_P(GLES1CovglTest, DepthMask)
335
{
336
ProbeError(CallDepthMask);
337
}
338
TEST_P(GLES1CovglTest, DepthRange)
339
{
340
ProbeError(CallDepthRange);
341
}
342
TEST_P(GLES1CovglTest, LogicOp)
343
{
344
ProbeError(CallLogicOp);
345
}
346
TEST_P(GLES1CovglTest, StencilFunc)
347
{
348
ProbeError(CallStencilFunc);
349
}
350
TEST_P(GLES1CovglTest, StencilMask)
351
{
352
ProbeError(CallStencilMask);
353
}
354
TEST_P(GLES1CovglTest, StencilOp)
355
{
356
ProbeError(CallStencilOp);
357
}
358
359
TEST_P(GLES1CovglTest, PixelStore)
360
{
361
ProbeError(CallPixelStore);
362
}
363
TEST_P(GLES1CovglTest, ReadPixels)
364
{
365
ProbeError(CallReadPixels);
366
}
367
368
TEST_P(GLES1CovglTest, Fog)
369
{
370
ProbeError(CallFog);
371
}
372
TEST_P(GLES1CovglTest, LightModel)
373
{
374
ProbeError(CallLightModel);
375
}
376
TEST_P(GLES1CovglTest, Light)
377
{
378
ProbeError(CallLight);
379
}
380
TEST_P(GLES1CovglTest, Material)
381
{
382
ProbeError(CallMaterial);
383
}
384
385
#ifdef GL_OES_VERSION_1_1
386
TEST_P(GLES1CovglTest, IsTexture)
387
{
388
ProbeError(CallIsTexture);
389
}
390
TEST_P(GLES1CovglTest, IsEnabled)
391
{
392
ProbeError(CallIsEnabled);
393
}
394
#endif /* GL_OES_VERSION_1_1 */
395
396
TEST_P(GLES1CovglTest, TexEnv)
397
{
398
ProbeError(CallTexEnv);
399
}
400
TEST_P(GLES1CovglTest, TexParameter)
401
{
402
ProbeError(CallTexParameter);
403
}
404
TEST_P(GLES1CovglTest, TexImage2D)
405
{
406
ProbeError(CallTexImage2D);
407
}
408
TEST_P(GLES1CovglTest, TexSubImage2D)
409
{
410
ProbeError(CallTexSubImage2D);
411
}
412
TEST_P(GLES1CovglTest, GenTextures)
413
{
414
ProbeError(CallGenTextures);
415
}
416
TEST_P(GLES1CovglTest, BindDeleteTexture)
417
{
418
ProbeError(CallBindDeleteTexture);
419
}
420
TEST_P(GLES1CovglTest, CopyTexImage2D)
421
{
422
ProbeError(CallCopyTexImage2D);
423
}
424
TEST_P(GLES1CovglTest, CopyTexSubImage2D)
425
{
426
ProbeError(CallCopyTexSubImage2D);
427
}
428
TEST_P(GLES1CovglTest, CompressedTexImage2D)
429
{
430
ProbeError(CallCompressedTexImage2D);
431
}
432
TEST_P(GLES1CovglTest, CompressedTexSubImage2D)
433
{
434
ProbeError(CallCompressedTexSubImage2D);
435
}
436
437
#ifdef GL_OES_VERSION_1_1
438
TEST_P(GLES1CovglTest, BindDeleteBuffer)
439
{
440
ProbeError(CallBindDeleteBuffer);
441
}
442
TEST_P(GLES1CovglTest, IsBuffer)
443
{
444
ProbeError(CallIsBuffer);
445
}
446
TEST_P(GLES1CovglTest, BufferData)
447
{
448
ProbeError(CallBufferData);
449
}
450
TEST_P(GLES1CovglTest, BufferSubData)
451
{
452
ProbeError(CallBufferSubData);
453
}
454
TEST_P(GLES1CovglTest, GenBuffers)
455
{
456
ProbeError(CallGenBuffers);
457
}
458
#endif /* GL_OES_VERSION_1_1 */
459
460
TEST_P(GLES1CovglTest, ShadeModel)
461
{
462
ProbeError(CallShadeModel);
463
}
464
TEST_P(GLES1CovglTest, PointSize)
465
{
466
ProbeError(CallPointSize);
467
}
468
TEST_P(GLES1CovglTest, LineWidth)
469
{
470
ProbeError(CallLineWidth);
471
}
472
TEST_P(GLES1CovglTest, CullFace)
473
{
474
ProbeError(CallCullFace);
475
}
476
TEST_P(GLES1CovglTest, FrontFace)
477
{
478
ProbeError(CallFrontFace);
479
}
480
TEST_P(GLES1CovglTest, PolygonOffset)
481
{
482
ProbeError(CallPolygonOffset);
483
}
484
485
#ifdef GL_OES_VERSION_1_1
486
TEST_P(GLES1CovglTest, PointParameter)
487
{
488
ProbeError(CallPointParameter);
489
}
490
#endif /* GL_OES_VERSION_1_1 */
491
492
TEST_P(GLES1CovglTest, Flush)
493
{
494
ProbeError(CallFlush);
495
}
496
TEST_P(GLES1CovglTest, Finish)
497
{
498
ProbeError(CallFinish);
499
}
500
501
TEST_P(GLES1CovglTest, ColorPointer)
502
{
503
ProbeError(CallColorPointer);
504
}
505
TEST_P(GLES1CovglTest, DrawArrays)
506
{
507
ProbeError(CallDrawArrays);
508
}
509
TEST_P(GLES1CovglTest, DrawElements)
510
{
511
ProbeError(CallDrawElements);
512
}
513
#ifdef GL_OES_draw_texture
514
TEST_P(GLES1CovglTest, DrawTex)
515
{
516
ANGLE_SKIP_TEST_IF(!tkCheckExtension("GL_OES_draw_texture"));
517
518
ProbeError(CallDrawTex);
519
}
520
#endif /*GL_OES_draw_texture */
521
TEST_P(GLES1CovglTest, NormalPointer)
522
{
523
ProbeError(CallNormalPointer);
524
}
525
TEST_P(GLES1CovglTest, TexCoordPointer)
526
{
527
ProbeError(CallTexCoordPointer);
528
}
529
TEST_P(GLES1CovglTest, VertexPointer)
530
{
531
ProbeError(CallVertexPointer);
532
}
533
#ifdef GL_OES_VERSION_1_1
534
TEST_P(GLES1CovglTest, PointSizePointerOES)
535
{
536
ProbeError(CallPointSizePointerOES);
537
}
538
#endif
539
TEST_P(GLES1CovglTest, EnableDisableClientState)
540
{
541
ProbeError(CallEnableDisableClientState);
542
}
543
544
TEST_P(GLES1CovglTest, ActiveTexture)
545
{
546
ProbeError(CallActiveTexture);
547
}
548
TEST_P(GLES1CovglTest, ClientActiveTexture)
549
{
550
ProbeError(CallClientActiveTexture);
551
}
552
TEST_P(GLES1CovglTest, MultiTexCoord)
553
{
554
ProbeError(CallMultiTexCoord);
555
}
556
557
TEST_P(GLES1CovglTest, SampleCoverage)
558
{
559
ProbeError(CallSampleCoverage);
560
}
561
562
#ifdef GL_OES_query_matrix
563
TEST_P(GLES1CovglTest, QueryMatrix)
564
{
565
ANGLE_SKIP_TEST_IF(!tkCheckExtension("GL_OES_query_matrix"));
566
ProbeError(CallQueryMatrix);
567
}
568
#endif
569
570
#ifdef GL_OES_matrix_palette
571
TEST_P(GLES1CovglTest, CurrentPaletteMatrixOES)
572
{
573
ANGLE_SKIP_TEST_IF(!tkCheckExtension("GL_OES_matrix_palette"));
574
ProbeError(CallCurrentPaletteMatrixOES);
575
}
576
TEST_P(GLES1CovglTest, LoadPaletteFromModelViewMatrixOES)
577
{
578
ANGLE_SKIP_TEST_IF(!tkCheckExtension("GL_OES_matrix_palette"));
579
ProbeError(CallLoadPaletteFromModelViewMatrixOES);
580
}
581
TEST_P(GLES1CovglTest, MatrixIndexPointerOES)
582
{
583
ANGLE_SKIP_TEST_IF(!tkCheckExtension("GL_OES_matrix_palette"));
584
ProbeError(CallMatrixIndexPointerOES);
585
}
586
TEST_P(GLES1CovglTest, WeightPointerOES)
587
{
588
ANGLE_SKIP_TEST_IF(!tkCheckExtension("GL_OES_matrix_palette"));
589
ProbeError(CallWeightPointerOES);
590
}
591
#endif
592
593
#ifdef GL_OES_VERSION_1_1
594
TEST_P(GLES1CovglTest, ClipPlane)
595
{
596
ProbeError(CallClipPlane);
597
}
598
#endif
599
600
ANGLE_INSTANTIATE_TEST(GLES1CovglTest, ES1_OPENGL(), ES1_VULKAN());
601
} // namespace angle
602
603
// Included here to fix a compile error due to white box tests using angle_end2end_tests_main.
604
void RegisterContextCompatibilityTests() {}
605
606