Skip to content

Commit 697e0fb

Browse files
authored
tests(editmode): pre-create texture asset in texture assignment test for CI stability (#352)
1 parent faf9aff commit 697e0fb

File tree

1 file changed

+16
-0
lines changed

1 file changed

+16
-0
lines changed

TestProjects/UnityMCPTests/Assets/Tests/EditMode/MCPToolParameterTests.cs

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -393,6 +393,22 @@ public void Test_ManageAsset_JSONStringParsing_TextureAssignment_CreateAndModify
393393
var matPath = $"{tempDir}/JsonTexTest_{Guid.NewGuid().ToString("N")}.mat";
394394
var texPath = "Assets/Temp/LiveTests/TempBaseTex.asset"; // created by GenTempTex
395395

396+
// Ensure the texture exists BEFORE creating the material so assignment succeeds during create
397+
var preTex = AssetDatabase.LoadAssetAtPath<Texture>(texPath);
398+
if (preTex == null)
399+
{
400+
if (!AssetDatabase.IsValidFolder("Assets/Temp")) AssetDatabase.CreateFolder("Assets", "Temp");
401+
if (!AssetDatabase.IsValidFolder("Assets/Temp/LiveTests")) AssetDatabase.CreateFolder("Assets/Temp", "LiveTests");
402+
var tex2D = new Texture2D(4, 4, TextureFormat.RGBA32, false);
403+
var pixels = new Color[16];
404+
for (int i = 0; i < pixels.Length; i++) pixels[i] = Color.white;
405+
tex2D.SetPixels(pixels);
406+
tex2D.Apply();
407+
AssetDatabase.CreateAsset(tex2D, texPath);
408+
AssetDatabase.SaveAssets();
409+
AssetDatabase.Refresh();
410+
}
411+
396412
var createParams = new JObject
397413
{
398414
["action"] = "create",

0 commit comments

Comments
 (0)