mirror of
https://github.com/baldurk/renderdoc.git
synced 2026-09-15 10:15:48 +00:00
* This includes: - Incorrect comparisons - Missing type annotations where it can't be inferred - Variable shadowing and bad use - Unused imports - asserts for non-None on types * Passes clean on strict pyright checking except for `reportMissingParameterType`, `reportUnusedVariable`, and `reportOptionalMemberAccess` which are all too spammy and low value to be worth addressing.
40 lines
1.3 KiB
Python
40 lines
1.3 KiB
Python
from typing import List
|
|
|
|
import rdtest
|
|
|
|
|
|
class GL_Entry_Points(rdtest.TestCase):
|
|
demos_test_name = 'GL_Entry_Points'
|
|
|
|
def check_capture(self):
|
|
sdf = self.controller.GetStructuredFile()
|
|
|
|
# The marker name, and the calls that we expect to follow it
|
|
expected = {
|
|
'First Test': ['glUniform1ui'],
|
|
'Second Test': ['glVertexAttribBinding', 'glProgramUniform4f'],
|
|
'Third Test': ['glVertexArrayAttribBinding', 'glUniform4f'],
|
|
}
|
|
|
|
for test in expected.keys():
|
|
marker = self.find_action(test)
|
|
if marker is None:
|
|
raise rdtest.TestFailureException(f'Failed to find action {test}')
|
|
action = marker.nextAction
|
|
|
|
calls: List[str] = []
|
|
|
|
for ev in action.events:
|
|
# skip any events up to and including the marker itself
|
|
if ev.eventId <= marker.eventId:
|
|
continue
|
|
|
|
calls.append(sdf.chunks[ev.chunkIndex].name)
|
|
|
|
for i in range(len(expected[test])):
|
|
if expected[test][i] != calls[i]:
|
|
raise rdtest.TestFailureException(f'After marker {test} got call {calls[i]} but expected {expected[test][i]}')
|
|
|
|
rdtest.log.success("API calls are as expected")
|
|
|