"""Utility Functions for Split.io Feature Flags.""" from oto import status as http_status from pythonfeatures import pythonfeatures from pythonfeatures.constants import split as split_constants def is_feature_enabled(feature, request_context): """Check if a feature flag is enabled. Args: feature (str): Feature to check request_context: Flask request context Returns: bool """ feature_response = pythonfeatures.get_single_feature( feature, request_context) message = ( feature_response.message if feature_response.status == http_status.OK else 'fetch_failed' ) return message == split_constants.FEATURE_ENABLED