Module EDTestCaseEDUtilsSymmetry
[hide private]
[frames] | no frames]

Source Code for Module EDTestCaseEDUtilsSymmetry

 1  # 
 2  #    Project: The EDNA Kernel 
 3  #             http://www.edna-site.org 
 4  # 
 5  #    File: "$Id$" 
 6  # 
 7  #    Copyright (C) 2008-2009 European Synchrotron Radiation Facility 
 8  #                            Grenoble, France 
 9  # 
10  #    Principal authors: Marie-Francoise Incardona (incardon@esrf.fr) 
11  #                       Olof Svensson (svensson@esrf.fr)  
12  # 
13  #    This program is free software: you can redistribute it and/or modify 
14  #    it under the terms of the GNU Lesser General Public License as published 
15  #    by the Free Software Foundation, either version 3 of the License, or 
16  #    (at your option) any later version. 
17  # 
18  #    This program is distributed in the hope that it will be useful, 
19  #    but WITHOUT ANY WARRANTY; without even the implied warranty of 
20  #    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the 
21  #    GNU Lesser General Public License for more details. 
22  # 
23  #    You should have received a copy of the GNU General Public License 
24  #    and the GNU Lesser General Public License  along with this program.   
25  #    If not, see <http://www.gnu.org/licenses/>. 
26  # 
27   
28  __authors__ = [ "Marie-Francoise Incardona", "Olof Svensson" ] 
29  __contact__ = "svensson@esrf.fr" 
30  __license__ = "LGPLv3+" 
31  __copyright__ = "European Synchrotron Radiation Facility, Grenoble, France" 
32   
33  import os 
34   
35  from EDTestCase      import EDTestCase 
36  from EDUtilsSymmetry import EDUtilsSymmetry 
37  from EDAssert        import EDAssert 
38   
39   
40 -class EDTestCaseEDUtilsSymmetry(EDTestCase):
41 42
44 """ 45 Testing retrieving the lowest symmetry space group from all Bravais Lattices 46 """ 47 listBravaisLattice = [ "aP", "mP", "mC", "mI", "oP", "oA", "oB", "oC", "oS", "oF", "oI", "tP", "tC", "tI", "tF", "hP", "hR", "cP", "cF", "cI" ] 48 listSpaceGroup = [ "P1", "P2", "C2", "C2", "P222", "C222", "C222", "C222", "C222", "F222", "I222", "P4", "P4", "I4", "I4", "P3", "H3", "P23", "F23", "I23" ] 49 for iIndex in range(len(listBravaisLattice)): 50 EDAssert.equal(listSpaceGroup[ iIndex ], EDUtilsSymmetry.getMinimumSymmetrySpaceGroupFromBravaisLattice(listBravaisLattice[ iIndex]))
51
53 strSymopFileName = "/opt/pxsoft/ccp4/v6.3.0/linux-x86_64/lib/data/symop.lib" 54 if os.path.exists(strSymopFileName): 55 EDAssert.equal(1, EDUtilsSymmetry.getITNumberFromSpaceGroupName("P1", strSymopFileName), "ITNumber from space group P1") 56 EDAssert.equal(3, EDUtilsSymmetry.getITNumberFromSpaceGroupName("P2", strSymopFileName), "ITNumber from space group P2") 57 EDAssert.equal(5, EDUtilsSymmetry.getITNumberFromSpaceGroupName("C2", strSymopFileName), "ITNumber from space group C2") 58 EDAssert.equal(16, EDUtilsSymmetry.getITNumberFromSpaceGroupName("P222", strSymopFileName), "ITNumber from space group P222") 59 EDAssert.equal(21, EDUtilsSymmetry.getITNumberFromSpaceGroupName("C222", strSymopFileName), "ITNumber from space group C222") 60 EDAssert.equal(22, EDUtilsSymmetry.getITNumberFromSpaceGroupName("F222", strSymopFileName), "ITNumber from space group F222") 61 EDAssert.equal(75, EDUtilsSymmetry.getITNumberFromSpaceGroupName("P4", strSymopFileName), "ITNumber from space group P4") 62 EDAssert.equal(79, EDUtilsSymmetry.getITNumberFromSpaceGroupName("I4", strSymopFileName), "ITNumber from space group I4") 63 EDAssert.equal(143, EDUtilsSymmetry.getITNumberFromSpaceGroupName("P3", strSymopFileName), "ITNumber from space group P3") 64 EDAssert.equal(146, EDUtilsSymmetry.getITNumberFromSpaceGroupName("H3", strSymopFileName), "ITNumber from space group H3") 65 EDAssert.equal(195, EDUtilsSymmetry.getITNumberFromSpaceGroupName("P23", strSymopFileName), "ITNumber from space group P23") 66 EDAssert.equal(196, EDUtilsSymmetry.getITNumberFromSpaceGroupName("F23", strSymopFileName), "ITNumber from space group F23")
67 68 69
70 - def process(self):
73 74 75 if __name__ == '__main__': 76 77 edTestCaseEDUtilsSymmetry = EDTestCaseEDUtilsSymmetry("TestCase EDTestCaseEDUtilsSymmetry") 78 edTestCaseEDUtilsSymmetry.execute() 79