Ejemplo n.º 1
0
 def test_formula_balance_subgroups_cancel_out(self):
     f1, f2 = Formula.balance(Formula.parse('H2(CH2)n'),
                              Formula.parse('CH3O(CH2)n'))
     self.assertEqual(f1, Formula({
         Atom('C'): 1,
         Atom('H'): 1,
         Atom('O'): 1
     }))
     self.assertEqual(f2, Formula())
Ejemplo n.º 2
0
 def test_formula_balance_missing_on_both_sides(self):
     f1, f2 = Formula.balance(
         Formula.parse('C3H6OH'), Formula.parse('CH6O2'))
     self.assertEqual(f1, Formula({Atom.O: 1}))
     self.assertEqual(f2, Formula({Atom.C: 2, Atom.H: 1}))
Ejemplo n.º 3
0
 def test_formula_balance_missing_on_one_side(self):
     f1, f2 = Formula.balance(Formula.parse('H2O'), Formula.parse('OH'))
     self.assertEqual(f1, Formula())
     self.assertEqual(f2, Formula({Atom.H: 1}))
Ejemplo n.º 4
0
 def test_formula_balance_subgroups_cancel_out(self):
     f1, f2 = Formula.balance(Formula.parse('H2(CH2)n'), Formula.parse('CH3O(CH2)n'))
     self.assertEqual(f1, Formula({Atom('C'): 1, Atom('H'): 1, Atom('O'): 1}))
     self.assertEqual(f2, Formula())
Ejemplo n.º 5
0
 def test_formula_balance_missing_on_both_sides(self):
     f1, f2 = Formula.balance(Formula.parse('C3H6OH'), Formula.parse('CH6O2'))
     self.assertEqual(f1, Formula({Atom('O'): 1}))
     self.assertEqual(f2, Formula({Atom('C'): 2, Atom('H'): 1}))
Ejemplo n.º 6
0
 def test_formula_balance_missing_on_one_side(self):
     f1, f2 = Formula.balance(Formula.parse('H2O'), Formula.parse('OH'))
     self.assertEqual(f1, Formula())
     self.assertEqual(f2, Formula({Atom('H'): 1}))