Skip to content

Commit 11313ec

Browse files
committed
feat: move observability resolver to general purpose feature_gating_helpers
1 parent 9fc0088 commit 11313ec

3 files changed

Lines changed: 10 additions & 21 deletions

File tree

packages/google-api-core/google/api_core/observability/options.py renamed to packages/google-api-core/google/api_core/feature_gating_helpers.py

File renamed without changes.

packages/google-api-core/google/api_core/observability/__init__.py

Lines changed: 0 additions & 11 deletions
This file was deleted.

packages/google-api-core/tests/unit/observability/test_options.py renamed to packages/google-api-core/tests/unit/test_feature_gating_helpers.py

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,8 @@
1313
# limitations under the License.
1414

1515
import pytest
16-
from google.api_core.observability import options
17-
from google.api_core.observability.options import (
16+
from google.api_core import feature_gating_helpers
17+
from google.api_core.feature_gating_helpers import (
1818
_get_env_bool,
1919
_strtobool,
2020
clear_test_env_overrides,
@@ -100,7 +100,7 @@ def test_resolve_feature_flags_ga_enabled_via_env():
100100
set_test_env_override("GOOGLE_SDK_PYTHON_TRACING_ENABLED", True)
101101

102102
# Action
103-
result = options.resolve_feature_flags(
103+
result = feature_gating_helpers.resolve_feature_flags(
104104
env_var="GOOGLE_SDK_PYTHON_TRACING_ENABLED",
105105
provider_key="tracer_provider",
106106
client_options=None,
@@ -121,7 +121,7 @@ def test_resolve_feature_flags_exp_blocked_with_provider_fails_fast(exp_env_stat
121121

122122
# Action & Assertion
123123
with pytest.raises(ValueError, match="Experimental feature"):
124-
options.resolve_feature_flags(
124+
feature_gating_helpers.resolve_feature_flags(
125125
env_var="GOOGLE_SDK_EXPERIMENTAL_PYTHON_TRACING_ENABLED",
126126
provider_key="tracer_provider",
127127
client_options=client_options,
@@ -133,7 +133,7 @@ def test_resolve_feature_flags_exp_enabled_with_provider():
133133
set_test_env_override("GOOGLE_SDK_EXPERIMENTAL_PYTHON_TRACING_ENABLED", True)
134134
client_options = {"tracer_provider": object()}
135135

136-
result = options.resolve_feature_flags(
136+
result = feature_gating_helpers.resolve_feature_flags(
137137
env_var="GOOGLE_SDK_EXPERIMENTAL_PYTHON_TRACING_ENABLED",
138138
provider_key="tracer_provider",
139139
client_options=client_options,
@@ -145,7 +145,7 @@ def test_resolve_feature_flags_exp_enabled_without_provider():
145145
"""Verify that experimental feature is enabled if the experimental environment variable is enabled and NO provider is provided."""
146146
set_test_env_override("GOOGLE_SDK_EXPERIMENTAL_PYTHON_TRACING_ENABLED", True)
147147

148-
result = options.resolve_feature_flags(
148+
result = feature_gating_helpers.resolve_feature_flags(
149149
env_var="GOOGLE_SDK_EXPERIMENTAL_PYTHON_TRACING_ENABLED",
150150
provider_key="tracer_provider",
151151
client_options=None,
@@ -157,7 +157,7 @@ def test_resolve_feature_flags_exp_disabled_without_provider():
157157
"""Verify that experimental feature is disabled if the experimental environment variable is disabled and NO provider is provided."""
158158
set_test_env_override("GOOGLE_SDK_EXPERIMENTAL_PYTHON_TRACING_ENABLED", False)
159159

160-
result = options.resolve_feature_flags(
160+
result = feature_gating_helpers.resolve_feature_flags(
161161
env_var="GOOGLE_SDK_EXPERIMENTAL_PYTHON_TRACING_ENABLED",
162162
provider_key="tracer_provider",
163163
client_options=None,
@@ -171,7 +171,7 @@ def test_resolve_feature_flags_ga_enabled_via_provider():
171171
set_test_env_override("GOOGLE_SDK_PYTHON_TRACING_ENABLED", False)
172172
client_options = {"tracer_provider": object()}
173173

174-
result = options.resolve_feature_flags(
174+
result = feature_gating_helpers.resolve_feature_flags(
175175
env_var="GOOGLE_SDK_PYTHON_TRACING_ENABLED",
176176
provider_key="tracer_provider",
177177
client_options=client_options,
@@ -185,7 +185,7 @@ def test_resolve_feature_flags_ga_enabled_via_provider():
185185
def test_resolve_feature_flags_ga_fallback_to_false(env_val):
186186
"""Verify that a GA feature is disabled if neither a provider is provided nor the environment variable is enabled."""
187187
set_test_env_override("GOOGLE_SDK_PYTHON_TRACING_ENABLED", env_val)
188-
result = options.resolve_feature_flags(
188+
result = feature_gating_helpers.resolve_feature_flags(
189189
env_var="GOOGLE_SDK_PYTHON_TRACING_ENABLED",
190190
provider_key="tracer_provider",
191191
client_options=None,
@@ -209,7 +209,7 @@ def __init__(self):
209209
def test_resolve_feature_flags_options_without_key(client_options):
210210
"""Verify behavior when client_options is present but missing the provider key."""
211211
# GA Path: should fall through to env var / fallback
212-
result = options.resolve_feature_flags(
212+
result = feature_gating_helpers.resolve_feature_flags(
213213
env_var="GOOGLE_SDK_PYTHON_TRACING_ENABLED",
214214
provider_key="tracer_provider",
215215
client_options=client_options,

0 commit comments

Comments
 (0)