@nextsparkjs/theme-default 0.1.0-beta.20 → 0.1.0-beta.22
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/tests/cypress/e2e/_devtools/access.bdd.md +262 -0
- package/tests/cypress/e2e/_devtools/access.cy.ts +171 -0
- package/tests/cypress/e2e/_devtools/navigation.bdd.md +261 -0
- package/tests/cypress/e2e/_devtools/navigation.cy.ts +157 -0
- package/tests/cypress/e2e/_devtools/pages.bdd.md +303 -0
- package/tests/cypress/e2e/_devtools/pages.cy.ts +184 -0
- package/tests/cypress/e2e/_docs/README.md +215 -0
- package/tests/cypress/e2e/_docs/tutorials/sector7-superadmin-teams.narration.json +155 -0
- package/tests/cypress/e2e/_docs/tutorials/sector7-superadmin.cy.ts +390 -0
- package/tests/cypress/e2e/_docs/tutorials/teams-system.doc.cy.ts +349 -0
- package/tests/cypress/e2e/_docs/tutorials/teams-system.narration.json +165 -0
- package/tests/cypress/e2e/_selectors/auth.cy.ts +306 -0
- package/tests/cypress/e2e/_selectors/billing.cy.ts +89 -0
- package/tests/cypress/e2e/_selectors/dashboard-mobile.cy.ts +113 -0
- package/tests/cypress/e2e/_selectors/dashboard-navigation.cy.ts +89 -0
- package/tests/cypress/e2e/_selectors/dashboard-sidebar.cy.ts +60 -0
- package/tests/cypress/e2e/_selectors/dashboard-topnav.cy.ts +146 -0
- package/tests/cypress/e2e/_selectors/devtools.cy.ts +210 -0
- package/tests/cypress/e2e/_selectors/global-search.cy.ts +88 -0
- package/tests/cypress/e2e/_selectors/pages-editor.cy.ts +179 -0
- package/tests/cypress/e2e/_selectors/posts-editor.cy.ts +282 -0
- package/tests/cypress/e2e/_selectors/public.cy.ts +112 -0
- package/tests/cypress/e2e/_selectors/settings-api-keys.cy.ts +228 -0
- package/tests/cypress/e2e/_selectors/settings-billing.cy.ts +105 -0
- package/tests/cypress/e2e/_selectors/settings-layout.cy.ts +119 -0
- package/tests/cypress/e2e/_selectors/settings-password.cy.ts +71 -0
- package/tests/cypress/e2e/_selectors/settings-profile.cy.ts +82 -0
- package/tests/cypress/e2e/_selectors/settings-teams.cy.ts +68 -0
- package/tests/cypress/e2e/_selectors/superadmin.cy.ts +185 -0
- package/tests/cypress/e2e/_selectors/tasks.cy.ts +242 -0
- package/tests/cypress/e2e/_selectors/taxonomies.cy.ts +126 -0
- package/tests/cypress/e2e/_selectors/teams.cy.ts +142 -0
- package/tests/cypress/e2e/_superadmin/all-teams.bdd.md +261 -0
- package/tests/cypress/e2e/_superadmin/all-teams.cy.ts +177 -0
- package/tests/cypress/e2e/_superadmin/all-users.bdd.md +406 -0
- package/tests/cypress/e2e/_superadmin/all-users.cy.ts +294 -0
- package/tests/cypress/e2e/_superadmin/dashboard.bdd.md +235 -0
- package/tests/cypress/e2e/_superadmin/dashboard.cy.ts +149 -0
- package/tests/cypress/e2e/_superadmin/subscriptions-overview.bdd.md +290 -0
- package/tests/cypress/e2e/_superadmin/subscriptions-overview.cy.ts +194 -0
- package/tests/cypress/e2e/ai/ai-usage.cy.ts +209 -0
- package/tests/cypress/e2e/ai/chat-api.cy.ts +107 -0
- package/tests/cypress/e2e/ai/guardrails.cy.ts +332 -0
- package/tests/cypress/e2e/api/billing/BillingAPIController.js +319 -0
- package/tests/cypress/e2e/api/billing/check-action.cy.ts +326 -0
- package/tests/cypress/e2e/api/billing/checkout.cy.ts +358 -0
- package/tests/cypress/e2e/api/billing/lifecycle.cy.ts +423 -0
- package/tests/cypress/e2e/api/billing/plans/README.md +345 -0
- package/tests/cypress/e2e/api/billing/plans/business.cy.ts +412 -0
- package/tests/cypress/e2e/api/billing/plans/downgrade.cy.ts +510 -0
- package/tests/cypress/e2e/api/billing/plans/fixtures/billing-plans.json +163 -0
- package/tests/cypress/e2e/api/billing/plans/free.cy.ts +500 -0
- package/tests/cypress/e2e/api/billing/plans/pro.cy.ts +497 -0
- package/tests/cypress/e2e/api/billing/plans/starter.cy.ts +342 -0
- package/tests/cypress/e2e/api/billing/portal.cy.ts +313 -0
- package/tests/cypress/e2e/api/devtools/registries.bdd.md +300 -0
- package/tests/cypress/e2e/api/devtools/registries.cy.ts +368 -0
- package/tests/cypress/e2e/api/entities/blocks-scope.cy.ts +396 -0
- package/tests/cypress/e2e/api/entities/customers-crud.cy.ts +648 -0
- package/tests/cypress/e2e/api/entities/customers-metas.cy.ts +839 -0
- package/tests/cypress/e2e/api/entities/pages-crud.cy.ts +425 -0
- package/tests/cypress/e2e/api/entities/pages-status.cy.ts +335 -0
- package/tests/cypress/e2e/api/entities/post-categories-crud.cy.ts +610 -0
- package/tests/cypress/e2e/api/entities/posts-crud.cy.ts +709 -0
- package/tests/cypress/e2e/api/entities/posts-status.cy.ts +396 -0
- package/tests/cypress/e2e/api/entities/tasks-crud.cy.ts +602 -0
- package/tests/cypress/e2e/api/entities/tasks-metas.cy.ts +878 -0
- package/tests/cypress/e2e/api/entities/users-crud.cy.ts +469 -0
- package/tests/cypress/e2e/api/entities/users-metas.cy.ts +913 -0
- package/tests/cypress/e2e/api/entities/users-security.cy.ts +375 -0
- package/tests/cypress/e2e/api/scheduled-actions/cron-endpoint.bdd.md +375 -0
- package/tests/cypress/e2e/api/scheduled-actions/cron-endpoint.cy.ts +346 -0
- package/tests/cypress/e2e/api/scheduled-actions/devtools-endpoint.bdd.md +451 -0
- package/tests/cypress/e2e/api/scheduled-actions/devtools-endpoint.cy.ts +447 -0
- package/tests/cypress/e2e/api/scheduled-actions/scheduling.bdd.md +649 -0
- package/tests/cypress/e2e/api/scheduled-actions/scheduling.cy.ts +333 -0
- package/tests/cypress/e2e/api/settings/api-keys.crud.cy.ts +923 -0
- package/tests/cypress/e2e/uat/auth/app-roles/developer-login.bdd.md +231 -0
- package/tests/cypress/e2e/uat/auth/app-roles/developer-login.cy.ts +144 -0
- package/tests/cypress/e2e/uat/auth/app-roles/superadmin-login.bdd.md +118 -0
- package/tests/cypress/e2e/uat/auth/app-roles/superadmin-login.cy.ts +84 -0
- package/tests/cypress/e2e/uat/auth/custom-roles/editor-login.bdd.md +288 -0
- package/tests/cypress/e2e/uat/auth/custom-roles/editor-login.cy.ts +188 -0
- package/tests/cypress/e2e/uat/auth/login-logout.bdd.md +160 -0
- package/tests/cypress/e2e/uat/auth/login-logout.cy.ts +116 -0
- package/tests/cypress/e2e/uat/auth/password-reset.bdd.md +289 -0
- package/tests/cypress/e2e/uat/auth/password-reset.cy.ts +200 -0
- package/tests/cypress/e2e/uat/auth/team-roles/admin-login.bdd.md +225 -0
- package/tests/cypress/e2e/uat/auth/team-roles/admin-login.cy.ts +148 -0
- package/tests/cypress/e2e/uat/auth/team-roles/member-login.bdd.md +251 -0
- package/tests/cypress/e2e/uat/auth/team-roles/member-login.cy.ts +163 -0
- package/tests/cypress/e2e/uat/auth/team-roles/owner-login.bdd.md +231 -0
- package/tests/cypress/e2e/uat/auth/team-roles/owner-login.cy.ts +141 -0
- package/tests/cypress/e2e/uat/billing/extended.bdd.md +273 -0
- package/tests/cypress/e2e/uat/billing/extended.cy.ts +209 -0
- package/tests/cypress/e2e/uat/billing/feature-gates.bdd.md +407 -0
- package/tests/cypress/e2e/uat/billing/feature-gates.cy.ts +307 -0
- package/tests/cypress/e2e/uat/billing/page.bdd.md +329 -0
- package/tests/cypress/e2e/uat/billing/page.cy.ts +250 -0
- package/tests/cypress/e2e/uat/billing/status.bdd.md +190 -0
- package/tests/cypress/e2e/uat/billing/status.cy.ts +145 -0
- package/tests/cypress/e2e/uat/billing/team-switch.bdd.md +156 -0
- package/tests/cypress/e2e/uat/billing/team-switch.cy.ts +122 -0
- package/tests/cypress/e2e/uat/billing/usage.bdd.md +218 -0
- package/tests/cypress/e2e/uat/billing/usage.cy.ts +176 -0
- package/tests/cypress/e2e/uat/blocks/hero.bdd.md +124 -0
- package/tests/cypress/e2e/uat/blocks/hero.cy.ts +56 -0
- package/tests/cypress/e2e/uat/devtools/api-tester.cy.ts +390 -0
- package/tests/cypress/e2e/uat/entities/customers/member.bdd.md +275 -0
- package/tests/cypress/e2e/uat/entities/customers/member.cy.ts +122 -0
- package/tests/cypress/e2e/uat/entities/customers/owner.bdd.md +243 -0
- package/tests/cypress/e2e/uat/entities/customers/owner.cy.ts +165 -0
- package/tests/cypress/e2e/uat/entities/pages/block-crud.bdd.md +476 -0
- package/tests/cypress/e2e/uat/entities/pages/block-crud.cy.ts +486 -0
- package/tests/cypress/e2e/uat/entities/pages/block-editor.bdd.md +460 -0
- package/tests/cypress/e2e/uat/entities/pages/block-editor.cy.ts +301 -0
- package/tests/cypress/e2e/uat/entities/pages/list.bdd.md +432 -0
- package/tests/cypress/e2e/uat/entities/pages/list.cy.ts +273 -0
- package/tests/cypress/e2e/uat/entities/pages/public-rendering.bdd.md +696 -0
- package/tests/cypress/e2e/uat/entities/pages/public-rendering.cy.ts +340 -0
- package/tests/cypress/e2e/uat/entities/posts/categories-api-aware.bdd.md +161 -0
- package/tests/cypress/e2e/uat/entities/posts/categories-api-aware.cy.ts +104 -0
- package/tests/cypress/e2e/uat/entities/posts/categories.bdd.md +375 -0
- package/tests/cypress/e2e/uat/entities/posts/categories.cy.ts +241 -0
- package/tests/cypress/e2e/uat/entities/posts/editor.bdd.md +429 -0
- package/tests/cypress/e2e/uat/entities/posts/editor.cy.ts +257 -0
- package/tests/cypress/e2e/uat/entities/posts/list.bdd.md +340 -0
- package/tests/cypress/e2e/uat/entities/posts/list.cy.ts +177 -0
- package/tests/cypress/e2e/uat/entities/posts/public.bdd.md +614 -0
- package/tests/cypress/e2e/uat/entities/posts/public.cy.ts +249 -0
- package/tests/cypress/e2e/uat/entities/tasks/member.bdd.md +222 -0
- package/tests/cypress/e2e/uat/entities/tasks/member.cy.ts +165 -0
- package/tests/cypress/e2e/uat/entities/tasks/owner.bdd.md +419 -0
- package/tests/cypress/e2e/uat/entities/tasks/owner.cy.ts +191 -0
- package/tests/cypress/e2e/uat/roles/editor-role.bdd.md +552 -0
- package/tests/cypress/e2e/uat/roles/editor-role.cy.ts +210 -0
- package/tests/cypress/e2e/uat/roles/member-restrictions.bdd.md +450 -0
- package/tests/cypress/e2e/uat/roles/member-restrictions.cy.ts +189 -0
- package/tests/cypress/e2e/uat/roles/owner-full-crud.bdd.md +530 -0
- package/tests/cypress/e2e/uat/roles/owner-full-crud.cy.ts +247 -0
- package/tests/cypress/e2e/uat/scheduled-actions/devtools-ui.bdd.md +736 -0
- package/tests/cypress/e2e/uat/scheduled-actions/devtools-ui.cy.ts +740 -0
- package/tests/cypress/e2e/uat/teams/roles-matrix.bdd.md +553 -0
- package/tests/cypress/e2e/uat/teams/roles-matrix.cy.ts +185 -0
- package/tests/cypress/e2e/uat/teams/switcher.bdd.md +1151 -0
- package/tests/cypress/e2e/uat/teams/switcher.cy.ts +497 -0
- package/tests/cypress/e2e/uat/teams/team-switcher.md +198 -0
- package/tests/cypress/fixtures/blocks.json +218 -0
- package/tests/cypress/fixtures/entities.json +78 -0
- package/tests/cypress/fixtures/page-builder.json +21 -0
- package/tests/cypress/src/components/CategoriesPOM.ts +382 -0
- package/tests/cypress/src/components/CustomersPOM.ts +439 -0
- package/tests/cypress/src/components/DevKeyringPOM.ts +160 -0
- package/tests/cypress/src/components/EntityForm.ts +375 -0
- package/tests/cypress/src/components/EntityList.ts +389 -0
- package/tests/cypress/src/components/PageBuilderPOM.ts +710 -0
- package/tests/cypress/src/components/PostEditorPOM.ts +370 -0
- package/tests/cypress/src/components/PostsListPOM.ts +223 -0
- package/tests/cypress/src/components/PublicPagePOM.ts +447 -0
- package/tests/cypress/src/components/PublicPostPOM.ts +146 -0
- package/tests/cypress/src/components/TasksPOM.ts +272 -0
- package/tests/cypress/src/components/TeamSwitcherPOM.ts +450 -0
- package/tests/cypress/src/components/index.ts +21 -0
- package/tests/cypress/src/controllers/ApiKeysAPIController.js +178 -0
- package/tests/cypress/src/controllers/BaseAPIController.js +317 -0
- package/tests/cypress/src/controllers/CustomerAPIController.js +251 -0
- package/tests/cypress/src/controllers/PagesAPIController.js +226 -0
- package/tests/cypress/src/controllers/PostsAPIController.js +250 -0
- package/tests/cypress/src/controllers/TaskAPIController.js +240 -0
- package/tests/cypress/src/controllers/UsersAPIController.js +242 -0
- package/tests/cypress/src/controllers/index.js +25 -0
- package/tests/cypress/src/core/AuthPOM.ts +450 -0
- package/tests/cypress/src/core/BasePOM.ts +86 -0
- package/tests/cypress/src/core/BlockEditorBasePOM.ts +576 -0
- package/tests/cypress/src/core/DashboardEntityPOM.ts +692 -0
- package/tests/cypress/src/core/index.ts +14 -0
- package/tests/cypress/src/entities/CustomersPOM.ts +172 -0
- package/tests/cypress/src/entities/PagesPOM.ts +137 -0
- package/tests/cypress/src/entities/PostsPOM.ts +137 -0
- package/tests/cypress/src/entities/TasksPOM.ts +176 -0
- package/tests/cypress/src/entities/index.ts +14 -0
- package/tests/cypress/src/features/BillingPOM.ts +385 -0
- package/tests/cypress/src/features/DashboardPOM.ts +245 -0
- package/tests/cypress/src/features/DevtoolsPOM.ts +739 -0
- package/tests/cypress/src/features/PageBuilderPOM.ts +263 -0
- package/tests/cypress/src/features/PostEditorPOM.ts +313 -0
- package/tests/cypress/src/features/ScheduledActionsPOM.ts +463 -0
- package/tests/cypress/src/features/SettingsPOM.ts +362 -0
- package/tests/cypress/src/features/SuperadminPOM.ts +331 -0
- package/tests/cypress/src/features/SuperadminTeamRolesPOM.ts +285 -0
- package/tests/cypress/src/features/index.ts +28 -0
- package/tests/cypress/src/helpers/ApiInterceptor.ts +177 -0
- package/tests/cypress/src/index.ts +101 -0
- package/tests/cypress/src/pages/dashboard/Dashboard.js +677 -0
- package/tests/cypress/src/pages/dashboard/DashboardPage.js +43 -0
- package/tests/cypress/src/pages/dashboard/DashboardStats.js +546 -0
- package/tests/cypress/src/pages/dashboard/index.js +6 -0
- package/tests/cypress/src/pages/index.js +5 -0
- package/tests/cypress/src/pages/public/FeaturesPage.js +28 -0
- package/tests/cypress/src/pages/public/LandingPage.js +69 -0
- package/tests/cypress/src/pages/public/PricingPage.js +33 -0
- package/tests/cypress/src/pages/public/index.js +6 -0
- package/tests/cypress/src/selectors.ts +46 -0
- package/tests/cypress/src/session-helpers.ts +500 -0
- package/tests/cypress/support/doc-commands.ts +260 -0
- package/tests/cypress/support/e2e.ts +89 -0
- package/tests/cypress.config.ts +165 -0
- package/tests/jest/components/post-header.test.tsx +377 -0
- package/tests/jest/config/role-config.test.ts +529 -0
- package/tests/jest/jest.config.ts +81 -0
- package/tests/jest/langchain/COVERAGE.md +372 -0
- package/tests/jest/langchain/guardrails.test.ts +465 -0
- package/tests/jest/langchain/streaming.test.ts +367 -0
- package/tests/jest/langchain/token-tracker.test.ts +455 -0
- package/tests/jest/langchain/tracer-callbacks.test.ts +881 -0
- package/tests/jest/langchain/tracer.test.ts +823 -0
- package/tests/jest/user-roles/role-helpers.test.ts +432 -0
- package/tests/jest/validation/categories.test.ts +429 -0
- package/tests/jest/validation/posts.test.ts +546 -0
- package/tests/tsconfig.json +15 -0
|
@@ -0,0 +1,460 @@
|
|
|
1
|
+
# Block Editor - Admin UI (Format: BDD/Gherkin - Bilingual)
|
|
2
|
+
|
|
3
|
+
> **Test File:** `block-editor.cy.ts`
|
|
4
|
+
> **Format:** Behavior-Driven Development (BDD) with Given/When/Then
|
|
5
|
+
> **Languages:** English / Spanish (side-by-side)
|
|
6
|
+
> **Total Tests:** 10
|
|
7
|
+
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
## Feature: Block Editor Interface
|
|
11
|
+
|
|
12
|
+
<table>
|
|
13
|
+
<tr>
|
|
14
|
+
<th width="50%">English</th>
|
|
15
|
+
<th width="50%">Español</th>
|
|
16
|
+
</tr>
|
|
17
|
+
<tr>
|
|
18
|
+
<td>
|
|
19
|
+
|
|
20
|
+
As an **Owner**
|
|
21
|
+
I want to **use the block editor interface**
|
|
22
|
+
So that **I can build and manage page content**
|
|
23
|
+
|
|
24
|
+
**Interface Components:**
|
|
25
|
+
- Editor loading
|
|
26
|
+
- Block picker
|
|
27
|
+
- Mode switching (Layout/Preview)
|
|
28
|
+
- Settings panel
|
|
29
|
+
- Save/publish functionality
|
|
30
|
+
|
|
31
|
+
</td>
|
|
32
|
+
<td>
|
|
33
|
+
|
|
34
|
+
Como **Owner**
|
|
35
|
+
Quiero **usar la interfaz del editor de bloques**
|
|
36
|
+
Para **construir y gestionar contenido de paginas**
|
|
37
|
+
|
|
38
|
+
**Componentes de Interfaz:**
|
|
39
|
+
- Carga del editor
|
|
40
|
+
- Selector de bloques
|
|
41
|
+
- Cambio de modo (Layout/Preview)
|
|
42
|
+
- Panel de configuracion
|
|
43
|
+
- Funcionalidad de guardar/publicar
|
|
44
|
+
|
|
45
|
+
</td>
|
|
46
|
+
</tr>
|
|
47
|
+
</table>
|
|
48
|
+
|
|
49
|
+
---
|
|
50
|
+
|
|
51
|
+
## Editor Loading
|
|
52
|
+
|
|
53
|
+
### PB-EDITOR-001: Should open editor for existing page `@smoke`
|
|
54
|
+
|
|
55
|
+
<table>
|
|
56
|
+
<tr>
|
|
57
|
+
<th width="50%">English</th>
|
|
58
|
+
<th width="50%">Español</th>
|
|
59
|
+
</tr>
|
|
60
|
+
<tr>
|
|
61
|
+
<td>
|
|
62
|
+
|
|
63
|
+
```gherkin
|
|
64
|
+
Scenario: Open editor for existing page
|
|
65
|
+
|
|
66
|
+
Given I am logged in as Owner
|
|
67
|
+
And I have created a test page via API
|
|
68
|
+
When I visit the page editor
|
|
69
|
+
And I wait for the editor to load
|
|
70
|
+
Then the editor should be visible
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
</td>
|
|
74
|
+
<td>
|
|
75
|
+
|
|
76
|
+
```gherkin
|
|
77
|
+
Scenario: Abrir editor para pagina existente
|
|
78
|
+
|
|
79
|
+
Given estoy logueado como Owner
|
|
80
|
+
And he creado una pagina de prueba via API
|
|
81
|
+
When visito el editor de paginas
|
|
82
|
+
And espero que el editor cargue
|
|
83
|
+
Then el editor deberia estar visible
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
</td>
|
|
87
|
+
</tr>
|
|
88
|
+
</table>
|
|
89
|
+
|
|
90
|
+
---
|
|
91
|
+
|
|
92
|
+
### PB-EDITOR-002: Should open new page form
|
|
93
|
+
|
|
94
|
+
<table>
|
|
95
|
+
<tr>
|
|
96
|
+
<th width="50%">English</th>
|
|
97
|
+
<th width="50%">Español</th>
|
|
98
|
+
</tr>
|
|
99
|
+
<tr>
|
|
100
|
+
<td>
|
|
101
|
+
|
|
102
|
+
```gherkin
|
|
103
|
+
Scenario: Open new page creation form
|
|
104
|
+
|
|
105
|
+
Given I am logged in as Owner
|
|
106
|
+
When I visit /dashboard/pages/create
|
|
107
|
+
Then the new page form should be visible
|
|
108
|
+
And the title input should be visible
|
|
109
|
+
And the slug input should be visible
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
</td>
|
|
113
|
+
<td>
|
|
114
|
+
|
|
115
|
+
```gherkin
|
|
116
|
+
Scenario: Abrir formulario de creacion de nueva pagina
|
|
117
|
+
|
|
118
|
+
Given estoy logueado como Owner
|
|
119
|
+
When visito /dashboard/pages/create
|
|
120
|
+
Then el formulario de nueva pagina deberia estar visible
|
|
121
|
+
And el input de titulo deberia estar visible
|
|
122
|
+
And el input de slug deberia estar visible
|
|
123
|
+
```
|
|
124
|
+
|
|
125
|
+
</td>
|
|
126
|
+
</tr>
|
|
127
|
+
</table>
|
|
128
|
+
|
|
129
|
+
---
|
|
130
|
+
|
|
131
|
+
## Block Picker
|
|
132
|
+
|
|
133
|
+
### PB-EDITOR-003: Should show block picker with available blocks `@smoke`
|
|
134
|
+
|
|
135
|
+
<table>
|
|
136
|
+
<tr>
|
|
137
|
+
<th width="50%">English</th>
|
|
138
|
+
<th width="50%">Español</th>
|
|
139
|
+
</tr>
|
|
140
|
+
<tr>
|
|
141
|
+
<td>
|
|
142
|
+
|
|
143
|
+
```gherkin
|
|
144
|
+
Scenario: Block picker shows available blocks
|
|
145
|
+
|
|
146
|
+
Given I am on the page editor
|
|
147
|
+
And I switch to Layout mode
|
|
148
|
+
Then the block picker should be visible
|
|
149
|
+
And "hero" block should be in the picker
|
|
150
|
+
And "cta-section" block should be in the picker
|
|
151
|
+
And "features-grid" block should be in the picker
|
|
152
|
+
```
|
|
153
|
+
|
|
154
|
+
</td>
|
|
155
|
+
<td>
|
|
156
|
+
|
|
157
|
+
```gherkin
|
|
158
|
+
Scenario: Selector de bloques muestra bloques disponibles
|
|
159
|
+
|
|
160
|
+
Given estoy en el editor de paginas
|
|
161
|
+
And cambio al modo Layout
|
|
162
|
+
Then el selector de bloques deberia estar visible
|
|
163
|
+
And el bloque "hero" deberia estar en el selector
|
|
164
|
+
And el bloque "cta-section" deberia estar en el selector
|
|
165
|
+
And el bloque "features-grid" deberia estar en el selector
|
|
166
|
+
```
|
|
167
|
+
|
|
168
|
+
</td>
|
|
169
|
+
</tr>
|
|
170
|
+
</table>
|
|
171
|
+
|
|
172
|
+
---
|
|
173
|
+
|
|
174
|
+
### PB-EDITOR-004: Should filter blocks by category
|
|
175
|
+
|
|
176
|
+
<table>
|
|
177
|
+
<tr>
|
|
178
|
+
<th width="50%">English</th>
|
|
179
|
+
<th width="50%">Español</th>
|
|
180
|
+
</tr>
|
|
181
|
+
<tr>
|
|
182
|
+
<td>
|
|
183
|
+
|
|
184
|
+
```gherkin
|
|
185
|
+
Scenario: Filter blocks by category
|
|
186
|
+
|
|
187
|
+
Given I am on the page editor in Layout mode
|
|
188
|
+
When I click the "marketing" category tab
|
|
189
|
+
Then the block picker should show CTA blocks
|
|
190
|
+
```
|
|
191
|
+
|
|
192
|
+
</td>
|
|
193
|
+
<td>
|
|
194
|
+
|
|
195
|
+
```gherkin
|
|
196
|
+
Scenario: Filtrar bloques por categoria
|
|
197
|
+
|
|
198
|
+
Given estoy en el editor de paginas en modo Layout
|
|
199
|
+
When hago clic en la pestana de categoria "marketing"
|
|
200
|
+
Then el selector de bloques deberia mostrar bloques CTA
|
|
201
|
+
```
|
|
202
|
+
|
|
203
|
+
</td>
|
|
204
|
+
</tr>
|
|
205
|
+
</table>
|
|
206
|
+
|
|
207
|
+
---
|
|
208
|
+
|
|
209
|
+
### PB-EDITOR-005: Should search blocks by name
|
|
210
|
+
|
|
211
|
+
<table>
|
|
212
|
+
<tr>
|
|
213
|
+
<th width="50%">English</th>
|
|
214
|
+
<th width="50%">Español</th>
|
|
215
|
+
</tr>
|
|
216
|
+
<tr>
|
|
217
|
+
<td>
|
|
218
|
+
|
|
219
|
+
```gherkin
|
|
220
|
+
Scenario: Search blocks by name
|
|
221
|
+
|
|
222
|
+
Given I am on the page editor in Layout mode
|
|
223
|
+
When I search for "hero" in the block picker
|
|
224
|
+
Then "hero" block should be visible in the picker
|
|
225
|
+
```
|
|
226
|
+
|
|
227
|
+
</td>
|
|
228
|
+
<td>
|
|
229
|
+
|
|
230
|
+
```gherkin
|
|
231
|
+
Scenario: Buscar bloques por nombre
|
|
232
|
+
|
|
233
|
+
Given estoy en el editor de paginas en modo Layout
|
|
234
|
+
When busco "hero" en el selector de bloques
|
|
235
|
+
Then el bloque "hero" deberia estar visible en el selector
|
|
236
|
+
```
|
|
237
|
+
|
|
238
|
+
</td>
|
|
239
|
+
</tr>
|
|
240
|
+
</table>
|
|
241
|
+
|
|
242
|
+
---
|
|
243
|
+
|
|
244
|
+
## Mode Switching
|
|
245
|
+
|
|
246
|
+
### PB-EDITOR-006: Should switch between Layout and Preview mode
|
|
247
|
+
|
|
248
|
+
<table>
|
|
249
|
+
<tr>
|
|
250
|
+
<th width="50%">English</th>
|
|
251
|
+
<th width="50%">Español</th>
|
|
252
|
+
</tr>
|
|
253
|
+
<tr>
|
|
254
|
+
<td>
|
|
255
|
+
|
|
256
|
+
```gherkin
|
|
257
|
+
Scenario: Switch between editor modes
|
|
258
|
+
|
|
259
|
+
Given I am on the page editor
|
|
260
|
+
And I switch to Layout mode
|
|
261
|
+
And I add a "hero" block
|
|
262
|
+
When I switch to Preview mode
|
|
263
|
+
Then the preview canvas should be visible
|
|
264
|
+
When I switch to Layout mode
|
|
265
|
+
Then the block canvas should be visible
|
|
266
|
+
```
|
|
267
|
+
|
|
268
|
+
</td>
|
|
269
|
+
<td>
|
|
270
|
+
|
|
271
|
+
```gherkin
|
|
272
|
+
Scenario: Cambiar entre modos del editor
|
|
273
|
+
|
|
274
|
+
Given estoy en el editor de paginas
|
|
275
|
+
And cambio al modo Layout
|
|
276
|
+
And agrego un bloque "hero"
|
|
277
|
+
When cambio al modo Preview
|
|
278
|
+
Then el canvas de preview deberia estar visible
|
|
279
|
+
When cambio al modo Layout
|
|
280
|
+
Then el canvas de bloques deberia estar visible
|
|
281
|
+
```
|
|
282
|
+
|
|
283
|
+
</td>
|
|
284
|
+
</tr>
|
|
285
|
+
</table>
|
|
286
|
+
|
|
287
|
+
---
|
|
288
|
+
|
|
289
|
+
## Settings Panel
|
|
290
|
+
|
|
291
|
+
### PB-EDITOR-007: Should show settings panel when block is selected
|
|
292
|
+
|
|
293
|
+
<table>
|
|
294
|
+
<tr>
|
|
295
|
+
<th width="50%">English</th>
|
|
296
|
+
<th width="50%">Español</th>
|
|
297
|
+
</tr>
|
|
298
|
+
<tr>
|
|
299
|
+
<td>
|
|
300
|
+
|
|
301
|
+
```gherkin
|
|
302
|
+
Scenario: Settings panel shows for selected block
|
|
303
|
+
|
|
304
|
+
Given I am on the page editor in Layout mode
|
|
305
|
+
When I add a "hero" block
|
|
306
|
+
Then the settings panel should have content
|
|
307
|
+
```
|
|
308
|
+
|
|
309
|
+
</td>
|
|
310
|
+
<td>
|
|
311
|
+
|
|
312
|
+
```gherkin
|
|
313
|
+
Scenario: Panel de configuracion se muestra para bloque seleccionado
|
|
314
|
+
|
|
315
|
+
Given estoy en el editor de paginas en modo Layout
|
|
316
|
+
When agrego un bloque "hero"
|
|
317
|
+
Then el panel de configuracion deberia tener contenido
|
|
318
|
+
```
|
|
319
|
+
|
|
320
|
+
</td>
|
|
321
|
+
</tr>
|
|
322
|
+
</table>
|
|
323
|
+
|
|
324
|
+
---
|
|
325
|
+
|
|
326
|
+
### PB-EDITOR-008: Should switch between settings tabs
|
|
327
|
+
|
|
328
|
+
<table>
|
|
329
|
+
<tr>
|
|
330
|
+
<th width="50%">English</th>
|
|
331
|
+
<th width="50%">Español</th>
|
|
332
|
+
</tr>
|
|
333
|
+
<tr>
|
|
334
|
+
<td>
|
|
335
|
+
|
|
336
|
+
```gherkin
|
|
337
|
+
Scenario: Switch between settings tabs
|
|
338
|
+
|
|
339
|
+
Given I am on the page editor with a hero block
|
|
340
|
+
When I select the "content" settings tab
|
|
341
|
+
Then the content tab should be active
|
|
342
|
+
When I select the "design" settings tab
|
|
343
|
+
Then the design tab should be active
|
|
344
|
+
```
|
|
345
|
+
|
|
346
|
+
</td>
|
|
347
|
+
<td>
|
|
348
|
+
|
|
349
|
+
```gherkin
|
|
350
|
+
Scenario: Cambiar entre pestanas de configuracion
|
|
351
|
+
|
|
352
|
+
Given estoy en el editor de paginas con un bloque hero
|
|
353
|
+
When selecciono la pestana de configuracion "content"
|
|
354
|
+
Then la pestana content deberia estar activa
|
|
355
|
+
When selecciono la pestana de configuracion "design"
|
|
356
|
+
Then la pestana design deberia estar activa
|
|
357
|
+
```
|
|
358
|
+
|
|
359
|
+
</td>
|
|
360
|
+
</tr>
|
|
361
|
+
</table>
|
|
362
|
+
|
|
363
|
+
---
|
|
364
|
+
|
|
365
|
+
## Save Functionality
|
|
366
|
+
|
|
367
|
+
### PB-EDITOR-009: Should save page changes `@smoke`
|
|
368
|
+
|
|
369
|
+
<table>
|
|
370
|
+
<tr>
|
|
371
|
+
<th width="50%">English</th>
|
|
372
|
+
<th width="50%">Español</th>
|
|
373
|
+
</tr>
|
|
374
|
+
<tr>
|
|
375
|
+
<td>
|
|
376
|
+
|
|
377
|
+
```gherkin
|
|
378
|
+
Scenario: Save page with blocks
|
|
379
|
+
|
|
380
|
+
Given I am on the page editor in Layout mode
|
|
381
|
+
And I add a "hero" block
|
|
382
|
+
When I save the page
|
|
383
|
+
And I wait for the API update
|
|
384
|
+
Then the API should confirm at least 1 block
|
|
385
|
+
And the first block should be "hero"
|
|
386
|
+
```
|
|
387
|
+
|
|
388
|
+
</td>
|
|
389
|
+
<td>
|
|
390
|
+
|
|
391
|
+
```gherkin
|
|
392
|
+
Scenario: Guardar pagina con bloques
|
|
393
|
+
|
|
394
|
+
Given estoy en el editor de paginas en modo Layout
|
|
395
|
+
And agrego un bloque "hero"
|
|
396
|
+
When guardo la pagina
|
|
397
|
+
And espero la actualizacion de API
|
|
398
|
+
Then la API deberia confirmar al menos 1 bloque
|
|
399
|
+
And el primer bloque deberia ser "hero"
|
|
400
|
+
```
|
|
401
|
+
|
|
402
|
+
</td>
|
|
403
|
+
</tr>
|
|
404
|
+
</table>
|
|
405
|
+
|
|
406
|
+
---
|
|
407
|
+
|
|
408
|
+
### PB-EDITOR-010: Should publish page
|
|
409
|
+
|
|
410
|
+
<table>
|
|
411
|
+
<tr>
|
|
412
|
+
<th width="50%">English</th>
|
|
413
|
+
<th width="50%">Español</th>
|
|
414
|
+
</tr>
|
|
415
|
+
<tr>
|
|
416
|
+
<td>
|
|
417
|
+
|
|
418
|
+
```gherkin
|
|
419
|
+
Scenario: Publish a page
|
|
420
|
+
|
|
421
|
+
Given I am on the page editor
|
|
422
|
+
When I select "published" status
|
|
423
|
+
And I save the page
|
|
424
|
+
And I wait for the API update
|
|
425
|
+
Then the API should confirm status is "published"
|
|
426
|
+
```
|
|
427
|
+
|
|
428
|
+
</td>
|
|
429
|
+
<td>
|
|
430
|
+
|
|
431
|
+
```gherkin
|
|
432
|
+
Scenario: Publicar una pagina
|
|
433
|
+
|
|
434
|
+
Given estoy en el editor de paginas
|
|
435
|
+
When selecciono estado "published"
|
|
436
|
+
And guardo la pagina
|
|
437
|
+
And espero la actualizacion de API
|
|
438
|
+
Then la API deberia confirmar que el estado es "published"
|
|
439
|
+
```
|
|
440
|
+
|
|
441
|
+
</td>
|
|
442
|
+
</tr>
|
|
443
|
+
</table>
|
|
444
|
+
|
|
445
|
+
---
|
|
446
|
+
|
|
447
|
+
## Summary / Resumen
|
|
448
|
+
|
|
449
|
+
| Test ID | Block | Description / Descripción | Tags |
|
|
450
|
+
|---------|-------|---------------------------|------|
|
|
451
|
+
| PB-EDITOR-001 | Loading | Open editor for page | `@smoke` |
|
|
452
|
+
| PB-EDITOR-002 | Loading | Open new page form | |
|
|
453
|
+
| PB-EDITOR-003 | Block Picker | Show available blocks | `@smoke` |
|
|
454
|
+
| PB-EDITOR-004 | Block Picker | Filter by category | |
|
|
455
|
+
| PB-EDITOR-005 | Block Picker | Search by name | |
|
|
456
|
+
| PB-EDITOR-006 | Mode Switch | Layout/Preview toggle | |
|
|
457
|
+
| PB-EDITOR-007 | Settings | Show settings panel | |
|
|
458
|
+
| PB-EDITOR-008 | Settings | Switch tabs | |
|
|
459
|
+
| PB-EDITOR-009 | Save | Save page changes | `@smoke` |
|
|
460
|
+
| PB-EDITOR-010 | Save | Publish page | |
|