def testEmptyFileSkipLines(self): # fold>>
     f = FileReader.FileReader(os.path.join(moduleDir(),"emptytestfile.txt"))
     self.assertEqual(f.currentPos(), -1)
     f.skipLines(10)
     self.assertEqual(f.isAtEOF(), True)
     f.skipLines(-10)
     self.assertEqual(f.isAtBOF(), True)
 def testFindStringNotFound(self): # fold>>
     "Findstring functionality/not found case"
     f = FileReader.FileReader(os.path.join(moduleDir(),"testfile.txt"))
     self.assertEqual(f.findString('notfound'),'')
     self.assertEqual(f.isAtEOF(), True)
     self.assertEqual(f.findString('notfound', backward=True), '')
     self.assertEqual(f.isAtBOF(), True)
 def testRegexpCounted(self): # fold>>
     "Findregexp functionality/counted search"
     f = FileReader.FileReader(os.path.join(moduleDir(),"testfile.txt"))
     self.assertEqual(f.findRegexp("line", 2), ("2nd line\n",))
     self.assertEqual(f.currentLine(), "2nd line\n")
     f.toEOF()
     self.assertEqual(f.findRegexp("line", 2, backward=True), ("2nd line\n",))
     self.assertEqual(f.currentLine(),"2nd line\n")
 def testRegexpCurlineNeverEvaluated(self): # fold>>
     f = FileReader.FileReader(os.path.join(moduleDir(),"testfile.txt"))
     f.toPos(0)
     self.assertEqual(f.findRegexp('line'), ("2nd line\n",))
     self.assertEqual(f.currentLine(), "2nd line\n")
     f.toPos(2)
     self.assertEqual(f.findRegexp('line', backward=True), ("2nd line\n",))
     self.assertEqual(f.currentLine(),"2nd line\n")
 def testGetItem(self): # fold>>
      
     f = FileReader.FileReader(os.path.join(moduleDir(),"testfile.txt"))
     
     self.assertEqual(f[0],"1st line\n")
     self.assertEqual(f[1],"2nd line\n")
     self.assertEqual(f[2],"3rd line\n")
     f.close()
 def testRegexpBasic(self): # fold>>
     "Findregexp functionality/basic search"
     f = FileReader.FileReader(os.path.join(moduleDir(),"testfile.txt"))
     self.assertEqual( f.findRegexp("3rd"), ("3rd line\n",))
     self.assertEqual( f.currentLine(), "3rd line\n")
     f.toEOF()
     self.assertEqual( f.findRegexp("1st", backward=True), ("1st line\n",))
     self.assertEqual( f.currentLine(), "1st line\n")
 def testFindStringCurlineNeverEvaluated(self): # fold>>
     "Findstring functionality/curline never evaluated"
     f = FileReader.FileReader(os.path.join(moduleDir(),"testfile.txt"))
     f.toPos(0)
     self.assertEqual( f.findString('line'),"2nd line\n")
     self.assertEqual( f.currentLine(), "2nd line\n")
     f.toPos(2)
     self.assertEqual( f.findString('line', backward=True), "2nd line\n")
     self.assertEqual( f.currentLine(), "2nd line\n")
Пример #8
0
    def testHeaderTransitionToken(self):  # fold>>
        data = FileSnippets.headerTransition()
        writeToTestFile(data)

        reader = FileReader.FileReader(testFilePath())
        start_pos = reader.currentPos()
        token = Tokens.HeaderTransitionToken.match(reader)

        self.assertEqual(token.__class__, Tokens.HeaderTransitionToken)
        self.assertEqual(reader.currentPos(), start_pos + 1)
Пример #9
0
 def tokenize(self,filename):
     reader = FileReader.FileReader(filename)
     token_list = []
     while not reader.isAtEOF():
         token = self._resolveNextToken(reader)
         if token is None:
             reader.readline()
         else:
             token_list.append(token)
     return token_list
Пример #10
0
    def testParseSymmetrySection(self):  # fold>>
        filename = os.path.join(moduleDir(), "HSO2POEtg3.zmat")
        f = FileReader.FileReader(filename)
        sym = ZMatrix._parseSymmetrySection(f)
        valid_data = ['X', 'Z']
        self.assertEqual(len(sym), len(valid_data))
        for index in xrange(len(sym)):
            self.assertEqual(sym[index], valid_data[index])

        f.close()
 def testEmptyFileSeeks(self): # fold>>
     f = FileReader.FileReader(os.path.join(moduleDir(),"emptytestfile.txt"))
     self.assertEqual(f.currentPos(), -1)
     self.assertEqual(f.isAtBOF(), True)
     f.toEOF()
     self.assertEqual(f.currentPos(), 0)
     self.assertEqual(f.isAtEOF(), True)
     f.toBOF()
     self.assertEqual(f.currentPos(), -1)
     self.assertEqual(f.isAtBOF(), True)
