From 89bc3582dbbd6a8fb7ce471e8ecad706d5b7576f Mon Sep 17 00:00:00 2001 From: John Haddon Date: Tue, 30 Jan 2024 10:36:51 +0000 Subject: [PATCH] 3Delight RendererTest : Fix failure to parse NSI file The tests affected by this were merged to `1.3_maintenance` where `.nsi` files is written as ASCII. But on main since f4170654798cb45c000ea477c5c3ca9488b22e60 we need to use the `.nsia` extension for ASCII, and `.nsi` is binary. This was giving us the following CI failure : ``` Error: ERROR: testUSDLightShaping (IECoreDelightTest.RendererTest.RendererTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "/__w/gaffer/gaffer/build/python/IECoreDelightTest/RendererTest.py", line 1316, in testUSDLightShaping nsi = self.__parseDict( self.__renderLights( lightSettings ) ) File "/__w/gaffer/gaffer/build/python/IECoreDelightTest/RendererTest.py", line 1408, in __parseDict for i in f.readlines() : File "/__w/gaffer/gaffer/build/lib/python3.7/codecs.py", line 322, in decode (result, consumed) = self._buffer_decode(data, self.errors, final) UnicodeDecodeError: 'utf-8' codec can't decode byte 0xcc in position 97: invalid continuation byte ``` --- python/IECoreDelightTest/RendererTest.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/python/IECoreDelightTest/RendererTest.py b/python/IECoreDelightTest/RendererTest.py index 99b21d87596..b4815bf67ee 100644 --- a/python/IECoreDelightTest/RendererTest.py +++ b/python/IECoreDelightTest/RendererTest.py @@ -1128,7 +1128,7 @@ def __renderLights( self, lightSettings ) : r = GafferScene.Private.IECoreScenePreview.Renderer.create( "3Delight", GafferScene.Private.IECoreScenePreview.Renderer.RenderType.SceneDescription, - str( self.temporaryDirectory() / "test.nsi" ), + str( self.temporaryDirectory() / "test.nsia" ), ) for lightType, position, rotation, geometryType, geometryAttributes, shader, lightParameters, dlParameters in lightSettings : @@ -1147,7 +1147,7 @@ def __renderLights( self, lightSettings ) : r.render() del r - return self.temporaryDirectory() / "test.nsi" + return self.temporaryDirectory() / "test.nsia" def __assertLightSettings( self, nsi, lightSettings ) :