JAL-3453 Some tests require different Desktop constructor
[jalview.git] / src / jalview / gui / Desktop.java
index 85ec3ae..226efdf 100644 (file)
@@ -242,7 +242,7 @@ public class Desktop extends GDesktop
    * JInternalFrame objects when in that mode.
    * 
    */
-  private boolean instanceOnly;
+  boolean instanceOnly;
 
   class MyDesktopManager implements DesktopManager
   {
@@ -384,17 +384,16 @@ public class Desktop extends GDesktop
   }
 
   /**
-   * For testing purposes, this constructor can be utilized to allow the creation 
-   * of a singleton Desktop instance without the formation of frames. The Cache is 
-   * initialized, but that is all. 
-   * 
-   * It is not currently used. 
+   * For TestNG, this constructor can be utilized to allow the creation of a
+   * singleton Desktop instance without the formation of frames and, especially,
+   * not involving dialogs. Cache.log is also initialized for some tests that
+   * require it despite there being no Desktop.
    * 
    * @param forInstance
    */
   public Desktop(boolean forInstance)
   {
-
+    ApplicationSingletonProvider.setInstance(Desktop.class, this);
     Cache.initLogger();
     instanceOnly = true;
   }
@@ -3317,7 +3316,9 @@ public class Desktop extends GDesktop
           {
           }
         }
-        if (instanceOnly)
+        System.out.println("Desktop headless or instanceonly" + instanceOnly
+                + " " + Jalview.isHeadlessMode());
+        if (instanceOnly || Jalview.isHeadlessMode())
         {
           return;
         }