< prev index next >

tools/SharedTestUtilsOpen/src/test/javaclient/shared/TestBase.java

Print this page
rev 320 : 8151500: [TEST] Implement multiple golden image support
Summary: Makes possible using any number of golden images.

*** 1,7 **** /* ! * Copyright (c) 2009, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License version 2 only, as * published by the Free Software Foundation. Oracle designates this --- 1,7 ---- /* ! * Copyright (c) 2009, 2016, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License version 2 only, as * published by the Free Software Foundation. Oracle designates this
*** 28,58 **** import com.sun.glass.ui.Robot; import java.io.File; import java.util.concurrent.Semaphore; import javafx.application.Platform; import javafx.scene.Node; - import javafx.scene.Scene; import javafx.scene.SnapshotParameters; import javafx.scene.image.ImageView; - import javafx.stage.Stage; import org.jemmy.Point; import org.jemmy.action.GetAction; import org.jemmy.control.Wrap; import org.jemmy.env.Environment; - import org.jemmy.fx.ByWindowType; import org.jemmy.fx.Lookups; import org.jemmy.fx.NodeDock; import org.jemmy.fx.Root; import org.jemmy.interfaces.Parent; import org.jemmy.timing.State; import org.junit.After; import org.junit.Assert; import org.junit.Before; import org.junit.BeforeClass; - import test.javaclient.shared.screenshots.ImagesManager; import test.javaclient.shared.screenshots.ScreenshotUtils; import static test.javaclient.shared.TestUtil.isEmbedded; /** * Base class for scenegraph tests. Provides jemmy initialization, scene finding * and {@link test.scenegraph.app.AbstractApp} based tests support. * --- 28,55 ---- import com.sun.glass.ui.Robot; import java.io.File; import java.util.concurrent.Semaphore; import javafx.application.Platform; import javafx.scene.Node; import javafx.scene.SnapshotParameters; import javafx.scene.image.ImageView; import org.jemmy.Point; import org.jemmy.action.GetAction; import org.jemmy.control.Wrap; import org.jemmy.env.Environment; import org.jemmy.fx.Lookups; import org.jemmy.fx.NodeDock; import org.jemmy.fx.Root; import org.jemmy.interfaces.Parent; import org.jemmy.timing.State; import org.junit.After; import org.junit.Assert; import org.junit.Before; import org.junit.BeforeClass; import test.javaclient.shared.screenshots.ScreenshotUtils; import static test.javaclient.shared.TestUtil.isEmbedded; + import test.javaclient.shared.screenshots.GoldenImageManager; /** * Base class for scenegraph tests. Provides jemmy initialization, scene finding * and {@link test.scenegraph.app.AbstractApp} based tests support. *
*** 264,274 **** verifyFailures(); if (shoots) { //verify screenshot String testName = new StringBuilder(getName()).append("-").append(toplevel_name).append(innerlevel_name).append("-").append("additional").toString(); ! String pathToGoldenScreenshot = ImagesManager.getInstance().lookupGoldenScreenshot(testName); if (!(new File(pathToGoldenScreenshot)).exists()) { testName = new StringBuilder(getName()).append("-").append(toplevel_name).append(innerlevel_name).toString(); } ScreenshotUtils.checkPageContentScreenshot(testName); if (throwError) { --- 261,271 ---- verifyFailures(); if (shoots) { //verify screenshot String testName = new StringBuilder(getName()).append("-").append(toplevel_name).append(innerlevel_name).append("-").append("additional").toString(); ! String pathToGoldenScreenshot = GoldenImageManager.getScreenshotPath(testName); if (!(new File(pathToGoldenScreenshot)).exists()) { testName = new StringBuilder(getName()).append("-").append(toplevel_name).append(innerlevel_name).toString(); } ScreenshotUtils.checkPageContentScreenshot(testName); if (throwError) {
*** 288,309 **** String prefixForFilename, final Wrap<? extends Node> noda) { String filename = prefixForFilename + getNameForScreenShot(toplevel_name, innerlevel_name); org.jemmy.image.Image imageJemmy = (null == noda) ? getScene().getScreenImage() : noda.getScreenImage(); ! String resName = ImagesManager.getInstance().getScreenshotPath(filename); ! String res2Name = ImagesManager.getInstance().getScreenshotPath(filename + "-2"); imageJemmy.save(resName); doRenderToImageAndWait(noda, null); // TAKE A SHOT USING JEMMY, save it (scene with ImageView with rendered image in it) //org.jemmy.image.Image sceneImageJemmy2 = scene.getScreenImage(); //sceneImageJemmy2.save(ImagesManager.getInstance().getScreenshotPath(filename + "2")); ! String diffName = ImagesManager.getInstance().getScreenshotPath(filename + "-diff"); boolean scenesEqual = true; try { if (null == noda) { getScene().waitImage(getScene().getEnvironment().getImageLoader().load(resName), res2Name, diffName); --- 285,306 ---- String prefixForFilename, final Wrap<? extends Node> noda) { String filename = prefixForFilename + getNameForScreenShot(toplevel_name, innerlevel_name); org.jemmy.image.Image imageJemmy = (null == noda) ? getScene().getScreenImage() : noda.getScreenImage(); ! String resName = GoldenImageManager.getScreenshotPath(filename); ! String res2Name = GoldenImageManager.getScreenshotPath(filename + "-2"); imageJemmy.save(resName); doRenderToImageAndWait(noda, null); // TAKE A SHOT USING JEMMY, save it (scene with ImageView with rendered image in it) //org.jemmy.image.Image sceneImageJemmy2 = scene.getScreenImage(); //sceneImageJemmy2.save(ImagesManager.getInstance().getScreenshotPath(filename + "2")); ! String diffName = GoldenImageManager.getScreenshotPath(filename + "-diff"); boolean scenesEqual = true; try { if (null == noda) { getScene().waitImage(getScene().getEnvironment().getImageLoader().load(resName), res2Name, diffName);
< prev index next >