@raketa-cloud/admin 1.2.0 → 1.4.0

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.
Files changed (41) hide show
  1. package/package.json +1 -1
  2. package/src/HonoAdapter.js +304 -169
  3. package/src/filters.js +17 -0
  4. package/src/handlers/article_revisions/ArticleRevisionsHandler.js +8 -0
  5. package/src/handlers/articles/ArticlesHandler.js +12 -1
  6. package/src/handlers/event_revisions/EventRevisionsHandler.js +8 -0
  7. package/src/handlers/events/EventsHandler.js +13 -2
  8. package/src/handlers/page_revisions/PageRevisionsHandler.js +8 -0
  9. package/src/handlers/pages/PagesHandler.js +12 -1
  10. package/src/index.js +1 -0
  11. package/src/routeCollection.js +14 -83
  12. package/src/routeMember.js +10 -33
  13. package/src/routeNestedCollection.js +19 -47
  14. package/src/routeNestedMember.js +14 -40
  15. package/src/tests/Adapter.test.js +4 -4
  16. package/src/tests/HonoAdapter.filter.test.js +40 -0
  17. package/src/tests/HonoAdapter.test.js +110 -9
  18. package/src/tests/RaketaContext.test.js +65 -0
  19. package/src/tests/cipher.test.js +73 -0
  20. package/src/tests/filters.test.js +97 -0
  21. package/src/tests/handlers/article_revisions/ArticleRevisionsHandler.test/create.test.js +43 -35
  22. package/src/tests/handlers/articles/ArticlesHandler.test/show.test.js +12 -1
  23. package/src/tests/handlers/event_revisions/EventRevisionsHandler.test/create.test.js +41 -33
  24. package/src/tests/handlers/events/EventsHandler.test/show.test.js +12 -1
  25. package/src/tests/handlers/page_revisions/PageRevisionsHandler.test/create.test.js +41 -27
  26. package/src/tests/handlers/pages/PagesHandler.test/show.test.js +12 -1
  27. package/src/tests/routeCollection.test.js +0 -92
  28. package/src/tests/routeMember.test.js +0 -6
  29. package/src/tests/routeNestedCollection.test.js +0 -14
  30. package/src/tests/routeNestedMember.test.js +0 -6
  31. package/src/tests/utils.test.js +70 -0
  32. package/src/views/articles/_shared/_history_toolbar.ejs +2 -2
  33. package/src/views/articles/_shared/_toolbar.ejs +38 -26
  34. package/src/views/articles/_shared/history_table.ejs +6 -0
  35. package/src/views/events/_shared/_history_toolbar.ejs +2 -2
  36. package/src/views/events/_shared/_toolbar.ejs +38 -26
  37. package/src/views/events/_shared/history_table.ejs +6 -0
  38. package/src/views/pages/_shared/_history_toolbar.ejs +2 -2
  39. package/src/views/pages/_shared/_toolbar.ejs +38 -26
  40. package/src/views/pages/_shared/history_table.ejs +6 -0
  41. package/src/Adapter.js +0 -265
