''' Test package for ordr2.resources ''' import pytest def test_base_resource_init(): ''' test __init__ function of base resource ''' from ordr2.resources import BaseResource, RootResource root = RootResource('request object') resource = BaseResource('resource name', root) assert resource.__name__ == 'resource name' assert resource.__parent__ == root assert resource.request == 'request object' @pytest.mark.parametrize( 'segment', [ 'known', pytest.mark.xfail('unknown', raises=KeyError) ] ) def test_base_resource_getitem(segment): ''' test the __getitem__ function of base resource ''' from ordr2.resources import BaseResource, RootResource root = RootResource('request object') root.nodes = {'known': BaseResource} resource = root[segment] assert resource.__name__ == segment assert resource.__parent__ == root assert resource.request == 'request object' def test_root_resource_init(): ''' test __init__ function of root resource ''' from ordr2.resources import RootResource resource = RootResource('request object') assert resource.__name__ is None assert resource.__parent__ is None assert resource.request == 'request object'