Class PluginWorkspaceTCBase

java.lang.Object
junit.framework.Assert
junit.framework.TestCase
junit.extensions.jfcunit.JFCTestCase
ro.sync.exml.workspace.api.PluginWorkspaceTCBase
All Implemented Interfaces:
junit.framework.Test

@API(type=EXTENDABLE, src=PRIVATE) public abstract class PluginWorkspaceTCBase extends junit.extensions.jfcunit.JFCTestCase
Base class for testing plugins and frameworks. For more details please read the topic called "Creating and Running Automated Tests" from the user manual:
https://www.oxygenxml.com/doc/ug-oxygen/topics/automated-tests.html
Since:
14.1
See Also:
  • "https://www.oxygenxml.com/doc/ug-oxygen/topics/automated-tests.html"
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final int
    JSON Editor
    static final int
    XML Author
    static final int
    XML Developer
    static final int
    XML Editor
  • Constructor Summary

    Constructors
    Constructor
    Description
    PluginWorkspaceTCBase(File installationFolder, File frameworksFolder, File pluginsFolder, File optionsFolder, String licenseKey)
    Constructor.
    PluginWorkspaceTCBase(File installationFolder, File frameworksFolder, File pluginsFolder, File optionsFolder, String licenseKey, int productID)
    Constructor.
    PluginWorkspaceTCBase(File frameworksFolder, File pluginsFolder, String licenseKey)
    Constructor.
  • Method Summary

    Modifier and Type
    Method
    Description
    Get the WSAuthorEditorPage for the current edited file.
    Get the XML content currently loaded in the current editor.
    Get the plugin workspace.
    protected void
    Invoke action with a certain ID on the AWT thread.
    protected void
    moveCaretRelativeTo(String text, int relativePosition, boolean select)
    Move caret relative to a text already existing in the author page.
    open(URL url)
    Open an URL.
    protected void
     
    protected void
     

    Methods inherited from class junit.extensions.jfcunit.JFCTestCase

    awtSleep, awtSleep, createNoExitSecurityManager, flushAWT, getAssertExit, getError, getHelper, getLockWait, hasError, isAWTRunning, pause, pauseAWT, resetError, resetForcedWait, resetSleepTime, resumeAWT, runBare, runCode, runTest, setAssertExit, setError, setForcedWait, setHelper, setLockWait, setSleepTime, sleep

    Methods inherited from class junit.framework.TestCase

    assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertFalse, assertFalse, assertNotNull, assertNotNull, assertNotSame, assertNotSame, assertNull, assertNull, assertSame, assertSame, assertTrue, assertTrue, countTestCases, createResult, fail, fail, failNotEquals, failNotSame, failSame, format, getName, run, run, setName, toString

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • Field Details

    • XML_AUTHOR_PRODUCT

      public static final int XML_AUTHOR_PRODUCT
      XML Author
      See Also:
    • XML_EDITOR_PRODUCT

      public static final int XML_EDITOR_PRODUCT
      XML Editor
      See Also:
    • XML_DEVELOPER_PRODUCT

      public static final int XML_DEVELOPER_PRODUCT
      XML Developer
      See Also:
    • JSON_EDITOR_PRODUCT

      public static final int JSON_EDITOR_PRODUCT
      JSON Editor
      See Also:
  • Constructor Details

    • PluginWorkspaceTCBase

      public PluginWorkspaceTCBase(File frameworksFolder, File pluginsFolder, String licenseKey) throws MalformedURLException
      Constructor. The installation folder will be assumed to be the folder in which the JVM has started (new File(".")).
      Parameters:
      frameworksFolder - The folder from where to load the frameworks. If null it will default to the folder "frameworks" in the installationFolder.
      pluginsFolder - The folder from where to load the plugins. If null it will default to the folder "plugins" in the installationFolder.
      licenseKey - The license key used to license the test Oxygen application.
      Throws:
      MalformedURLException - The folder parameters are incorrect.
    • PluginWorkspaceTCBase

      public PluginWorkspaceTCBase(File installationFolder, File frameworksFolder, File pluginsFolder, File optionsFolder, String licenseKey) throws MalformedURLException
      Constructor.
      Parameters:
      installationFolder - The folder where Oxygen is installed. If null it will default to the folder in which the JVM started (new File(".")).
      frameworksFolder - The folder from where to load the frameworks. If null it will default to the folder "frameworks" in the installationFolder.
      pluginsFolder - The folder from where to load the plugins. If null it will default to the folder "plugins" in the installationFolder.
      optionsFolder - The folder from where to load the Oxygen options. Set to null to use the default options folder on your specific platform (located in the user home).
      licenseKey - The license key used to license the test Oxygen application.
      Throws:
      MalformedURLException - The folder parameters are incorrect.
    • PluginWorkspaceTCBase

      public PluginWorkspaceTCBase(File installationFolder, File frameworksFolder, File pluginsFolder, File optionsFolder, String licenseKey, int productID) throws MalformedURLException
      Constructor.
      Parameters:
      installationFolder - The folder where Oxygen is installed. If null it will default to the folder in which the JVM started (new File(".")).
      frameworksFolder - The folder from where to load the frameworks. If null it will default to the folder "frameworks" in the installationFolder.
      pluginsFolder - The folder from where to load the plugins. If null it will default to the folder "plugins" in the installationFolder.
      optionsFolder - The folder from where to load the Oxygen options. Set to null to use the default options folder on your specific platform (located in the user home).
      licenseKey - The license key used to license the test Oxygen application.
      productID - ID of the product which should be started, one of XML_AUTHOR_PRODUCT, XML_EDITOR_PRODUCT or XML_DEVELOPER_PRODUCT. The ID of the product should match the type of Oxygen installation that you are using to start the test case.
      Throws:
      MalformedURLException - The folder parameters are incorrect.
  • Method Details

    • tearDown

      protected void tearDown() throws Exception
      Overrides:
      tearDown in class junit.extensions.jfcunit.JFCTestCase
      Throws:
      Exception
      See Also:
      • JFCTestCase.tearDown()
    • setUp

      protected void setUp() throws Exception
      Overrides:
      setUp in class junit.extensions.jfcunit.JFCTestCase
      Throws:
      Exception
      See Also:
      • JFCTestCase.setUp()
    • getPluginWorkspace

      public StandalonePluginWorkspace getPluginWorkspace()
      Get the plugin workspace.
      Returns:
      Returns the plugin workspace.
    • open

      public WSEditor open(URL url) throws Exception
      Open an URL.
      Parameters:
      url - The URL to open.
      Returns:
      The author page.
      Throws:
      Exception - If an I/O exception occurs.
    • getCurrentEditorXMLContent

      public String getCurrentEditorXMLContent() throws IOException
      Get the XML content currently loaded in the current editor.
      Returns:
      The XML content.
      Throws:
      IOException - If an I/O exception occurs.
    • getCurrentAuthorEditorPageAccess

      public WSAuthorEditorPage getCurrentAuthorEditorPageAccess() throws Exception
      Get the WSAuthorEditorPage for the current edited file.
      Returns:
      the WSAuthorEditorPage for the current edited file. Can throw class cast exception if the current editor is not opened in the author page.
      Throws:
      Exception - Problems while accessing the current editor page.
    • invokeAuthorExtensionActionForID

      protected void invokeAuthorExtensionActionForID(String id) throws Exception
      Invoke action with a certain ID on the AWT thread.
      Parameters:
      id - The id The action ID as defined in the framework.
      Throws:
      Exception - Problems while accessing the current editor page.
    • moveCaretRelativeTo

      protected void moveCaretRelativeTo(String text, int relativePosition, boolean select) throws Exception
      Move caret relative to a text already existing in the author page.
      Parameters:
      text - The text to search
      relativePosition - The delta to move the caret with after finding the text.
      Throws:
      Exception - The anchor text was not found in the document.