@@ -0,0 +1,97 @@
1
+ import { setBeforeFilter, setAfterFilter } from "../filters";
2
+ import HonoAdapter from "../HonoAdapter";
3
+
4
+ class MockHonoAdapter {
5
+ constructor() {
6
+ this.globalBeforeFilters = [];
7
+ this.globalAfterFilters = [];
8
+ }
9
+
10
+ setBeforeFilter(pattern, filter) {
11
+ this.globalBeforeFilters.push({ pattern, filter });
12
+ }
13
+
14
+ setAfterFilter(pattern, filter) {
15
+ this.globalAfterFilters.push({ pattern, filter });
16
+ }
17
+ }
18
+
19
+ describe("filters", () => {
20
+ let adapter;
21
+
22
+ beforeEach(() => {
23
+ adapter = new MockHonoAdapter();
24
+ });
25
+
26
+ describe("setBeforeFilter", () => {
27
+ test("adds before filter to adapter", () => {
28
+ const pattern = /\/settings\/content/;
29
+ const filter = () => ({ assigns: { foo: "bar" } });
30
+
31
+ setBeforeFilter(adapter, pattern, filter);
32
+
33
+ expect(adapter.globalBeforeFilters).toHaveLength(1);
34
+ expect(adapter.globalBeforeFilters[0]).toEqual({
35
+ pattern,
36
+ filter
37
+ });
38
+ });
39
+
40
+ test("can add multiple before filters", () => {
41
+ const pattern1 = /\/settings\/content/;
42
+ const filter1 = () => ({ assigns: { foo: "bar" } });
43
+
44
+ const pattern2 = /\/pages/;
45
+ const filter2 = () => ({ assigns: { baz: "qux" } });
46
+
47
+ setBeforeFilter(adapter, pattern1, filter1);
48
+ setBeforeFilter(adapter, pattern2, filter2);
49
+
50
+ expect(adapter.globalBeforeFilters).toHaveLength(2);
51
+ expect(adapter.globalBeforeFilters[0]).toEqual({
52
+ pattern: pattern1,
53
+ filter: filter1
54
+ });
55
+ expect(adapter.globalBeforeFilters[1]).toEqual({
56
+ pattern: pattern2,
57
+ filter: filter2
58
+ });
59
+ });
60
+ });
61
+
62
+ describe("setAfterFilter", () => {
63
+ test("adds after filter to adapter", () => {
64
+ const pattern = /\/settings\/content/;
65
+ const filter = () => ({ assigns: { foo: "bar" } });
66
+
67
+ setAfterFilter(adapter, pattern, filter);
68
+
69
+ expect(adapter.globalAfterFilters).toHaveLength(1);
70
+ expect(adapter.globalAfterFilters[0]).toEqual({
71
+ pattern,
72
+ filter
73
+ });
74
+ });
75
+
76
+ test("can add multiple after filters", () => {
77
+ const pattern1 = /\/settings\/content/;
78
+ const filter1 = () => ({ assigns: { foo: "bar" } });
79
+
80
+ const pattern2 = /\/pages/;
81
+ const filter2 = () => ({ assigns: { baz: "qux" } });
82
+
83
+ setAfterFilter(adapter, pattern1, filter1);
84
+ setAfterFilter(adapter, pattern2, filter2);
85
+
86
+ expect(adapter.globalAfterFilters).toHaveLength(2);
87
+ expect(adapter.globalAfterFilters[0]).toEqual({
88
+ pattern: pattern1,
89
+ filter: filter1
90
+ });
91
+ expect(adapter.globalAfterFilters[1]).toEqual({
92
+ pattern: pattern2,
93
+ filter: filter2
94
+ });
95
+ });
96
+ });
97
+ });
@@ -1,12 +1,13 @@
1
- import ArticleRevisionsHandler from "../../../../handlers/article_revisions/ArticleRevisionsHandler";
2
1
  import ArticleRevisions from "../../../../cloud/ArticleRevisions";
3
-
2
+ import Articles from "../../../../cloud/Articles";
3
+ import ArticleRevisionsHandler from "../../../../handlers/article_revisions/ArticleRevisionsHandler";
4
4
  import Factory from "../../../support/factory";
5
5
 
6
6
  function buildCtx(articleID) {
7
7
  return {
8
8
  client: {
9
9
  articleRevisions: new ArticleRevisions(() => ({}), "token"),
10
+ articles: new Articles(() => ({}), "token"),
10
11
  },
11
12
  params: { parent_id: articleID },
12
13
  locale: "en",
@@ -14,66 +15,73 @@ function buildCtx(articleID) {
14
15
  articleType: "article",
15
16
  articleTypePlural: "articles",
16
17
  },
18
+ maxOpenRevisions: 1,
17
19
  };
18
20
  }
19
21
 
