feat(FN-2970): merge fusion/fn-2970
- CSS: fix margin on the node routing description in SettingsModal (`SettingsModal.css`) - Dashboard: add CSS regression test for node routing description alignment (`SettingsModalNodeRouting.test.tsx`) - Engine: update node routing policy and scheduler logic for improved routing behavior (`scheduler.ts`) - Engine: update node routing policy tests and scheduler routing tests to cover new behavior Commits merged: - test(FN-2970): add CSS regression test for node routing description - fix(FN-2970): fix settings node routing description margin - feat(FN-2956): merge fusion/fn-2956 Files changed: .../dashboard/app/components/SettingsModal.css | 11 +++++++++- .../__tests__/SettingsModalNodeRouting.test.tsx | 12 +++++++++-- .../src/__tests__/node-routing-policy.test.ts | 25 +++++++++++++++++++--- .../src/__tests__/scheduler-node-routing.test.ts | 18 ++++++++-------- packages/engine/src/scheduler.ts | 8 ++++--- 5 files changed, 56 insertions(+), 18 deletions(-) Fusion-Task-Id: FN-2970
This commit is contained in:
@@ -330,6 +330,15 @@
|
|||||||
margin-top: var(--space-xl);
|
margin-top: var(--space-xl);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.settings-section-description {
|
||||||
|
margin: 0;
|
||||||
|
padding: 0 var(--space-xl);
|
||||||
|
margin-bottom: var(--space-sm);
|
||||||
|
color: var(--text-muted);
|
||||||
|
font-size: 13px;
|
||||||
|
line-height: 1.5;
|
||||||
|
}
|
||||||
|
|
||||||
.settings-plugins-subsection-toggle {
|
.settings-plugins-subsection-toggle {
|
||||||
display: inline-flex;
|
display: inline-flex;
|
||||||
gap: var(--space-xs);
|
gap: var(--space-xs);
|
||||||
@@ -1548,7 +1557,7 @@
|
|||||||
border: 1px solid var(--border);
|
border: 1px solid var(--border);
|
||||||
border-radius: var(--radius-md);
|
border-radius: var(--radius-md);
|
||||||
padding: var(--space-md) var(--space-lg);
|
padding: var(--space-md) var(--space-lg);
|
||||||
margin-top: var(--space-lg);
|
margin-top: var(--space-sm);
|
||||||
color: var(--text-muted);
|
color: var(--text-muted);
|
||||||
font-size: 13px;
|
font-size: 13px;
|
||||||
line-height: 1.5;
|
line-height: 1.5;
|
||||||
|
|||||||
@@ -244,9 +244,17 @@ describe("SettingsModal Node Routing section", () => {
|
|||||||
expect(screen.queryByLabelText("Unavailable Node Policy")).not.toBeInTheDocument();
|
expect(screen.queryByLabelText("Unavailable Node Policy")).not.toBeInTheDocument();
|
||||||
});
|
});
|
||||||
|
|
||||||
it("shows informational note", async () => {
|
it("applies description and note classes for node routing spacing", async () => {
|
||||||
renderModal();
|
renderModal();
|
||||||
await openNodeRouting();
|
await openNodeRouting();
|
||||||
expect(screen.getByText(/These settings apply at the project level/)).toBeInTheDocument();
|
|
||||||
|
const descriptionText = screen.getByText(/Configure how tasks are routed to execution nodes/);
|
||||||
|
const noteText = screen.getByText(/These settings apply at the project level/);
|
||||||
|
|
||||||
|
expect(descriptionText).toBeInTheDocument();
|
||||||
|
expect(noteText).toBeInTheDocument();
|
||||||
|
|
||||||
|
expect(descriptionText.closest("p")).toHaveClass("settings-section-description");
|
||||||
|
expect(noteText.closest("p")).toHaveClass("settings-node-routing-note");
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|||||||
Reference in New Issue
Block a user