X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=test%2Fjalview%2Fio%2FJalview2xmlBase.java;h=a197340abcb312773db6df0d2db5903e3f431238;hb=31aca2e9990ff33e088faa41419bb60014a6fbcf;hp=d774f87ecf5f43c1a50be774dce6175cb9a73bbd;hpb=80deacabf176462487e1703ad24397ae30ebc5e2;p=jalview.git diff --git a/test/jalview/io/Jalview2xmlBase.java b/test/jalview/io/Jalview2xmlBase.java index d774f87..a197340 100644 --- a/test/jalview/io/Jalview2xmlBase.java +++ b/test/jalview/io/Jalview2xmlBase.java @@ -1,32 +1,68 @@ +/* + * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$) + * Copyright (C) $$Year-Rel$$ The Jalview Authors + * + * This file is part of Jalview. + * + * Jalview is free software: you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation, either version 3 + * of the License, or (at your option) any later version. + * + * Jalview is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty + * of MERCHANTABILITY or FITNESS FOR A PARTICULAR + * PURPOSE. See the GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Jalview. If not, see . + * The Jalview Authors are detailed in the 'AUTHORS' file. + */ package jalview.io; -import jalview.bin.Cache; -import jalview.datamodel.AlignmentAnnotation; -import jalview.datamodel.SequenceI; -import jalview.gui.Desktop; - -import java.time.Instant; import java.util.Date; import org.testng.annotations.AfterClass; import org.testng.annotations.BeforeClass; import org.testng.annotations.BeforeTest; +import jalview.bin.Cache; +import jalview.bin.Jalview; +import jalview.datamodel.AlignmentAnnotation; +import jalview.datamodel.SequenceI; +import jalview.gui.Desktop; +import jalview.gui.JvOptionPane; + public class Jalview2xmlBase { + @BeforeClass(alwaysRun = true) + public void setUpJvOptionPane() + { + JvOptionPane.setInteractiveMode(false); + JvOptionPane.setMockResponse(JvOptionPane.CANCEL_OPTION); + } + /** * @throws java.lang.Exception */ @BeforeClass(alwaysRun = true) public static void setUpBeforeClass() throws Exception { - jalview.bin.Jalview.main(new String[] { "-props", - "test/jalview/io/testProps.jvprops" }); - jalview.bin.Cache.setProperty( - "JALVIEW_NEWS_RSS_LASTMODIFIED", - Cache.date_format.format(Date.from(Instant.now().plusSeconds( - 3600)))); + /* + * use read-only test properties file + */ + Cache.loadProperties("test/jalview/io/testProps.jvprops"); + + /* + * set news feed last read to a future time to ensure no + * 'unread' news item is displayed + */ + Date oneHourFromNow = new Date( + System.currentTimeMillis() + 3600 * 1000); + Cache.setDateProperty("JALVIEW_NEWS_RSS_LASTMODIFIED", oneHourFromNow); + + Jalview.main(new String[] {}); } /** @@ -35,13 +71,18 @@ public class Jalview2xmlBase @AfterClass(alwaysRun = true) public static void tearDownAfterClass() throws Exception { - jalview.gui.Desktop.instance.closeAll_actionPerformed(null); + if (Desktop.instance != null) + Desktop.instance.closeAll_actionPerformed(null); } @BeforeTest(alwaysRun = true) public static void clearDesktop() { - Desktop.instance.closeAll_actionPerformed(null); + if (Desktop.instance != null && Desktop.getFrames() != null + && Desktop.getFrames().length > 0) + { + Desktop.instance.closeAll_actionPerformed(null); + } } public int countDsAnn(jalview.viewmodel.AlignmentViewport avp)