+ def test_subs(self):
+ self.assertEqual(self.x.subs('x', 3), 3)
+ self.assertEqual(self.x.subs('x', self.x), self.x)
+ self.assertEqual(self.x.subs('x', self.y), self.y)
+ self.assertEqual(self.x.subs('x', self.x + self.y), self.x + self.y)
+ self.assertEqual(self.x.subs('y', 3), self.x)
+ self.assertEqual(self.pi.subs('x', 3), self.pi)
+ self.assertEqual(self.expr.subs('x', -3), -2 * self.y)
+ self.assertEqual(self.expr.subs([('x', self.y), ('y', self.x)]), 3 - self.x)
+ self.assertEqual(self.expr.subs({'x': self.z, 'y': self.z}), 3 - self.z)
+ self.assertEqual(self.expr.subs({self.x: self.z, self.y: self.z}), 3 - self.z)
+