"""Test for Feature Flag util.""" from collections import namedtuple from unittest.mock import MagicMock, patch import pytest from timed_release.utils import feature_flag Response = namedtuple('Response', 'message status') @patch('timed_release.utils.feature_flag.pythonfeatures') @pytest.mark.parametrize( 'feature, response, expected', [ ('yes_please', Response('enabled', 200), True), ('i_have_this', Response('enabled', 200), True), ('no_thanks', Response('control', 200), False), ] ) def test_is_feature_enabled( features_mock, feature, response, expected): """Test checking if a feature flag is enabled.""" mocked_context = MagicMock() features_mock.get_single_feature.return_value = response result = feature_flag.is_feature_enabled(feature, mocked_context) assert result == expected features_mock.get_single_feature.assert_called_with( feature, mocked_context )