[web] Read subscription.features on Group Management rendering (#36168)

* [web] Read subscription.features on Group Management rendering

Fixes 'ai-toggling' not properly read on Group Management rendering, causing the Feature Controls option not being displayed in certain scenarios.

GitOrigin-RevId: 4465fea15279d650d9d231e85072f1d85f2358be
This commit is contained in:
Miguel Serrano
2026-09-17 11:47:01 +00:00
committed by Copybot
parent 588979097d
commit d20052bf3e
4 changed files with 96 additions and 1 deletions
@@ -441,5 +441,95 @@ describe('<ManagedGroupSubscriptions />', function () {
expect(screen.queryByText('Feature controls')).to.be.null
})
})
describe('AI toggling', function () {
it('renders the feature controls row when the "ai-toggling" split test is enabled and the group has the aiToggling feature', async function () {
renderWithSubscriptionDashContext(<ManagedGroupSubscriptions />, {
metaTags: [
{
name: 'ol-managedGroupSubscriptions',
value: makeSubscription({
features: {
groupSSO: false,
managedUsers: false,
aiToggling: true,
},
}),
},
{ name: 'ol-usersEmail', value: adminEmail },
{
name: 'ol-splitTestVariants',
value: { 'ai-toggling': 'enabled' },
},
],
})
await screen.findByText('Feature controls')
})
it('does not render the feature controls row when the "ai-toggling" split test is enabled but the group lacks the aiToggling feature', function () {
renderWithSubscriptionDashContext(<ManagedGroupSubscriptions />, {
metaTags: [
{
name: 'ol-managedGroupSubscriptions',
value: makeSubscription({
features: {
groupSSO: false,
managedUsers: false,
aiToggling: false,
},
}),
},
{ name: 'ol-usersEmail', value: adminEmail },
{
name: 'ol-splitTestVariants',
value: { 'ai-toggling': 'enabled' },
},
],
})
expect(screen.queryByText('Feature controls')).to.be.null
})
it('does not render the feature controls row when the group has the aiToggling feature but the "ai-toggling" split test is disabled', function () {
renderWithSubscriptionDashContext(<ManagedGroupSubscriptions />, {
metaTags: [
{
name: 'ol-managedGroupSubscriptions',
value: makeSubscription({
features: {
groupSSO: false,
managedUsers: false,
aiToggling: true,
},
}),
},
{ name: 'ol-usersEmail', value: adminEmail },
],
})
expect(screen.queryByText('Feature controls')).to.be.null
})
it('does not render the feature controls row when the user is not the group admin', function () {
renderWithSubscriptionDashContext(<ManagedGroupSubscriptions />, {
metaTags: [
{
name: 'ol-managedGroupSubscriptions',
value: makeSubscription({
features: {
groupSSO: false,
managedUsers: false,
aiToggling: true,
},
}),
},
{ name: 'ol-usersEmail', value: 'other@example.com' },
{
name: 'ol-splitTestVariants',
value: { 'ai-toggling': 'enabled' },
},
],
})
expect(screen.queryByText('Feature controls')).to.be.null
})
})
})
})