示例#1
0
    def testTokenizerMomentsOfInertia(self): # fold>>
        data = FileSnippets.momentsOfInertia()+"\n"
        writeToTestFile(data)
        tokens = Dalton.tokenizeOutFile(testFilePath())

        self.assertEqual(len(tokens), 1)
        self.assertEqual(tokens[0].__class__, Tokens.MomentsOfInertiaToken)
    def testMomentsOfInertiaTokenNotMatching(self):  # fold>>
        data = FileSnippets.momentsOfInertia()
        writeToTestFile("\n" + data)

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

        self.assertEqual(token, None)
        self.assertEqual(reader.currentPos(), start_pos)
示例#3
0
 def testTokenizer(self):  # fold>>
     data = FileSnippets.fileHeader() + "\n" + FileSnippets.centerOfMass(
     ) + "\n" + FileSnippets.isotopicMasses(
     ) + "\n" + FileSnippets.totalMass(
     ) + "\n" + FileSnippets.momentsOfInertia() + "\n"
     writeToTestFile(data)
     tokens = Dalton20.tokenizeOutFile(testFilePath())
     self.assertEqual(len(tokens), 5)
     self.assertEqual(tokens[0].__class__, Tokens.FileHeaderToken)
     self.assertEqual(tokens[1].__class__, Tokens.CenterOfMassToken)
     self.assertEqual(tokens[2].__class__, Tokens.IsotopicMassesToken)
     self.assertEqual(tokens[3].__class__, Tokens.TotalMassToken)
     self.assertEqual(tokens[4].__class__, Tokens.MomentsOfInertiaToken)
    def testMomentsOfInertiaToken(self):  # fold>>
        data = FileSnippets.momentsOfInertia()
        writeToTestFile(data)

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

        self.assertEqual(token.__class__, Tokens.MomentsOfInertiaToken)
        self.assertEqual(reader.currentPos(), start_pos + 7)

        moments = token.momentsOfInertia()
        self.assertEqual(moments[0], "1.747844")
        self.assertEqual(moments[1], "13.208584")
        self.assertEqual(moments[2], "14.956428")

        principal_axes = token.principalAxes()
        for i, j in [(0, 0), (0, 1), (1, 0), (1, 2), (2, 1), (2, 2)]:
            self.assertEqual(principal_axes[i][j], "0.000000")
        for i, j in [(0, 2), (1, 1), (0, 2)]:
            self.assertEqual(principal_axes[i][j], "1.000000")