Ejemplo n.º 1
0
def color_interface_line(interface_id):
    catalog = Catalog()
    interface = catalog.interface(interface_id)
    hierarchy = [
        cl.__name__ for cl in reversed(inspect.getmro(interface))
        if cl in catalog._interfaces.values()
    ]
    hierarchy = ' > '.join(hierarchy)
    return '\033[93m%s\033[91m   (%s)\033[0m' % (interface_id, hierarchy)
Ejemplo n.º 2
0
def list_implementations():
    catalog = Catalog()

    print '==============='
    print 'Implementations'
    print '==============='

    for interface_id in catalog.interfaces():
        print color_interface_line(interface_id)
        for factory in catalog.factories(interfaces=interface_id, exclude_tags=['wralea']):
            print '  *', factory.name
        print
Ejemplo n.º 3
0
def list_implementations():
    catalog = Catalog()

    print '==============='
    print 'Implementations'
    print '==============='

    for interface_id in catalog.interfaces():
        print color_interface_line(interface_id)
        for factory in catalog.factories(interfaces=interface_id,
                                         exclude_tags=['wralea']):
            print '  *', factory.name
        print
Ejemplo n.º 4
0
def list_interfaces():
    catalog = Catalog()

    print '=========='
    print 'Interfaces'
    print '=========='

    for interface_id in sorted(catalog.interfaces()):
        interface = catalog.interface(interface_id)
        print color_interface_line(interface_id)
        print '       defined in:', interface.__module__
        print
    print
Ejemplo n.º 5
0
def list_interfaces():
    catalog = Catalog()

    print '=========='
    print 'Interfaces'
    print '=========='

    for interface_id in sorted(catalog.interfaces()):
        interface = catalog.interface(interface_id)
        print color_interface_line(interface_id)
        print '       defined in:', interface.__module__
        print
    print
Ejemplo n.º 6
0
def color_interface_line(interface_id):
        catalog = Catalog()
        interface = catalog.interface(interface_id)
        hierarchy = [cl.__name__ for cl in reversed(inspect.getmro(interface)) if cl in catalog._interfaces.values()]
        hierarchy = ' > '.join(hierarchy)
        return '\033[93m%s\033[91m   (%s)\033[0m' % (interface_id, hierarchy)
Ejemplo n.º 7
0
from openalea.oalab.legacy.catalog import Catalog

catalog = Catalog()

def test_services():
 
    service1 = catalog.service(name='XyzHandler')
    service2 = catalog.service(name='XyzHandler')
 
    assert service1 is service2
    assert hasattr(service1, 'read')
    assert hasattr(service1, 'write')


def test_get_factories():

    interfaces = list(catalog.interfaces())
    assert 'IXyzReader' in interfaces
    assert 'IXyzWriter' in interfaces

    factories = catalog.factories(tags=['plugin'])
    names = [factory.name for factory in factories]
    assert 'XyzHandler' in names

    xyzhandlers = catalog.factories(name='XyzHandler')
    assert len(xyzhandlers) == 1
    xyzhandler = catalog.factory(name='XyzHandler')
    assert xyzhandler == xyzhandlers[0]


    interface_name = 'IXyzReader'