Skip to content

Phase 3: Organization create modal E2E spec #2039

@aasimsyed

Description

@aasimsyed

Subtask of #1994 (Phase 3 of E2E Create Flows epic). Depends on Phase 1 (#1995 — Create dropdown and modal page objects). Follow the same patterns as Phase 2 (#1996 — Event create modal E2E spec).

Scope

Add E2E spec for the Organization create modal (ModalCreateOrganization): open from Create dropdown, assert modal and its two steps (Organization details → Location), validation, full flow through submit, Previous button, and modal close.

Deliverables

1. Spec file

  • Add frontend/test-e2e/specs/all/create-flows/organization-create-modal.spec.ts.
  • beforeEach: Navigate to a page where sidebar is visible (e.g. /en or /home); use default global storage state (signed-in); open left sidebar (newSidebarLeft(page), sidebarLeft.open()); open Create dropdown and click New organization (newCreateDropdown(page), createDropdown.clickNewOrganization()). Use newCreateOrganizationModal(page) in tests as needed.

2. Test cases

  • Modal opens — After Create → New organization, assert modal-ModalCreateOrganization visible and heading for “Create a New Organization” (or i18n via getEnglishText("i18n.components.modal_create_organization.create_new_organization")).
  • Step 1 — Organization details validation — Leave name or description empty; click Next step; assert validation messages and modal stays open.
  • Step 1 → 2 — Details filled — Fill name and description; click Next step; assert step 2 (Location: country, city) visible.
  • Full flow — Organization details → Location (select country and city per modal UX) → Submit. Assert modal closes; optionally assert no error or success toast.
  • Previous button — From step 2, click Previous; assert step 1 visible with data retained.
  • Modal close — Open modal, click data-testid="modal-close-button"; assert modal hidden.

3. Notes

  • Mirror locator and interaction style from event-create-modal.spec.ts and CreateOrganizationModal (frontend/test-e2e/component-objects/CreateOrganizationModal.ts).
  • Use fixed locale (e.g. en) and getEnglishText() for heading and button assertions.

Metadata

Metadata

Labels

frontendRelates to the project frontendtypescriptRelates to TypeScript code

Type

Projects

Status

Todo

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions