< Summary

Information
Class: Pomodoro.Web.Pages.Settings
Assembly: Pomodoro.Web
File(s): /home/runner/work/Pomodoro/Pomodoro/src/Pomodoro.Web/Pages/Settings.razor
Line coverage
100%
Covered lines: 5
Uncovered lines: 0
Coverable lines: 5
Total lines: 34
Line coverage: 100%
Branch coverage
100%
Covered branches: 4
Total branches: 4
Branch coverage: 100%
Method coverage

Feature is only available for sponsors

Upgrade to PRO version

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity Line coverage
BuildRenderTree(...)100%44100%

File(s)

/home/runner/work/Pomodoro/Pomodoro/src/Pomodoro.Web/Pages/Settings.razor

#LineLine coverage
 1@page "/settings"
 2@inherits SettingsPageBase
 3
 4<div class="settings-page">
 5    <div class="settings-header">
 6        <h1>⚙️ Settings</h1>
 7        <p class="settings-tagline">Customize your pomodoro experience</p>
 8    </div>
 9
 10    <TimerDurationSettings Settings="@Settings" OnChanged="MarkDirty" />
 11    <PreferenceSettings Settings="@Settings" OnChanged="MarkDirty" />
 12    <AutoStartSettings Settings="@Settings" OnChanged="MarkDirty" />
 13    <DataManagementSettings IsExporting="@IsExporting"
 14                           IsImporting="@IsImporting"
 15                           IsClearing="@IsClearing"
 16                           ImportResult="@ImportResult"
 17                           OnExportJson="ExportJson"
 18                           OnImport="HandleImport"
 19                           OnConfirmClearData="ConfirmClearData" />
 20
 21    <ClearConfirmationModal IsVisible="@ShowClearConfirmation"
 22                            OnConfirm="ClearData"
 123                            OnCancel="@(() => ShowClearConfirmation = false)" />
 24
 25    <div class="settings-actions">
 26        <button class="btn-save" @onclick="HandleSave" title="Save Settings" disabled="@(!HasChanges)">✓</button>
 27        <button class="btn-reset-defaults" @onclick="ResetToDefaults" title="Reset to Defaults" disabled="@IsAtDefaults"
 28    </div>
 29
 17430    @if (ShowToast)
 1731    {
 1732        <div class="settings-toast">@(ToastMessage ?? "Settings saved successfully!")</div>
 1733    }
 34</div>