Пример #12
0
    def testZPVEToken(self):  # fold>>
        data = FileSnippets.zpve()
        writeToTestFile(data)

        reader = FileReader.FileReader(testFilePath())
        start_pos = reader.currentPos()
        token = Tokens.ZPVEToken.match(reader)

        self.assertEqual(token.__class__, Tokens.ZPVEToken)
        self.assertEqual(reader.currentPos(), start_pos + 1)
        self.assertAlmostEqual(token.zpve().value(), 0.074920061481)
Пример #13
0
    def testGeometryToken(self):  # fold>>
        data = FileSnippets.geometry()
        writeToTestFile(data)

        reader = FileReader.FileReader(testFilePath())
        start_pos = reader.currentPos()
        token = Tokens.GeometryToken.match(reader)

        self.assertEqual(token.__class__, Tokens.GeometryToken)
        self.assertEqual(reader.currentPos(), start_pos + 9)
        self.assertEqual(len(token.atomList()), 9)
Пример #14
0
    def testEnergyToken(self):  # fold>>
        data = FileSnippets.energy()
        writeToTestFile(data)

        reader = FileReader.FileReader(testFilePath())
        start_pos = reader.currentPos()
        token = Tokens.EnergyToken.match(reader)

        self.assertEqual(token.__class__, Tokens.EnergyToken)
        self.assertEqual(reader.currentPos(), start_pos + 1)
        self.assertAlmostEqual(token.energy().value(), -153.869550889154)
Пример #15
0
    def testNormalModesToken(self):  # fold>>
        data = FileSnippets.normalModes()
        writeToTestFile(data)

        reader = FileReader.FileReader(testFilePath())
        start_pos = reader.currentPos()
        token = Tokens.NormalModesToken.match(reader)

        self.assertEqual(token.__class__, Tokens.NormalModesToken)
        self.assertEqual(reader.currentPos(), start_pos + 5)
        self.assertEqual(len(token.eigenvalues()), 20)
 def testSkipLines(self): # fold>>
     "Seeking with relative jumps"
     f = FileReader.FileReader(os.path.join(moduleDir(),"testfile.txt"))
     self.assertEqual( f.currentPos(), -1)
     f.skipLines(3)
     self.assertEqual( f.currentPos(), 2)
     f.skipLines(-1)
     self.assertEqual( f.currentPos(), 1)
     f.skipLines(10)
     self.assertEqual( f.isAtEOF(), True)
     f.skipLines(-10)
     self.assertEqual( f.isAtBOF(), True)
Пример #17
0
    def testConnectionToken(self):  # fold>>
        data = FileSnippets.connection()
        writeToTestFile(data)

        reader = FileReader.FileReader(testFilePath())
        start_pos = reader.currentPos()
        token = Tokens.ConnectionToken.match(reader)

        self.assertEqual(token.__class__, Tokens.ConnectionToken)
        self.assertEqual(reader.currentPos(), start_pos + 1)
        self.assertEqual(token.first(), "0")
        self.assertEqual(token.second(), "DC")
 def testFileReadlineBackward(self): # fold>>
     f = FileReader.FileReader(os.path.join(moduleDir(),"testfile.txt"))
  
     f.toEOF()
     l = f.readbackline()
     self.assertEqual(l,"3rd line\n")
     l = f.readbackline()
     self.assertEqual(l,"2nd line\n")
     l = f.readbackline()
     self.assertEqual(l,"1st line\n")
     
     # now the pointer is at begin of file
     self.assertEqual(f.readbackline(), '')
    def testFileReadLine(self): # fold>>
        f = FileReader.FileReader(os.path.join(moduleDir(),"testfile.txt"))

        l = f.readline()
        self.assertEqual(l,"1st line\n")
        l = f.readline()
        self.assertEqual(l,"2nd line\n")
        l = f.readline()
        self.assertEqual(l,"3rd line\n")

        # now the pointer is at end of file
        self.assertEqual(f.readline(), '')
        f.close()
 def testOccurrences(self): # fold>>
     "Seeking with relative jumps"
     f = FileReader.FileReader(os.path.join(moduleDir(),"testfile.txt"))
     f.skipLines(1)
     self.assertEqual(f.isAtPos(0), True)
     self.assertEqual(f.occurrences('line'), [1, 2])
     self.assertEqual(f.isAtPos(0), True)
     f.skipLines(2)
     self.assertEqual(f.isAtPos(2), True)
     self.assertEqual(f.occurrences('line', backward=True),[1, 0])
     self.assertEqual(f.isAtPos(2), True)
     f.toBOF()
     self.assertEqual(f.occurrences('not found'), [])
