mirror of
https://github.com/baldurk/renderdoc.git
synced 2026-09-15 02:05:50 +00:00
* assert is handled specially by the type checker so we don't want to have duplicate self.check / assert * The original reason for TestCase.check was to print the assertion message but this can be handled by checking for the AssertionError exception
50 lines
1.3 KiB
Python
50 lines
1.3 KiB
Python
import rdtest
|
|
import renderdoc as rd
|
|
|
|
|
|
class GL_Draw_Zoo(rdtest.Draw_Zoo):
|
|
demos_test_name = 'GL_Draw_Zoo'
|
|
internal = False
|
|
|
|
def check_capture(self):
|
|
rdtest.Draw_Zoo.check_capture(self)
|
|
|
|
action = self.find_action("GL_PRIMITIVE_RESTART")
|
|
|
|
assert action is not None
|
|
|
|
action = action.nextAction
|
|
|
|
self.controller.SetFrameEvent(action.eventId, True)
|
|
|
|
pipe = self.controller.GetPipelineState()
|
|
|
|
ib = pipe.GetIBuffer()
|
|
|
|
|
|
assert pipe.IsRestartEnabled()
|
|
assert (pipe.GetRestartIndex() & ((1 << (ib.byteStride*8)) - 1)) == 0xffff
|
|
|
|
action = self.find_action("GL_PRIMITIVE_RESTART_FIXED_INDEX")
|
|
|
|
assert action is not None
|
|
|
|
action = action.nextAction
|
|
|
|
self.controller.SetFrameEvent(action.eventId, True)
|
|
|
|
pipe = self.controller.GetPipelineState()
|
|
|
|
ib = pipe.GetIBuffer()
|
|
|
|
assert pipe.IsRestartEnabled()
|
|
assert (pipe.GetRestartIndex() & ((1 << (ib.byteStride*8)) - 1)) == 0xffff
|
|
|
|
action = self.find_action("GL_ClearDepth")
|
|
assert action is not None
|
|
|
|
action = action.nextAction
|
|
|
|
assert action.flags & (rd.ActionFlags.Clear|rd.ActionFlags.ClearDepthStencil) == (rd.ActionFlags.Clear|rd.ActionFlags.ClearDepthStencil)
|
|
|