def test_and(self):
     self.assertEqual(true, _and(true)(true))
     self.assertEqual(false, _and(false)(false))
     self.assertEqual(false, _and(true)(false))
     self.assertEqual(false, _and(false)(true))
     self.assertEqual(1, cond(lambda :1)(lambda :2)(_and(true)(true)))
     self.assertEqual(2, cond(lambda :1)(lambda :2)(_and(false)(true)))
 def test_not(self):
     self.assertEqual(1, cond(lambda :1)(lambda :2)(_not(false)))
     self.assertEqual(2, cond(lambda :1)(lambda :2)(_not(true)))