def test_decontracted(self): """ Test decontracting of basis """ # Check that s and p are split upon decontraction self.assertEqual(len(self.basis.decontracted()), 11) # Check that decontraction removes duplicates basis2 = Basis('C', [self.bfs, self.bfp, self.bfsp, self.bfs, self.bfp, self.bfsp]) self.assertEqual(self.basis.decontracted(), basis2.decontracted())
def test_decontracted(self): """ Test decontracting of basis """ # Check that s and p are split upon decontraction self.assertEqual(len(self.basis.decontracted()), 11) # Check that decontraction removes duplicates basis2 = Basis( 'C', [self.bfs, self.bfp, self.bfsp, self.bfs, self.bfp, self.bfsp]) self.assertEqual(self.basis.decontracted(), basis2.decontracted())
class TestBasis(unittest.TestCase): """Tests a basis, which contains BasisFunctions""" def setUp(self): self.bfs = BasisFunction('S', [1, 2], [0.5, 0.5]) self.bfp = BasisFunction('P', [0.01, 0.2, 1], [0.3, 0.4, 0.3]) self.bfsp = BasisFunction('SP', [0.1, 0.4, 3], [[0.2, 0.3, 0.5], [0.1, 0.3, 0.6]]) self.basis = Basis('C', [self.bfs, self.bfp, self.bfsp]) def test_lengetsetdeleq(self): """Test __len__, __getitem__ and __setitem__, __delitem__, __eq__""" self.assertEqual(3, len(self.basis)) bf = BasisFunction('F', [4, 9], [0.1, 0.9]) self.basis[0] = bf self.assertEqual(bf, self.basis[0]) self.assertRaises(SyntaxError, self.basis.__setitem__, 0, 1) del self.basis[2] self.assertRaises(IndexError, self.basis.__getitem__, 2) basis = Basis('C', [self.bfsp]) basis2 = Basis('C', [self.bfsp]) self.assertEqual(basis, basis2) def test_reprstrprint(self): """Test print""" c_gamess = '''C S 2 1 1.0000000 0.5000000 2 2.0000000 0.5000000 P 3 1 0.0100000 0.3000000 2 0.2000000 0.4000000 3 1.0000000 0.3000000 SP 3 1 0.1000000 0.2000000 0.1000000 2 0.4000000 0.3000000 0.3000000 3 3.0000000 0.5000000 0.6000000 ''' c_gaussian94 = '''C 0 S 2 1.0000000 0.5000000 2.0000000 0.5000000 P 3 0.0100000 0.3000000 0.2000000 0.4000000 1.0000000 0.3000000 SP 3 0.1000000 0.2000000 0.1000000 0.4000000 0.3000000 0.3000000 3.0000000 0.5000000 0.6000000 ''' self.assertEqual('<Basis C 3>', repr(self.basis)) self.assertEqual(c_gaussian94, str(self.basis)) self.assertEqual(c_gamess, self.basis.print('gamess')) def test_decontracted(self): """ Test decontracting of basis """ # Check that s and p are split upon decontraction self.assertEqual(len(self.basis.decontracted()), 11) # Check that decontraction removes duplicates basis2 = Basis( 'C', [self.bfs, self.bfp, self.bfsp, self.bfs, self.bfp, self.bfsp]) self.assertEqual(self.basis.decontracted(), basis2.decontracted())
class TestBasis(unittest.TestCase): """Tests a basis, which contains BasisFunctions""" def setUp(self): self.bfs = BasisFunction('S', [1, 2], [0.5, 0.5]) self.bfp = BasisFunction('P', [0.01, 0.2, 1], [0.3, 0.4, 0.3]) self.bfsp = BasisFunction('SP', [0.1, 0.4, 3], [[0.2, 0.3, 0.5], [0.1, 0.3, 0.6]]) self.basis = Basis('C', [self.bfs, self.bfp, self.bfsp]) def test_lengetsetdeleq(self): """Test __len__, __getitem__ and __setitem__, __delitem__, __eq__""" self.assertEqual(3, len(self.basis)) bf = BasisFunction('F', [4, 9], [0.1, 0.9]) self.basis[0] = bf self.assertEqual(bf, self.basis[0]) self.assertRaises(SyntaxError, self.basis.__setitem__, 0, 1) del self.basis[2] self.assertRaises(IndexError, self.basis.__getitem__, 2) basis = Basis('C', [self.bfsp]) basis2 = Basis('C', [self.bfsp]) self.assertEqual(basis, basis2) def test_reprstrprint(self): """Test print""" c_gamess = '''C S 2 1 1.0000000 0.5000000 2 2.0000000 0.5000000 P 3 1 0.0100000 0.3000000 2 0.2000000 0.4000000 3 1.0000000 0.3000000 SP 3 1 0.1000000 0.2000000 0.1000000 2 0.4000000 0.3000000 0.3000000 3 3.0000000 0.5000000 0.6000000 ''' c_gaussian94 = '''C 0 S 2 1.0000000 0.5000000 2.0000000 0.5000000 P 3 0.0100000 0.3000000 0.2000000 0.4000000 1.0000000 0.3000000 SP 3 0.1000000 0.2000000 0.1000000 0.4000000 0.3000000 0.3000000 3.0000000 0.5000000 0.6000000 ''' self.assertEqual('<Basis C 3>', repr(self.basis)) self.assertEqual(c_gaussian94, str(self.basis)) self.assertEqual(c_gamess, self.basis.print('gamess')) def test_decontracted(self): """ Test decontracting of basis """ # Check that s and p are split upon decontraction self.assertEqual(len(self.basis.decontracted()), 11) # Check that decontraction removes duplicates basis2 = Basis('C', [self.bfs, self.bfp, self.bfsp, self.bfs, self.bfp, self.bfsp]) self.assertEqual(self.basis.decontracted(), basis2.decontracted())