mirror of
https://github.com/mgeeky/decode-spam-headers.git
synced 2026-02-22 05:23:31 +01:00
MAESTRO: default DNS toggle off
This commit is contained in:
@@ -34,7 +34,7 @@ This phase implements the test selection panel and analysis configuration contro
|
||||
- [x] Test selector renders all 106+ tests with checkboxes
|
||||
- [x] Select All / Deselect All buttons work correctly
|
||||
- [x] Search/filter narrows visible tests by name
|
||||
- [ ] DNS resolution toggle defaults to off
|
||||
- [x] DNS resolution toggle defaults to off
|
||||
- [ ] Decode-all toggle is functional
|
||||
- [ ] All controls are keyboard accessible (Tab, Enter, Space)
|
||||
- [ ] Linting passes (`ruff check backend/`, `npx eslint src/`)
|
||||
|
||||
@@ -96,11 +96,8 @@ afterEach(() => {
|
||||
describe("AnalysisControls", () => {
|
||||
it("renders toggles with default off state", async () => {
|
||||
setupFetchMock(sampleTests);
|
||||
const config: AnalysisConfig = { testIds: [], resolve: false, decodeAll: false };
|
||||
|
||||
const { container } = render(
|
||||
<AnalysisControls config={config} onChange={() => undefined} />,
|
||||
);
|
||||
const { container } = render(<AnalysisControls onChange={() => undefined} />);
|
||||
|
||||
await act(async () => {
|
||||
await flushPromises();
|
||||
|
||||
@@ -13,10 +13,16 @@ import type { AnalysisConfig } from "../types/analysis";
|
||||
import TestSelector from "./TestSelector";
|
||||
|
||||
type AnalysisControlsProps = {
|
||||
config: AnalysisConfig;
|
||||
config?: AnalysisConfig;
|
||||
onChange: (next: AnalysisConfig) => void;
|
||||
};
|
||||
|
||||
const defaultConfig: AnalysisConfig = {
|
||||
testIds: [],
|
||||
resolve: false,
|
||||
decodeAll: false,
|
||||
};
|
||||
|
||||
const handleToggleKeyDown = (
|
||||
event: KeyboardEvent<HTMLButtonElement>,
|
||||
onToggle: () => void,
|
||||
@@ -27,7 +33,10 @@ const handleToggleKeyDown = (
|
||||
}
|
||||
};
|
||||
|
||||
export default function AnalysisControls({ config, onChange }: AnalysisControlsProps) {
|
||||
export default function AnalysisControls({
|
||||
config = defaultConfig,
|
||||
onChange,
|
||||
}: AnalysisControlsProps) {
|
||||
const updateTests = (nextTestIds: number[]) => {
|
||||
onChange({ ...config, testIds: nextTestIds });
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user