mp.c: Use implicit-conversion rules in `coerce'.
[catacomb-python] / t / t-ec.py
index 870297e..467ead5 100644 (file)
--- a/t/t-ec.py
+++ b/t/t-ec.py
@@ -178,8 +178,9 @@ class TestCurves (T.GenericTestMixin):
     me.assertEqual(Q + R, 23*P)
     me.assertEqual(Q + R.point, 23*P)
     me.assertRaises(TypeError, T.add, Q.point, R.point)
+    me.assertRaises(TypeError, T.mul, kk(1), Q)
     me.assertEqual(Q - R, 11*P)
-    me.assertEqual(P*l(17), Q)
+    #me.assertEqual(P*l(17), Q)
 
     ## Ordering.
     me.assertTrue(P == P)
@@ -201,8 +202,10 @@ class TestCurves (T.GenericTestMixin):
          .contents
     me.assertEqual(P.ec2osp(), t)
     me.assertEqual(C.WriteBuffer().putecptraw(P).contents, t)
+    me.assertEqual(C.WriteBuffer().ec2osp(P).contents, t)
     me.assertEqual(E.os2ecp(t), (P, Z0))
     me.assertEqual(C.ReadBuffer(t).getecptraw(E), P)
+    me.assertEqual(C.ReadBuffer(t).os2ecp(E), P)
     if isinstance(k, C.PrimeField): ybit = int(P.iy&1)
     else:
       try: ybit = int((P.y/P.x).value&C.GF(1))
@@ -212,7 +215,9 @@ class TestCurves (T.GenericTestMixin):
          .put(P.ix.storeb(k.noctets)) \
          .contents
     me.assertEqual(P.ec2osp(C.EC_LSB), t)
+    me.assertEqual(C.WriteBuffer().ec2osp(P, C.EC_LSB).contents, t)
     me.assertEqual(E.os2ecp(t, C.EC_LSB), (P, Z0))
+    me.assertEqual(C.ReadBuffer(t).os2ecp(E, C.EC_LSB), P)
 
     ## Curve methods.
     Q = E.find(P.x); me.assertTrue(Q == P or Q == -P)