Skip to content

Commit 203b7cd

Browse files
committed
5316: fix tests, renamed imports
1 parent af7d2e9 commit 203b7cd

File tree

4 files changed

+62
-31
lines changed

4 files changed

+62
-31
lines changed

assets/shared/templates/image-text.jsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,8 +27,8 @@ function renderSlide(slide, run, slideDone) {
2727
function renderAdminForm(formStateObject, onChange, handleMedia, mediaData) {
2828
return (
2929
<ImageTextAdmin
30-
formStateObject={formStateObject}
31-
onChange={onChange}
30+
slideContent={formStateObject}
31+
onSlideContentChange={onChange}
3232
handleMedia={handleMedia}
3333
mediaData={mediaData}
3434
/>

assets/shared/templates/image-text/admin-form.jsx

Lines changed: 20 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -44,21 +44,21 @@ function ImageTextAdmin({
4444
id="title"
4545
className="col-md-6 form-control"
4646
rows="3"
47-
defaultValue={slideContent["title"]}
47+
defaultValue={slideContent?.title}
4848
/>
4949
<small className="form-text d-flex">{t("slide-title-help-text")}</small>
5050

5151
<RichText
5252
name="text"
5353
label={t("rich-text-label")}
5454
helpText={t("rich-text-help-text")}
55-
value={slideContent["text"]}
55+
value={slideContent?.text}
5656
onChange={onSlideContentChange}
5757
formGroupClasses="col-md mt-3"
5858
/>
5959

6060
<Select
61-
value={slideContent["fontSize"]}
61+
value={slideContent?.fontSize}
6262
name={"fontSize"}
6363
options={[
6464
{ key: "fontsize1", title: "xs", value: "font-size-xs" },
@@ -75,7 +75,7 @@ function ImageTextAdmin({
7575
<label className="form-label mb-0 col-9">
7676
{t("images-label")}
7777
<FileSelector
78-
files={getInputFiles(slideContent["image"], mediaData)}
78+
files={getInputFiles(slideContent?.image, mediaData)}
7979
multiple={true}
8080
onFilesChange={handleMedia}
8181
name="image"
@@ -92,7 +92,7 @@ function ImageTextAdmin({
9292
name="mediaContain"
9393
formGroupClasses="mt-3"
9494
helpText={t("disable-cropping-help-text")}
95-
value={slideContent["mediaContain"]}
95+
value={slideContent?.mediaContain}
9696
/>
9797
</fieldset>
9898

@@ -107,8 +107,8 @@ function ImageTextAdmin({
107107
helpText={t("duration-help-text")}
108108
formGroupClasses="col-md-6 mb-3"
109109
value={
110-
slideContent["duration"]
111-
? Math.floor(slideContent["duration"] / 1000)
110+
slideContent?.duration
111+
? Math.floor(slideContent.duration / 1000)
112112
: 15
113113
}
114114
onChange={(value) => {
@@ -120,7 +120,7 @@ function ImageTextAdmin({
120120
/>
121121

122122
<Select
123-
value={slideContent["boxAlign"]}
123+
value={slideContent?.boxAlign}
124124
name="boxAlign"
125125
options={[
126126
{
@@ -154,32 +154,32 @@ function ImageTextAdmin({
154154
onChange={onSlideContentChange}
155155
name="boxMargin"
156156
formGroupClasses="col-md-6 mb-3"
157-
value={slideContent["boxMargin"]}
157+
value={slideContent?.boxMargin}
158158
/>
159159

160160
<FormCheckbox
161161
label={t("separator-label")}
162162
onChange={onSlideContentChange}
163163
name="separator"
164164
formGroupClasses="col-md-6 mb-3"
165-
value={slideContent["separator"]}
165+
value={slideContent?.separator}
166166
/>
167167

168168
<FormCheckbox
169169
label={t("half-size-label")}
170170
onChange={onSlideContentChange}
171171
name="halfSize"
172172
formGroupClasses="col-md-6 mb-3"
173-
value={slideContent["halfSize"]}
173+
value={slideContent?.halfSize}
174174
/>
175175

176-
{slideContent["separator"] && (
176+
{slideContent?.separator && (
177177
<FormCheckbox
178178
label={t("reversed-layout-label")}
179179
onChange={onSlideContentChange}
180180
name="reversed"
181181
formGroupClasses="col-md-6 mb-3"
182-
value={slideContent["reversed"]}
182+
value={slideContent?.reversed}
183183
/>
184184
)}
185185

@@ -188,21 +188,21 @@ function ImageTextAdmin({
188188
onChange={onSlideContentChange}
189189
name="shadow"
190190
formGroupClasses="col-md-6 mb-3"
191-
value={slideContent["shadow"]}
191+
value={slideContent?.shadow}
192192
/>
193193

194194
<FormCheckbox
195195
label={t("show-logo-label")}
196196
onChange={onSlideContentChange}
197197
name="showLogo"
198198
formGroupClasses="col-md-6 mb-3"
199-
value={slideContent["showLogo"]}
199+
value={slideContent?.showLogo}
200200
/>
201201

202-
{slideContent["showLogo"] && (
202+
{slideContent?.showLogo && (
203203
<>
204204
<Select
205-
value={slideContent["logoSize"]}
205+
value={slideContent?.logoSize}
206206
name="logoSize"
207207
options={[
208208
{
@@ -227,7 +227,7 @@ function ImageTextAdmin({
227227
/>
228228

229229
<Select
230-
value={slideContent["logoPosition"]}
230+
value={slideContent?.logoPosition}
231231
name="logoPosition"
232232
options={[
233233
{
@@ -261,7 +261,7 @@ function ImageTextAdmin({
261261
onChange={onSlideContentChange}
262262
name="logoMargin"
263263
formGroupClasses="col-md-6 mb-3"
264-
value={slideContent["logoMargin"]}
264+
value={slideContent?.logoMargin}
265265
/>
266266
</>
267267
)}
@@ -272,7 +272,7 @@ function ImageTextAdmin({
272272
onChange={onSlideContentChange}
273273
name="disableImageFade"
274274
formGroupClasses="col-md-6 mb-3"
275-
value={slideContent["disableImageFade"]}
275+
value={slideContent?.disableImageFade}
276276
/>
277277
)}
278278
</fieldset>

assets/tests/admin/admin-form.spec.js

Lines changed: 39 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,8 @@ import {
99
imageTextTemplate,
1010
onlyImageTextListJson,
1111
slideJson,
12+
slidesJson1,
13+
tokenAdminJson,
1214
} from "./data-fixtures.js";
1315

1416
test.describe("Admin form ui tests", () => {
@@ -21,9 +23,20 @@ test.describe("Admin form ui tests", () => {
2123

2224
await fulfillDataRoute(page, "**/templates*", onlyImageTextListJson);
2325
await fulfillEmptyRoutes(page, ["**/playlists*", "**/themes*"]);
26+
await fulfillDataRoute(
27+
page,
28+
"**/templates/01FP2SNGFN0BZQH03KCBXHKYHG",
29+
imageTextTemplate,
30+
);
2431

25-
await page.getByLabel("Tilføj nyt slide").first().click();
26-
await expect(page.getByText("Opret nyt slide:")).toBeVisible();
32+
await Promise.all([
33+
page.waitForURL("**/slide/create"),
34+
await page.getByLabel("Tilføj nyt slide").first().click(),
35+
]);
36+
37+
const header = page.getByText("Opret nyt slide:");
38+
await header.waitFor();
39+
await expect(header).toBeVisible();
2740

2841
// Pick tempalte
2942
await page
@@ -263,29 +276,47 @@ test.describe("Admin slide values depending on other values", () => {
263276
});
264277

265278
test.beforeEach(async ({ page }) => {
266-
await loginTest(page);
279+
await page.goto("/admin/slides/list");
280+
281+
await page.route("**/token", async (route) => {
282+
await route.fulfill({ json: tokenAdminJson });
283+
});
284+
285+
await page.route("**/slides*", async (route) => {
286+
await route.fulfill({ json: slidesJson1 });
287+
});
267288

268289
await fulfillDataRoute(page, "**/templates*", onlyImageTextListJson);
290+
269291
await fulfillDataRoute(
270292
page,
271293
"**/templates/01FP2SNGFN0BZQH03KCBXHKYHG",
272294
imageTextTemplate,
273295
);
274296

275-
await fulfillEmptyRoutes(page, ["**/playlists*", "**/themes*"]);
276-
277297
await fulfillDataRoute(
278298
page,
279299
"**/v2/slides/00015Y0ZVC18N407JD07SM0YCF",
280300
slideJson,
281301
);
282302

283-
await page.locator("#edit_button").first().click({ force: true });
303+
await fulfillEmptyRoutes(page, ["**/playlists*", "**/themes*"]);
304+
305+
await page.getByLabel("Email").fill("[email protected]");
306+
await page.getByLabel("Kodeord").fill("password");
307+
await page.locator("#login").click();
308+
309+
await Promise.all([
310+
page.waitForURL("**/slide/edit/*"),
311+
await page.locator("#edit_button").first().click({ force: true }),
312+
]);
284313
});
285314

286315
test("Should have filled title", async ({ page }) => {
287-
// await expect(page.locator("#title")).toHaveText("Test slide");
288-
await expect(page.locator("#fontSize")).toHaveText("Test slide");
316+
const title = page.locator("textarea#title");
317+
await title.waitFor();
318+
await expect(title).toBeVisible();
319+
await expect(title).toHaveValue("Title");
289320
});
290321

291322
test("Should have visible text editor for description", async ({ page }) => {

assets/tests/admin/test-helper.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ const loginTest = async (page) => {
4646
});
4747

4848
await page.route("**/slides*", async (route) => {
49-
await route.fulfill({ json: slidesJson1 });
49+
await route.fulfill({ json: emptyJson });
5050
});
5151

5252
await expect(page).toHaveTitle(/OS2Display Admin/);

0 commit comments

Comments
 (0)