20
22
  describe("Article revisions", () => {
21
23
  test("create successful", async () => {
24
+ const article = Factory.build("article", { id: 1, revisionsCount: 0 });
22
25
  const revision = Factory.build("article_revision", { originalId: 1 });
23
- const ctx = buildCtx(revision.originalId);
26
+ const ctx = buildCtx(article.id);
27
+
28
+ jest.spyOn(ctx.client.articles, "find").mockResolvedValue(article);
24
29
 
25
- const mockCreate = jest
30
+ jest
26
31
  .spyOn(ctx.client.articleRevisions, "create")
27
- .mockImplementation(() => ({
28
- revision,
29
- errors: null,
30
- articleErrors: null,
31
- }));
32
+ .mockResolvedValue({ revision, errors: null, articleErrors: null });
32
33
 
33
34
  const result = await ArticleRevisionsHandler.create(ctx);
34
35
 
35
- expect(mockCreate).toHaveBeenCalledWith(revision.originalId, "en");
36
+ expect(result).toEqual({
37
+ redirect: `/en/articles/${article.id}`,
38
+ });
39
+ });
40
+
41
+ test("create failed when there is an opened revision for the article", async () => {
42
+ const article = Factory.build("article", { id: 1, revisionsCount: 2 });
43
+ const ctx = buildCtx(article.id);
44
+
45
+ jest.spyOn(ctx.client.articles, "find").mockResolvedValue(article);
46
+
47
+ const result = await ArticleRevisionsHandler.create(ctx);
36
48
 
37
49
  expect(result).toEqual({
38
- redirect: `/en/articles/${revision.originalId}`,
50
+ redirect: `/en/articles/${article.id}?revisions_count_error=1`,
39
51
  });
40
52
  });
41
53
 
42
54
  test("create failed with errors", async () => {
43
- const ctx = buildCtx(1);
55
+ const article = Factory.build("article", { id: 1, revisionsCount: 0 });
44
56
  const errors = [{ key: "generalError", message: "something went wrong" }];
57
+ const ctx = buildCtx(article.id);
45
58
 
46
- const mockCreate = jest
47
- .spyOn(ctx.client.articleRevisions, "create")
48
- .mockImplementation(() => ({
49
- revision: null,
50
- errors,
51
- articleErrors: null,
52
- }));
59
+ jest.spyOn(ctx.client.articles, "find").mockResolvedValue(article);
53
60
 
54
- expect(async () => {
55
- await ArticleRevisionsHandler.create(ctx);
56
- }).rejects.toThrow(`Failed to start revision: ${JSON.stringify(errors)}`);
61
+ jest
62
+ .spyOn(ctx.client.articleRevisions, "create")
63
+ .mockResolvedValue({ revision: null, errors, articleErrors: null });
57
64
 
58
- expect(mockCreate).toHaveBeenCalledWith(1, "en");
65
+ await expect(ArticleRevisionsHandler.create(ctx)).rejects.toThrow(
66
+ `Failed to start revision: ${JSON.stringify(errors)}`
67
+ );
59
68
  });
60
69
 
61
70
  test("create failed with article errors", async () => {
62
- const ctx = buildCtx(1);
71
+ const article = Factory.build("article", { id: 1, revisionsCount: 0 });
63
72
  const errors = [{ key: "generalError", message: "something went wrong" }];
73
+ const ctx = buildCtx(article.id);
64
74
 
65
- const mockCreate = jest
66
- .spyOn(ctx.client.articleRevisions, "create")
67
- .mockImplementation(() => ({
68
- revision: null,
69
- errors: null,
70
- articleErrors: errors,
71
- }));
75
+ jest.spyOn(ctx.client.articles, "find").mockResolvedValue(article);
72
76
 
73
- expect(async () => {
74
- await ArticleRevisionsHandler.create(ctx);
75
- }).rejects.toThrow(`Failed to start revision: ${JSON.stringify(errors)}`);
77
+ jest.spyOn(ctx.client.articleRevisions, "create").mockResolvedValue({
78
+ revision: null,
79
+ errors: null,
80
+ articleErrors: errors,
81
+ });
76
82
 
77
- expect(mockCreate).toHaveBeenCalledWith(1, "en");
83
+ await expect(ArticleRevisionsHandler.create(ctx)).rejects.toThrow(
84
+ `Failed to start revision: ${JSON.stringify(errors)}`
85
+ );
78
86
  });
79
87
  });
