def test_5ala_3_hop(self):
      """ Regression test to make sure if only one basis
          set is specified we get the correct input file
          FMO with HOP
      """
      filename = "temp.inp"
      otherfile = self.fixtures + "/5ala_3_hop.fixture"
      molecule = fileToMol("tests/5ala.xyz")
      fragmentation = Fragmentation(molecule)
      fragmentation.setFMOHOPFragmentation()
      fragmentation.setQMBasis('3-21G')
      fragmentation.beginFragmentation()
      fragmentation.doFragmentation()
      fragmentation.finishFragmentation()
      directories = {'share':'share'}
      gamessfmo = GamessFMO(fragmentation, directories)
      gamessfmo.setCentralFragmentID(1)
      gamessfmo.setBoundariesFromString("1.0")
      gamessfmo.setup()
      gamessfmo.writeFile(filename)
      generated = ReadStringListFromFile(filename)
      fixture = ReadStringListFromFile(otherfile)

      self.assertEqual(len(generated), len(fixture))
      for i in range(len(fixture)):
        self.assertEqual(generated[i], fixture[i])

      self.delete_file(filename)
    def test_5ala_3_hop(self):
        """ Correct input for HOP with one basis """
        filename = "temp.inp"
        otherfile = self.fixtures + "/5ala_3_hop.fixture"
        molecule = fileToMol("tests/5ala.xyz")
        fragmentation = Fragmentation(molecule, defaults=FragItDataFMO)
        fragmentation.setFMOHOPFragmentation()
        fragmentation.setQMBasis('3-21G')
        fragmentation.beginFragmentation()
        fragmentation.doFragmentation()
        fragmentation.finishFragmentation()
        directories = {'share': 'share'}
        gamessfmo = GamessFMO(fragmentation, directories)
        gamessfmo.setCentralFragmentID(1)
        gamessfmo.setBoundariesFromString("1.0")
        gamessfmo.setup()
        gamessfmo.writeFile(filename)
        generated = ReadStringListFromFile(filename)
        fixture = ReadStringListFromFile(otherfile)

        self.assertEqual(len(generated), len(fixture))
        for i in range(len(fixture)):
            self.assertEqual(generated[i], fixture[i])

        self.delete_file(filename)
    def test_5ala_1_hop(self):
      filename = "temp.inp"
      otherfile = self.fixtures + "/5ala_1_hop.fixture"
      molecule = fileToMol("tests/5ala.xyz")
      fragmentation = Fragmentation(molecule)
      fragmentation.setFMOHOPFragmentation()
      fragmentation.beginFragmentation()
      fragmentation.doFragmentation()
      fragmentation.finishFragmentation()
      directories = {'share':'share'}
      gamessfmo = GamessFMO(fragmentation, directories)
      gamessfmo.setup()
      gamessfmo.writeFile(filename)
      generated = ReadStringListFromFile(filename)
      fixture = ReadStringListFromFile(otherfile)

      self.assertEqual(len(generated), len(fixture))
      for i in range(len(fixture)):
        self.assertEqual(generated[i], fixture[i])

      self.delete_file(filename)
    def test_5ala_1_hop(self):
        filename = "temp.inp"
        otherfile = self.fixtures + "/5ala_1_hop.fixture"
        molecule = fileToMol("tests/5ala.xyz")
        fragmentation = Fragmentation(molecule, defaults=FragItDataFMO)
        fragmentation.setFMOHOPFragmentation()
        fragmentation.beginFragmentation()
        fragmentation.doFragmentation()
        fragmentation.finishFragmentation()
        directories = {'share': 'share'}
        gamessfmo = GamessFMO(fragmentation, directories)
        gamessfmo.setup()
        gamessfmo.writeFile(filename)
        generated = ReadStringListFromFile(filename)
        fixture = ReadStringListFromFile(otherfile)

        self.assertEqual(len(generated), len(fixture))
        for i in range(len(fixture)):
            self.assertEqual(generated[i], fixture[i])

        self.delete_file(filename)