mirror of
https://github.com/OpenHands/OpenHands.git
synced 2025-12-26 05:48:36 +08:00
fix(frontend): Properly reflect default user analytics setting (#11702)
This commit is contained in:
parent
6e9e7547e5
commit
f8a41d3ffe
@ -46,6 +46,21 @@ describe("Content", () => {
|
||||
});
|
||||
});
|
||||
|
||||
it("should render analytics toggle as enabled when server returns null (opt-in by default)", async () => {
|
||||
const getSettingsSpy = vi.spyOn(SettingsService, "getSettings");
|
||||
getSettingsSpy.mockResolvedValue({
|
||||
...MOCK_DEFAULT_USER_SETTINGS,
|
||||
user_consents_to_analytics: null,
|
||||
});
|
||||
|
||||
renderAppSettingsScreen();
|
||||
|
||||
await waitFor(() => {
|
||||
const analytics = screen.getByTestId("enable-analytics-switch");
|
||||
expect(analytics).toBeChecked();
|
||||
});
|
||||
});
|
||||
|
||||
it("should render the language options", async () => {
|
||||
renderAppSettingsScreen();
|
||||
|
||||
|
||||
@ -125,7 +125,8 @@ function AppSettingsScreen() {
|
||||
};
|
||||
|
||||
const checkIfAnalyticsSwitchHasChanged = (checked: boolean) => {
|
||||
const currentAnalytics = !!settings?.USER_CONSENTS_TO_ANALYTICS;
|
||||
// Treat null as true since analytics is opt-in by default
|
||||
const currentAnalytics = settings?.USER_CONSENTS_TO_ANALYTICS ?? true;
|
||||
setAnalyticsSwitchHasChanged(checked !== currentAnalytics);
|
||||
};
|
||||
|
||||
@ -197,7 +198,7 @@ function AppSettingsScreen() {
|
||||
<SettingsSwitch
|
||||
testId="enable-analytics-switch"
|
||||
name="enable-analytics-switch"
|
||||
defaultIsToggled={!!settings.USER_CONSENTS_TO_ANALYTICS}
|
||||
defaultIsToggled={settings.USER_CONSENTS_TO_ANALYTICS ?? true}
|
||||
onToggle={checkIfAnalyticsSwitchHasChanged}
|
||||
>
|
||||
{t(I18nKey.ANALYTICS$SEND_ANONYMOUS_DATA)}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user