@@ -72,7 +72,18 @@ describe("Articles Handler", () => {
72
72
 
73
73
  expect(mockedArticleFind).toHaveBeenCalledWith(article.id, "en");
74
74
  expect(mockedArticleRevisions).toHaveBeenCalledWith(article.id, "en");
75
- expect(mockedArticleChanges).toHaveBeenCalledWith({}, article.id, "en");
75
+ expect(mockedArticleChanges).toHaveBeenCalledWith(
76
+ {
77
+ "f:change_type": [
78
+ "revision_publish",
79
+ "revision_lock",
80
+ "revision_unlock",
81
+ "update",
82
+ ],
83
+ },
84
+ article.id,
85
+ "en"
86
+ );
76
87
 
77
88
  expect(result).toEqual({
78
89
  assigns: {
@@ -1,4 +1,6 @@
1
+ import Events from "../../../../cloud/Events";
1
2
  import EventRevisionsHandler from "../../../../handlers/event_revisions/EventRevisionsHandler";
3
+
2
4
  import EventRevisions from "../../../../cloud/EventRevisions";
3
5
 
4
6
  import Factory from "../../../support/factory";
@@ -7,6 +9,7 @@ function buildCtx(eventID) {
7
9
  return {
8
10
  client: {
9
11
  eventRevisions: new EventRevisions(() => ({}), "token"),
12
+ events: new Events(() => ({}), "token"),
10
13
  },
11
14
  params: { parent_id: eventID },
12
15
  locale: "en",
@@ -14,66 +17,71 @@ function buildCtx(eventID) {
14
17
  eventType: "event",
15
18
  eventTypePlural: "events",
16
19
  },
20
+ maxOpenRevisions: 1,
17
21
  };
18
22
  }
19
23
 
20
24
  describe("Event revisions", () => {
21
25
  test("create successful", async () => {
26
+ const event = Factory.build("event", { id: 1, revisionsCount: 0 });
22
27
  const revision = Factory.build("event_revision", { originalId: 1 });
23
- const ctx = buildCtx(revision.originalId);
28
+ const ctx = buildCtx(event.id);
29
+
30
+ jest.spyOn(ctx.client.events, "find").mockResolvedValue(event);
24
31
 
25
- const mockCreate = jest
32
+ jest
26
33
  .spyOn(ctx.client.eventRevisions, "create")
27
- .mockImplementation(() => ({
28
- revision,
29
- errors: null,
30
- eventErrors: null,
31
- }));
34
+ .mockResolvedValue({ revision, errors: null, eventErrors: null });
32
35
 
33
36
  const result = await EventRevisionsHandler.create(ctx);
34
37
 
35
- expect(mockCreate).toHaveBeenCalledWith(revision.originalId, "en");
38
+ expect(result).toEqual({
39
+ redirect: `/en/events/${event.id}`,
40
+ });
41
+ });
42
+
43
+ test("create failed when there is an opened revision for the event", async () => {
44
+ const event = Factory.build("event", { id: 1, revisionsCount: 2 });
45
+ const ctx = buildCtx(event.id);
46
+
47
+ jest.spyOn(ctx.client.events, "find").mockResolvedValue(event);
48
+
49
+ const result = await EventRevisionsHandler.create(ctx);
36
50
 
37
51
  expect(result).toEqual({
38
- redirect: `/en/events/${revision.originalId}`,
52
+ redirect: `/en/events/${event.id}?revisions_count_error=1`,
39
53
  });
40
54
  });
41
55
 
42
56
  test("create failed with errors", async () => {
43
- const ctx = buildCtx(1);
57
+ const event = Factory.build("event", { id: 1, revisionsCount: 0 });
44
58
  const errors = [{ key: "generalError", message: "something went wrong" }];
59
+ const ctx = buildCtx(event.id);
45
60
 
46
- const mockCreate = jest
47
- .spyOn(ctx.client.eventRevisions, "create")
48
- .mockImplementation(() => ({
49
- revision: null,
50
- errors,
51
- eventErrors: null,
52
- }));
61
+ jest.spyOn(ctx.client.events, "find").mockResolvedValue(event);
53
62
 
54
- expect(async () => {
55
- await EventRevisionsHandler.create(ctx);
56
- }).rejects.toThrow(`Failed to start revision: ${JSON.stringify(errors)}`);
63
+ jest
64
+ .spyOn(ctx.client.eventRevisions, "create")
65
+ .mockResolvedValue({ revision: null, errors, eventErrors: null });
57
66
 
58
- expect(mockCreate).toHaveBeenCalledWith(1, "en");
67
+ await expect(EventRevisionsHandler.create(ctx)).rejects.toThrow(
68
+ `Failed to start revision: ${JSON.stringify(errors)}`
69
+ );
59
70
  });
60
71
 
61
72
  test("create failed with event errors", async () => {
62
- const ctx = buildCtx(1);
73
+ const event = Factory.build("event", { id: 1, revisionsCount: 0 });
63
74
  const errors = [{ key: "generalError", message: "something went wrong" }];
75
+ const ctx = buildCtx(event.id);
64
76
 
65
- const mockCreate = jest
66
- .spyOn(ctx.client.eventRevisions, "create")
67
- .mockImplementation(() => ({
68
- revision: null,
69
- errors: null,
70
- eventErrors: errors,
71
- }));
77
+ jest.spyOn(ctx.client.events, "find").mockResolvedValue(event);
72
78
 
73
- expect(async () => {
74
- await EventRevisionsHandler.create(ctx);
75
- }).rejects.toThrow(`Failed to start revision: ${JSON.stringify(errors)}`);
79
+ jest
80
+ .spyOn(ctx.client.eventRevisions, "create")
81
+ .mockResolvedValue({ revision: null, errors: null, eventErrors: errors });
76
82
 
77
- expect(mockCreate).toHaveBeenCalledWith(1, "en");
83
+ await expect(EventRevisionsHandler.create(ctx)).rejects.toThrow(
84
+ `Failed to start revision: ${JSON.stringify(errors)}`
85
+ );
78
86
  });
79
87
  });
@@ -72,7 +72,18 @@ describe("Events Handler", () => {
72
72
 
73
73
  expect(mockedeventFind).toHaveBeenCalledWith(event.id, "en");
74
74
  expect(mockedEventRevisions).toHaveBeenCalledWith(event.id, "en");
75
- expect(mockedEventChanges).toHaveBeenCalledWith({}, event.id, "en");
75
+ expect(mockedEventChanges).toHaveBeenCalledWith(
76
+ {
77
+ "f:change_type": [
78
+ "revision_publish",
79
+ "revision_lock",
80
+ "revision_unlock",
81
+ "update",
82
+ ],
83
+ },
84
+ event.id,
85
+ "en"
86
+ );
76
87
 
77
88
  expect(result).toEqual({
78
89
  assigns: {
@@ -1,12 +1,13 @@
1
- import PageRevisionsHandler from "../../../../handlers/page_revisions/PageRevisionsHandler";
2
1
  import PageRevisions from "../../../../cloud/PageRevisions";
3
-
2
+ import Pages from "../../../../cloud/Pages";
3
+ import PageRevisionsHandler from "../../../../handlers/page_revisions/PageRevisionsHandler";
4
4
  import Factory from "../../../support/factory";
5
5
 
6
6
  function buildCtx(pageID) {
7
7
  return {
8
8
  client: {
9
9
  pageRevisions: new PageRevisions(() => ({}), "token"),
10
+ pages: new Pages(() => ({}), "token"),
10
11
  },
11
12
  params: { parent_id: pageID },
12
13
  locale: "en",
@@ -14,58 +15,71 @@ function buildCtx(pageID) {
14
15
  pageType: "page",
15
16
  pageTypePlural: "pages",
16
17
  },
18
+ maxOpenRevisions: 1,
17
19
  };
18
20
  }
19
21
 
20
22
  describe("Page revisions", () => {
21
23
  test("create successful", async () => {
24
+ const page = Factory.build("page", { id: 1, revisionsCount: 0 });
22
25
  const revision = Factory.build("page_revision", { originalId: 1 });
23
- const ctx = buildCtx(revision.originalId);
26
+ const ctx = buildCtx(page.id);
27
+
28
+ jest.spyOn(ctx.client.pages, "find").mockResolvedValue(page);
24
29
 
25
- const mockCreate = jest
30
+ jest
26
31
  .spyOn(ctx.client.pageRevisions, "create")
27
- .mockImplementation(() => ({ revision, errors: null, pageErrors: null }));
32
+ .mockResolvedValue({ revision, errors: null, pageErrors: null });
28
33
 
29
34
  const result = await PageRevisionsHandler.create(ctx);
30
35
 
31
- expect(mockCreate).toHaveBeenCalledWith(revision.originalId, "en");
36
+ expect(result).toEqual({
37
+ redirect: `/en/pages/${page.id}`,
38
+ });
39
+ });
40
+
41
+ test("create failed when there is an opened revision for the page", async () => {
42
+ const page = Factory.build("page", { id: 1, revisionsCount: 2 });
43
+ const ctx = buildCtx(page.id);
44
+
45
+ jest.spyOn(ctx.client.pages, "find").mockResolvedValue(page);
46
+
47
+ const result = await PageRevisionsHandler.create(ctx);
32
48
 
33
49
  expect(result).toEqual({
34
- redirect: `/en/pages/${revision.originalId}`,
50
+ redirect: `/en/pages/${page.id}?revisions_count_error=1`,
35
51
  });
36
52
  });
37
53
 
38
54
  test("create failed with errors", async () => {
39
- const ctx = buildCtx(1);
55
+ const page = Factory.build("page", { id: 1, revisionsCount: 0 });
40
56
  const errors = [{ key: "generalError", message: "something went wrong" }];
57
+ const ctx = buildCtx(page.id);
41
58
 
42
- const mockCreate = jest
43
- .spyOn(ctx.client.pageRevisions, "create")
44
- .mockImplementation(() => ({ revision: null, errors, pageErrors: null }));
59
+ jest.spyOn(ctx.client.pages, "find").mockResolvedValue(page);
45
60
 
46
- expect(async () => {
47
- await PageRevisionsHandler.create(ctx);
48
- }).rejects.toThrow(`Failed to start revision: ${JSON.stringify(errors)}`);
61
+ jest
62
+ .spyOn(ctx.client.pageRevisions, "create")
63
+ .mockResolvedValue({ revision: null, errors, pageErrors: null });
49
64
 
50
- expect(mockCreate).toHaveBeenCalledWith(1, "en");
65
+ await expect(PageRevisionsHandler.create(ctx)).rejects.toThrow(
66
+ `Failed to start revision: ${JSON.stringify(errors)}`
67
+ );
51
68
  });
52
69
 
53
70
  test("create failed with page errors", async () => {
54
- const ctx = buildCtx(1);
71
+ const page = Factory.build("page", { id: 1, revisionsCount: 0 });
55
72
  const errors = [{ key: "generalError", message: "something went wrong" }];
73
+ const ctx = buildCtx(page.id);
56
74
 
57
- const mockCreate = jest
58
- .spyOn(ctx.client.pageRevisions, "create")
59
- .mockImplementation(() => ({
60
- revision: null,
61
- errors: null,
62
- pageErrors: errors,
63
- }));
75
+ jest.spyOn(ctx.client.pages, "find").mockResolvedValue(page);
64
76
 
65
- expect(async () => {
66
- await PageRevisionsHandler.create(ctx);
67
- }).rejects.toThrow(`Failed to start revision: ${JSON.stringify(errors)}`);
77
+ jest
78
+ .spyOn(ctx.client.pageRevisions, "create")
79
+ .mockResolvedValue({ revision: null, errors: null, pageErrors: errors });
68
80
 
69
- expect(mockCreate).toHaveBeenCalledWith(1, "en");
81
+ await expect(PageRevisionsHandler.create(ctx)).rejects.toThrow(
82
+ `Failed to start revision: ${JSON.stringify(errors)}`
83
+ );
70
84
  });
71
85
  });
@@ -70,7 +70,18 @@ describe("Pages Handler", () => {
70
70
 
71
71
  expect(mockedPageFind).toHaveBeenCalledWith(page.id, "en");
72
72
  expect(mockedPageRevisions).toHaveBeenCalledWith(page.id, "en");
73
- expect(mockedPageChanges).toHaveBeenCalledWith({}, page.id, "en");
73
+ expect(mockedPageChanges).toHaveBeenCalledWith(
74
+ {
75
+ "f:change_type": [
76
+ "revision_publish",
77
+ "revision_lock",
78
+ "revision_unlock",
79
+ "update",
80
+ ],
81
+ },
82
+ page.id,
83
+ "en"
84
+ );
74
85
 
75
86
  expect(result).toEqual({
76
87
  assigns: {
@@ -10,18 +10,6 @@ const UsersHandler = {
10
10
  destroy: () => {},
11
11
  };
12
12
 
13
- const UsersHandlerWithFilters = {
14
- before_filter: () => {},
15
- after_filter: () => {},
16
- index: () => {},
17
- show: () => {},
18
- create_form: () => {},
19
- edit_form: () => {},
20
- create: () => {},
21
- update: () => {},
22
- destroy: () => {},
23
- };
24
-
25
13
  const honoAdapter = {
26
14
  routeCollection: (_mapping) => {},
27
15
  };
@@ -80,84 +68,4 @@ describe("routeCollection", () => {
80
68
  {}
81
69
  );
82
70
  });
83
-
84
- test("Valid handler mapping is passed to router with filters", () => {
85
- routeCollection(honoAdapter, "users", UsersHandlerWithFilters);
86
-
87
- expect(adapterSpy).toHaveBeenCalledWith(
88
- [
89
- [
90
- "GET",
91
- "/users",
92
- "users",
93
- "users",
94
- "index",
95
- UsersHandlerWithFilters.index,
96
- UsersHandlerWithFilters.before_filter,
97
- UsersHandlerWithFilters.after_filter,
98
- ],
99
- [
100
- "GET",
101
- "/users/new",
102
- "users",
103
- "users",
104
- "create_form",
105
- UsersHandlerWithFilters.create_form,
106
- UsersHandlerWithFilters.before_filter,
107
- UsersHandlerWithFilters.after_filter,
108
- ],
109
- [
110
- "GET",
111
- "/users/:id",
112
- "users",
113
- "users",
114
- "show",
115
- UsersHandlerWithFilters.show,
116
- UsersHandlerWithFilters.before_filter,
117
- UsersHandlerWithFilters.after_filter,
118
- ],
119
- [
120
- "GET",
121
- "/users/:id/edit",
122
- "users",
123
- "users",
124
- "edit_form",
125
- UsersHandlerWithFilters.edit_form,
126
- UsersHandlerWithFilters.before_filter,
127
- UsersHandlerWithFilters.after_filter,
128
- ],
129
- [
130
- "POST",
131
- "/users",
132
- "users",
133
- "users",
134
- "create_form",
135
- UsersHandlerWithFilters.create,
136
- UsersHandlerWithFilters.before_filter,
137
- UsersHandlerWithFilters.after_filter,
138
- ],
139
- [
140
- "POST",
141
- "/users/:id",
142
- "users",
143
- "users",
144
- "edit_form",
145
- UsersHandlerWithFilters.update,
146
- UsersHandlerWithFilters.before_filter,
147
- UsersHandlerWithFilters.after_filter,
148
- ],
149
- [
150
- "DELETE",
151
- "/users/:id",
152
- "users",
153
- "users",
154
- "destroy",
155
- UsersHandlerWithFilters.destroy,
156
- UsersHandlerWithFilters.before_filter,
157
- UsersHandlerWithFilters.after_filter,
158
- ],
159
- ],
160
- {}
161
- );
162
- });
163
71
  });
@@ -67,8 +67,6 @@ describe("routeMember", () => {
67
67
  "profile",
68
68
  "show",
69
69
  ProfileHandWithFiltersWithFilters.show,
70
- ProfileHandWithFiltersWithFilters.before_filter,
71
- ProfileHandWithFiltersWithFilters.after_filter,
72
70
  ],
73
71
  [
74
72
  "GET",
@@ -77,8 +75,6 @@ describe("routeMember", () => {
77
75
  "profile",
78
76
  "edit_form",
79
77
  ProfileHandWithFiltersWithFilters.edit_form,
80
- ProfileHandWithFiltersWithFilters.before_filter,
81
- ProfileHandWithFiltersWithFilters.after_filter,
82
78
  ],
83
79
  [
84
80
  "POST",
@@ -87,8 +83,6 @@ describe("routeMember", () => {
87
83
  "profile",
88
84
  "edit_form",
89
85
  ProfileHandWithFiltersWithFilters.update,
90
- ProfileHandWithFiltersWithFilters.before_filter,
91
- ProfileHandWithFiltersWithFilters.after_filter,
92
86
  ],
93
87
  ],
94
88
  {}