Пример #21
0
    def testStructureHeaderToken(self):  # fold>>
        data = FileSnippets.structureHeader()
        writeToTestFile(data)

        reader = FileReader.FileReader(testFilePath())
        start_pos = reader.currentPos()
        token = Tokens.StructureHeaderToken.match(reader)

        self.assertEqual(token.__class__, Tokens.StructureHeaderToken)
        self.assertEqual(reader.currentPos(), start_pos + 1)
        self.assertEqual(token.type(), "DC")
        self.assertEqual(token.number(), 1)
        self.assertEqual(token.symmetry(), "C1")
Пример #22
0
 def testCommandDirectiveToken(self): # fold>>
     data = FileSnippets.commandDirective()
     writeToTestFile(data)
     
     reader = FileReader.FileReader(testFilePath())
     start_pos = reader.currentPos()
     token = Tokens.CommandDirectiveToken.match(reader)
     
     self.assertEqual(token.__class__, Tokens.CommandDirectiveToken)
     self.assertEqual(reader.currentPos(), start_pos+1)
     self.assertEqual(token.commandLine(), "grrm/RHF/6-31+G*")
     self.assertEqual(token.jobString(), "grrm")
     self.assertEqual(token.methodString(), "RHF")
     self.assertEqual(token.basisSetString(), "6-31+G*")
 def testEmptyFileGetItemOutOfBounds(self): # fold>>
     f = FileReader.FileReader(os.path.join(moduleDir(),"emptytestfile.txt"))
     # move at BOF with big negative num
     self.assertEqual(f[-999999], '')
     self.assertEqual(f.isAtBOF(),True)
     # move at EOF with big positive num
     self.assertEqual(f[9999999], '')
     self.assertEqual(f.isAtEOF(),True)
     # move at BOF with -1
     self.assertEqual(f[-1], '')
     self.assertEqual(f.isAtBOF(),True)
     # move at EOF with len
     self.assertEqual(f[len(f)], '')
     self.assertEqual(f.isAtEOF(),True)
 def testCurrentPos(self): # fold>>
     
     f = FileReader.FileReader(os.path.join(moduleDir(),"testfile.txt"))
     self.assertEqual(f.currentPos(),-1)
     f[1]
     self.assertEqual(f.currentPos(),1)
 def testCurrentLine(self): # fold>>
     f = FileReader.FileReader(os.path.join(moduleDir(),"testfile.txt"))
     self.assertEqual(f.currentLine(), '')
     f[1]
     # now we're at line 1
     self.assertEqual(f.currentLine(),"2nd line\n")
 def testGetItemCurrentPos(self): # fold>>
     f = FileReader.FileReader(os.path.join(moduleDir(),"testfile.txt"))
     l = f[2]
     
     self.assertEqual(f.currentPos(), 2)
 def testLen(self): # fold>>
     f = FileReader.FileReader(os.path.join(moduleDir(),"testfile.txt"))
     self.assertEqual(len(f),3)
     f.close()
 def testEmptyFileRegexpNotFound(self): # fold>>
     f = FileReader.FileReader(os.path.join(moduleDir(),"emptytestfile.txt"))
     self.assertEqual(f.findRegexp('notfound'),None)
     self.assertEqual(f.isAtEOF(), True)
     self.assertEqual(f.findRegexp('notfound', backward=True), None)
     self.assertEqual(f.isAtBOF(), True)
 def testEmptyFileOccurrences(self): # fold>>
     f = FileReader.FileReader(os.path.join(moduleDir(),"emptytestfile.txt"))
     self.assertEqual(f.occurrences('not found'), [])
 def testEmptyFileCurrentPos(self): # fold>>
     f = FileReader.FileReader(os.path.join(moduleDir(),"emptytestfile.txt"))
     self.assertEqual(f.currentPos(), -1)