Files
renderdoc/util/test/tests/D3D12/D3D12_RGP_Capture.py
T
baldurk 748e089b15 Fix remaining static analysis identified issues in python test code
* 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.
2026-09-11 15:04:05 +01:00

40 lines
1.1 KiB
Python

import renderdoc as rd
import rdtest
import os
try:
import tkinter
except ImportError as ex:
tkinter = None
class D3D12_RGP_Capture(rdtest.TestCase):
demos_test_name = 'D3D12_Simple_Triangle'
def check_support(self):
if tkinter is None:
return False, 'tkinter is required but not available'
return super().check_support()
def check_capture(self):
apiprops = self.controller.GetAPIProperties()
if not apiprops.rgpCapture:
rdtest.log.print("RGP capture not tested")
return
# On D3D12 we need to create a real window
window = tkinter.Tk()
window.geometry("1280x720")
path = self.controller.CreateRGPProfile(rd.CreateWin32WindowingData(int(window.frame(), 16))) # type: ignore
rdtest.log.print(f"RGP capture created: '{path}'")
if os.path.exists(path) and os.path.getsize(path) > 100:
rdtest.log.success("RGP capture created successfully")
else:
raise rdtest.TestFailureException("RGP capture failed")