Skip to content

Commit 540444f

Browse files
committed
Lock LongBridge profile status matrix in tests
1 parent bf0f414 commit 540444f

1 file changed

Lines changed: 31 additions & 0 deletions

File tree

tests/test_runtime_config_support.py

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@
2424
US_EQUITY_DOMAIN,
2525
get_eligible_profiles_for_platform,
2626
get_platform_profile_matrix,
27+
get_platform_profile_status_matrix,
2728
get_supported_profiles_for_platform,
2829
)
2930

@@ -103,6 +104,36 @@ def test_platform_profile_matrix_marks_default(self):
103104
self.assertEqual(by_profile[DEFAULT_STRATEGY_PROFILE]["display_name"], "SOXL/SOXX Semiconductor Trend Income")
104105
self.assertTrue(by_profile[DEFAULT_STRATEGY_PROFILE]["is_default"])
105106

107+
def test_platform_profile_status_matrix_matches_current_longbridge_rollout(self):
108+
rows = get_platform_profile_status_matrix()
109+
by_profile = {row["canonical_profile"]: row for row in rows}
110+
111+
self.assertEqual(
112+
set(by_profile),
113+
{
114+
"hybrid_growth_income",
115+
"semiconductor_rotation_income",
116+
"tech_pullback_cash_buffer",
117+
},
118+
)
119+
self.assertEqual(
120+
by_profile["semiconductor_rotation_income"],
121+
{
122+
"canonical_profile": "semiconductor_rotation_income",
123+
"display_name": "SOXL/SOXX Semiconductor Trend Income",
124+
"domain": "us_equity",
125+
"eligible": True,
126+
"enabled": True,
127+
"is_default": True,
128+
"is_rollback": True,
129+
"platform": "longbridge",
130+
},
131+
)
132+
self.assertEqual(by_profile["hybrid_growth_income"]["display_name"], "TQQQ Growth Income")
133+
self.assertTrue(by_profile["tech_pullback_cash_buffer"]["eligible"])
134+
self.assertTrue(by_profile["tech_pullback_cash_buffer"]["enabled"])
135+
self.assertEqual(by_profile["tech_pullback_cash_buffer"]["display_name"], "QQQ Tech Enhancement")
136+
106137
def test_loads_feature_snapshot_env_for_tech_profile(self):
107138
with patch.dict(
108139
os.environ,

0 commit comments

Comments
 (0)