Skip to content

Commit 6826c24

Browse files
committed
fix tests
1 parent cdbe648 commit 6826c24

6 files changed

Lines changed: 43 additions & 21 deletions

File tree

src/pat/modal/modal.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -702,7 +702,7 @@ export default Base.extend({
702702
self.$wrapper.addClass("image-modal");
703703
var src = self.$el.attr("href");
704704
var srcset = self.$el.attr("data-modal-srcset") || "";
705-
var title = $.trim(self.$el.context.innerText) || "Image";
705+
var title = (self.$el[0]?.innerText || "").trim() || "Image";
706706
// XXX aria?
707707
self.$raw = $(
708708
"<div><h1>" +

src/pat/querystring/querystring.test.js

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,7 @@ import "./querystring";
22
import registry from "@patternslib/patternslib/src/core/registry";
33
import utils from "@patternslib/patternslib/src/core/utils";
44

5-
const mockFetch =
6-
(json = {}) =>
7-
() =>
8-
Promise.resolve({
9-
json: () => Promise.resolve(json),
10-
});
5+
const mockFetch = global.mockFetch;
116

127
describe("Querystring", function () {
138
beforeEach(() => {

src/pat/relateditems/relateditems.js

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@ import registry from "@patternslib/patternslib/src/core/registry";
77
import Select2 from "../select2/select2";
88

99
const KEY = {
10-
LEFT: 37,
11-
RIGHT: 39,
10+
LEFT: "ArrowLeft",
11+
RIGHT: "ArrowRight",
1212
};
1313

1414
export default Base.extend({
@@ -702,11 +702,11 @@ export default Base.extend({
702702
return;
703703
}
704704

705-
if (event.which === KEY.LEFT || event.which === KEY.RIGHT) {
705+
if (event.key === KEY.LEFT || event.key === KEY.RIGHT) {
706706
event.stopPropagation();
707707

708708
const selectorContext =
709-
event.which === KEY.LEFT
709+
event.key === KEY.LEFT
710710
? ".pat-relateditems-result.one-level-up"
711711
: ".select2-highlighted";
712712

src/pat/select2/select2.test.js

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -226,8 +226,8 @@ describe("Select2", function () {
226226

227227
var $results = $("li.select2-search-choice");
228228
expect($results.length).toEqual(2);
229-
expect($.trim($results.eq(0).text())).toEqual("Yellow");
230-
expect($.trim($results.eq(1).text())).toEqual("Red");
229+
expect($results.eq(0).text().trim()).toEqual("Yellow");
230+
expect($results.eq(1).text().trim()).toEqual("Red");
231231

232232
var firstElem = $results.eq(0);
233233
// css class is set and proxy is created when starting to drag
@@ -330,7 +330,7 @@ describe("Select2", function () {
330330
expect($("#test-select2").val()).toEqual("1;3");
331331
var $results = $("li.select2-search-choice");
332332
expect($results.length).toEqual(2);
333-
expect($.trim($results.eq(0).text())).toEqual("One");
334-
expect($.trim($results.eq(1).text())).toEqual("Three");
333+
expect($results.eq(0).text().trim()).toEqual("One");
334+
expect($results.eq(1).text().trim()).toEqual("Three");
335335
});
336336
});

src/pat/structure/structure.test.js

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -42,12 +42,7 @@ function getQueryVariable(url, variable) {
4242

4343
var extraDataJsonItem = null;
4444

45-
const mockFetch =
46-
(json = {}) =>
47-
() =>
48-
Promise.resolve({
49-
json: () => Promise.resolve(json),
50-
});
45+
const mockFetch = global.mockFetch;
5146

5247
/* ==========================
5348
TEST: AppView constructor internal attribute/object correctness

src/setup-tests.js

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,37 @@
11
// Extra test setup.
22

3+
// Mock fetch for jsdom environment which doesn't support it natively.
4+
// Default implementation returns an empty 200 response.
5+
if (!global.fetch) {
6+
global.fetch = () =>
7+
Promise.resolve({
8+
status: 200,
9+
statusText: "OK",
10+
headers: {
11+
get: () => null,
12+
forEach: () => {},
13+
},
14+
json: () => Promise.resolve({}),
15+
text: () => Promise.resolve(""),
16+
});
17+
}
18+
19+
// Factory for creating fetch mocks that return a specific JSON payload.
20+
// Usage in tests: global.fetch = jest.fn().mockImplementation(mockFetch({ ... }))
21+
global.mockFetch =
22+
(json = {}) =>
23+
() =>
24+
Promise.resolve({
25+
status: 200,
26+
statusText: "OK",
27+
headers: {
28+
get: () => null,
29+
forEach: () => {},
30+
},
31+
json: () => Promise.resolve(json),
32+
text: () => Promise.resolve(JSON.stringify(json)),
33+
});
34+
335
// provide jquery
436
import jquery from "jquery";
537
global.$ = global.jQuery = jquery;

0 commit comments

Comments
 (0)