test(13-04): add failing tests for Modal, EmptyState, Table components (RED)
This commit is contained in:
parent
569c6c7853
commit
4bdb78debf
1 changed files with 51 additions and 0 deletions
|
|
@ -346,3 +346,54 @@ func TestFormField_NoErrorWhenEmpty(t *testing.T) {
|
|||
t.Errorf("expected NO ui-form-error in output when Error is empty; got: %s", out)
|
||||
}
|
||||
}
|
||||
|
||||
// Phase 13 Plan 04 — Modal, EmptyState, Table component tests (TDD RED)
|
||||
|
||||
func TestModal_RendersBackdropAndPanel(t *testing.T) {
|
||||
out := render(t, context.Background(), Modal(ModalProps{Title: "Confirm action"}))
|
||||
for _, want := range []string{"ui-modal-backdrop", "ui-modal-panel"} {
|
||||
if !strings.Contains(out, want) {
|
||||
t.Errorf("expected %q in output; got: %s", want, out)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
func TestModal_RendersTitle(t *testing.T) {
|
||||
out := render(t, context.Background(), Modal(ModalProps{Title: "Confirm action"}))
|
||||
// Title must appear inside a heading element
|
||||
if !strings.Contains(out, "<h2>") || !strings.Contains(out, "Confirm action") {
|
||||
t.Errorf("expected <h2> with title text in output; got: %s", out)
|
||||
}
|
||||
}
|
||||
|
||||
func TestModal_NilBodyOmitted(t *testing.T) {
|
||||
out := render(t, context.Background(), Modal(ModalProps{Title: "Confirm action"}))
|
||||
if strings.Contains(out, "ui-modal-body") {
|
||||
t.Errorf("expected NO ui-modal-body when Body is nil; got: %s", out)
|
||||
}
|
||||
}
|
||||
|
||||
func TestEmptyState_RendersTitle(t *testing.T) {
|
||||
out := render(t, context.Background(), EmptyState(EmptyStateProps{Title: "Nothing here yet"}))
|
||||
for _, want := range []string{"ui-empty-state", "Nothing here yet"} {
|
||||
if !strings.Contains(out, want) {
|
||||
t.Errorf("expected %q in output; got: %s", want, out)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
func TestEmptyState_NilIconOmitted(t *testing.T) {
|
||||
out := render(t, context.Background(), EmptyState(EmptyStateProps{Title: "Nothing here yet"}))
|
||||
if strings.Contains(out, "ui-empty-state-icon") {
|
||||
t.Errorf("expected NO ui-empty-state-icon when Icon is nil; got: %s", out)
|
||||
}
|
||||
}
|
||||
|
||||
func TestTable_RendersShell(t *testing.T) {
|
||||
out := render(t, context.Background(), Table(TableProps{}))
|
||||
for _, want := range []string{"ui-table-shell", "ui-table"} {
|
||||
if !strings.Contains(out, want) {
|
||||
t.Errorf("expected %q in output; got: %s", want, out)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue