tests/test-rust-discovery.py
changeset 42697 a7f1a0b3f461
parent 42218 1b0be75cb61f
child 42752 5154701a5413
equal deleted inserted replaced
42696:36c692eb28d3 42697:a7f1a0b3f461
     1 from __future__ import absolute_import
     1 from __future__ import absolute_import
     2 import unittest
     2 import unittest
     3 
     3 
     4 try:
     4 from mercurial import policy
     5     from mercurial import rustext
     5 
     6     rustext.__name__  # trigger immediate actual import
     6 PartialDiscovery = policy.importrust('discovery', member='PartialDiscovery')
     7 except ImportError:
       
     8     rustext = None
       
     9 else:
       
    10     # this would fail already without appropriate ancestor.__package__
       
    11     from mercurial.rustext.discovery import (
       
    12         PartialDiscovery,
       
    13     )
       
    14 
     7 
    15 try:
     8 try:
    16     from mercurial.cext import parsers as cparsers
     9     from mercurial.cext import parsers as cparsers
    17 except ImportError:
    10 except ImportError:
    18     cparsers = None
    11     cparsers = None
    37     b'\xb6\r\x98B\xcb\x07\xbd`\x8f\x92\xd9\xc4\x84\xbdK\x00\x00\x00'
    30     b'\xb6\r\x98B\xcb\x07\xbd`\x8f\x92\xd9\xc4\x84\xbdK\x00\x00\x00'
    38     b'\x00\x00\x00\x00\x00\x00\x00\x00\x00'
    31     b'\x00\x00\x00\x00\x00\x00\x00\x00\x00'
    39     )
    32     )
    40 
    33 
    41 
    34 
    42 @unittest.skipIf(rustext is None or cparsers is None,
    35 @unittest.skipIf(PartialDiscovery is None or cparsers is None,
    43                  "rustext or the C Extension parsers module "
    36                  "rustext or the C Extension parsers module "
    44                  "discovery relies on is not available")
    37                  "discovery relies on is not available")
    45 class rustdiscoverytest(unittest.TestCase):
    38 class rustdiscoverytest(unittest.TestCase):
    46     """Test the correctness of binding to Rust code.
    39     """Test the correctness of binding to Rust code.
    47 
    40