def services_required(*req_services):
 def actual_decoration(obj):
  skip_method = _get_skip_method(obj)
  avail_services = config.get_config().service_available
  for req_service in req_services:
   if (not getattr(avail_services, req_service, False)):
    obj = skip_method(obj, ('%s service is required for this test to work properly.' % req_service))
    break
  return obj
 return actual_decoration

def services_required ( * req_services ) : def actual_decoration ( obj ) : skip_method = _get_skip_method ( obj ) avail_services = config . get_config ( ) . service_available for req_service in req_services : if ( not getattr ( avail_services , req_service , False ) ) : obj = skip_method ( obj , ( '%s service is required for this test to work properly.' % req_service ) ) break return obj return actual_decoration
decorator for marking tests service requirements .