Explorar o código

#2416 Automate Correct image names

Richard Tingle hai 4 meses
pai
achega
cd40dde30d

+ 11 - 3
jme3-screenshot-tests/src/test/java/org/jmonkeyengine/screenshottests/terrain/TestPBRTerrain.java

@@ -50,6 +50,7 @@ import com.jme3.terrain.heightmap.ImageBasedHeightMap;
 import com.jme3.texture.Texture;
 import com.jme3.texture.Texture.WrapMode;
 import org.jmonkeyengine.screenshottests.testframework.ScreenshotTestBase;
+import org.junit.jupiter.api.TestInfo;
 import org.junit.jupiter.params.ParameterizedTest;
 import org.junit.jupiter.params.provider.Arguments;
 import org.junit.jupiter.params.provider.MethodSource;
@@ -95,7 +96,14 @@ public class TestPBRTerrain extends ScreenshotTestBase {
      */
     @ParameterizedTest(name = "{0}")
     @MethodSource("testParameters")
-    public void testPBRTerrain(String testName, int debugMode) {
+    public void testPBRTerrain(String testName, int debugMode, TestInfo testInfo) {
+
+        if(!testInfo.getTestClass().isPresent() || !testInfo.getTestMethod().isPresent()) {
+            throw new RuntimeException("Test preconditions not met");
+        }
+
+        String imageName = testInfo.getTestClass().get().getName() + "." + testInfo.getTestMethod().get().getName() + "_" + testName;
+
         screenshotTest(new BaseAppState() {
             private TerrainQuad terrain;
             private Material matTerrain;
@@ -276,8 +284,8 @@ public class TestPBRTerrain extends ScreenshotTestBase {
             @Override
             protected void onDisable() {}
 
-        }).setBaseImageFileName(testName)
-          .setFramesToTakeScreenshotsOn(3)
+        }).setBaseImageFileName(imageName)
+          .setFramesToTakeScreenshotsOn(4)
           .run();
     }
 }

+ 10 - 3
jme3-screenshot-tests/src/test/java/org/jmonkeyengine/screenshottests/terrain/TestPBRTerrainAdvanced.java

@@ -55,6 +55,7 @@ import com.jme3.texture.Texture.MagFilter;
 import com.jme3.texture.Texture.MinFilter;
 import com.jme3.texture.TextureArray;
 import org.jmonkeyengine.screenshottests.testframework.ScreenshotTestBase;
+import org.junit.jupiter.api.TestInfo;
 import org.junit.jupiter.params.ParameterizedTest;
 import org.junit.jupiter.params.provider.Arguments;
 import org.junit.jupiter.params.provider.MethodSource;
@@ -115,7 +116,13 @@ public class TestPBRTerrainAdvanced extends ScreenshotTestBase {
      */
     @ParameterizedTest(name = "{0}")
     @MethodSource("testParameters")
-    public void testPBRTerrainAdvanced(String testName, int debugMode) {
+    public void testPBRTerrainAdvanced(String testName, int debugMode, TestInfo testInfo) {
+        if(!testInfo.getTestClass().isPresent() || !testInfo.getTestMethod().isPresent()) {
+            throw new RuntimeException("Test preconditions not met");
+        }
+
+        String imageName = testInfo.getTestClass().get().getName() + "." + testInfo.getTestMethod().get().getName() + "_" + testName;
+
         screenshotTest(new BaseAppState() {
             private TerrainQuad terrain;
             private Material matTerrain;
@@ -354,8 +361,8 @@ public class TestPBRTerrainAdvanced extends ScreenshotTestBase {
             @Override
             protected void onDisable() {}
 
-        }).setBaseImageFileName(testName)
-          .setFramesToTakeScreenshotsOn(3)
+        }).setBaseImageFileName(imageName)
+          .setFramesToTakeScreenshotsOn(4)
           .run();
     }
 }