X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=test%2Fjalview%2Fext%2Fpymol%2FPymolManagerTest.java;h=daea0dc55a52dc89bcc7f7ef1cf71d9fcb6f0e21;hb=20d8cc2bb3e2fab2b7f637a3d523c90ceb58903d;hp=19b779d56559fa5f07f08cce224786ae0810b477;hpb=42f4227ed213d422a87d3b22fc9e85d14ffaf53f;p=jalview.git diff --git a/test/jalview/ext/pymol/PymolManagerTest.java b/test/jalview/ext/pymol/PymolManagerTest.java index 19b779d..daea0dc 100644 --- a/test/jalview/ext/pymol/PymolManagerTest.java +++ b/test/jalview/ext/pymol/PymolManagerTest.java @@ -1,11 +1,34 @@ +/* + * 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.ext.pymol; import static org.testng.Assert.assertEquals; +import static org.testng.Assert.assertTrue; -import jalview.structure.StructureCommand; +import java.util.List; import org.testng.annotations.Test; +import jalview.structure.StructureCommand; + public class PymolManagerTest { @Test(groups = "Functional") @@ -18,9 +41,50 @@ public class PymolManagerTest req = PymolManager .getPostRequest(new StructureCommand("foobar", "blue", "all")); - assertEquals(req, "foobar" - + "blue" - + "all" - + ""); + assertEquals(req, + "foobar" + + "blue" + + "all" + + ""); + } + + @Test(groups = "Functional") + public void testGetPymolPaths() + { + /* + * OSX + */ + List paths = PymolManager.getPymolPaths("Mac OS X"); + assertEquals(paths.size(), 1); + assertTrue( + paths.contains("/Applications/PyMOL.app/Contents/MacOS/PyMOL")); + + /* + * Linux + */ + paths = PymolManager.getPymolPaths("Linux i386 1.5.0"); + assertTrue(paths.contains("/usr/local/pymol/bin/PyMOL")); + assertTrue(paths.contains("/usr/local/bin/PyMOL")); + assertTrue(paths.contains("/usr/bin/PyMOL")); + assertTrue(paths.contains("/usr/local/pymol/bin/PyMOL")); + assertTrue(paths + .contains(System.getProperty("user.home") + "/opt/bin/PyMOL")); + + /* + * Windows + */ + paths = PymolManager.getPymolPaths("Windows 10"); + assertTrue(paths.contains(System.getProperty("user.home") + + "\\AppData\\Local\\Schrodinger\\PyMOL2\\PyMOLWinWithConsole.bat")); + assertTrue(paths.contains(System.getProperty("user.home") + + "\\PyMOL\\PyMOLWinWithConsole.bat")); + assertTrue(paths + .contains("C:\\ProgramData\\PyMOL\\PyMOLWinWithConsole.bat")); + + /* + * Other + */ + paths = PymolManager.getPymolPaths("VAX/VMS"); + assertTrue(paths.isEmpty()); } }