fix(web): DomainsPage показывает ошибки привязки шаблона и удаления
This commit is contained in:
@@ -80,6 +80,19 @@ test("привязка шаблона в строке домена вызыва
|
|||||||
await waitFor(() => expect(setTemplateSpy).toHaveBeenCalledWith("d1", "t1"))
|
await waitFor(() => expect(setTemplateSpy).toHaveBeenCalledWith("d1", "t1"))
|
||||||
})
|
})
|
||||||
|
|
||||||
|
test("ошибка привязки шаблона отображается пользователю", async () => {
|
||||||
|
vi.spyOn(api, "setDomainTemplate").mockRejectedValue(new Error("Не удалось привязать шаблон"))
|
||||||
|
const user = userEvent.setup()
|
||||||
|
renderPage()
|
||||||
|
|
||||||
|
await screen.findByText("example.com.")
|
||||||
|
|
||||||
|
await user.click(screen.getByRole("combobox", { name: /example\.com\./i }))
|
||||||
|
await user.click(await screen.findByRole("option", { name: /^standard$/i }))
|
||||||
|
|
||||||
|
expect(await screen.findByRole("alert")).toHaveTextContent("Не удалось привязать шаблон")
|
||||||
|
})
|
||||||
|
|
||||||
test("пустое состояние при отсутствии доменов", async () => {
|
test("пустое состояние при отсутствии доменов", async () => {
|
||||||
vi.spyOn(api, "listDomains").mockResolvedValue([])
|
vi.spyOn(api, "listDomains").mockResolvedValue([])
|
||||||
renderPage()
|
renderPage()
|
||||||
|
|||||||
@@ -111,6 +111,17 @@ export function DomainsPage() {
|
|||||||
)}
|
)}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
{setTemplate.isError && (
|
||||||
|
<span role="alert" className="font-dns text-xs text-destructive">
|
||||||
|
{setTemplate.error?.message}
|
||||||
|
</span>
|
||||||
|
)}
|
||||||
|
{deleteDomain.isError && (
|
||||||
|
<span role="alert" className="font-dns text-xs text-destructive">
|
||||||
|
{deleteDomain.error?.message}
|
||||||
|
</span>
|
||||||
|
)}
|
||||||
|
|
||||||
{domainList.length === 0 ? (
|
{domainList.length === 0 ? (
|
||||||
<div className="flex flex-col items-center gap-2 rounded-xl border border-dashed border-border px-4 py-12 text-center text-sm text-muted-foreground">
|
<div className="flex flex-col items-center gap-2 rounded-xl border border-dashed border-border px-4 py-12 text-center text-sm text-muted-foreground">
|
||||||
<Inbox className="size-6" strokeWidth={1.5} />
|
<Inbox className="size-6" strokeWidth={1.5} />
|
||||||
|
|||||||
Reference in New Issue
Block a user