@truedat/audit 8.12.4 → 8.12.6

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 CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@truedat/audit",
3
- "version": "8.12.4",
3
+ "version": "8.12.6",
4
4
  "description": "Truedat Web Audit Module",
5
5
  "sideEffects": false,
6
6
  "module": "src/index.js",
@@ -54,7 +54,7 @@
54
54
  "@testing-library/jest-dom": "^6.6.3",
55
55
  "@testing-library/react": "^16.3.0",
56
56
  "@testing-library/user-event": "^14.6.1",
57
- "@truedat/test": "8.12.4",
57
+ "@truedat/test": "8.12.6",
58
58
  "identity-obj-proxy": "^3.0.0",
59
59
  "jest": "^29.7.0",
60
60
  "redux-saga-test-plan": "^4.0.6"
@@ -86,5 +86,5 @@
86
86
  "semantic-ui-react": "^3.0.0-beta.2",
87
87
  "swr": "^2.3.3"
88
88
  },
89
- "gitHead": "d5bc1af84c4d828bdec676b0da58385cf0d6015f"
89
+ "gitHead": "fe7375c2d3c6ebdaf3dacd985f56433eda477712"
90
90
  }
@@ -64,15 +64,16 @@ describe("<SubscriptionForm />", () => {
64
64
  expect(rendered.container).toMatchSnapshot();
65
65
  });
66
66
 
67
- it("test SubscriptionForm functionality", async () => {
68
- const onSubmit = jest.fn();
69
- const props = { onSubmit };
70
- const rendered = render(
67
+ const renderWithSearchContext = (props = {}) =>
68
+ render(
71
69
  <SearchContextWrapper props={searchProps}>
72
70
  <SubscriptionForm {...props} />
73
71
  </SearchContextWrapper>,
74
72
  renderOpts,
75
73
  );
74
+
75
+ it("switches between role and email subscribers", async () => {
76
+ const rendered = renderWithSearchContext();
76
77
  await waitForLoad(rendered);
77
78
 
78
79
  const user = userEvent.setup({ delay: null });
@@ -81,88 +82,75 @@ describe("<SubscriptionForm />", () => {
81
82
  rendered.getByRole("button", { name: "actions.save" }),
82
83
  ).toBeDisabled();
83
84
 
84
- // Select role
85
85
  await user.click(rendered.getByText("role"));
86
-
87
- await waitFor(() =>
88
- expect(
89
- rendered.getByText(/role.search.placeholder/i),
90
- ).toBeInTheDocument(),
91
- );
92
-
93
86
  await user.click(await rendered.findByText(/role2/i));
94
87
 
95
- // Select email
96
88
  await user.click(rendered.getByText(/email/i));
89
+ const emailInput = (
90
+ await rendered.findByTestId("email-input")
91
+ ).querySelector("input");
92
+ await user.clear(emailInput);
93
+ await user.type(emailInput, "foo");
94
+ expect(emailInput).toHaveValue("foo");
95
+ });
97
96
 
98
- await waitFor(() =>
99
- expect(rendered.getByTestId("email-input")).toBeInTheDocument(),
100
- );
97
+ it("removes the concept selector when switching to a taxonomy role", async () => {
98
+ const rendered = renderWithSearchContext();
99
+ await waitForLoad(rendered);
101
100
 
102
- await user.type(rendered.getByTestId("email-input"), "foo");
101
+ const user = userEvent.setup({ delay: null });
103
102
 
104
- // Select concept and taxonomy_role
105
103
  await user.click(rendered.getByText("concept"));
106
-
107
- await waitFor(
108
- () =>
109
- expect(
110
- rendered.getByText(/concepts.search.results.empty/i),
111
- ).toBeInTheDocument(),
112
- { timeout: 5000 },
113
- );
114
-
115
- await user.click(rendered.getByText("taxonomy_role"));
116
-
117
104
  await waitFor(() =>
118
105
  expect(
119
- rendered.getByText(/role.search.placeholder/i),
106
+ rendered.getByText(/concepts.search.results.empty/i),
120
107
  ).toBeInTheDocument(),
121
108
  );
122
109
 
123
- // Wait for concepts.search.results.empty to disappear
110
+ await user.click(rendered.getByText("taxonomy_role"));
124
111
  await rendered.findByText(/role2/i);
125
- expect(rendered.queryByText(/concepts.search.results.empty/i)).toBeFalsy();
126
-
127
- await user.click(await rendered.findByText(/role2/i));
128
-
129
- // Select user
130
- await user.click(rendered.getByText(/user/i));
112
+ expect(rendered.queryByText(/concepts.search.results.empty/i)).toBeNull();
113
+ await user.click(rendered.getByText(/role2/i));
114
+ });
131
115
 
132
- await waitFor(
133
- () =>
134
- expect(
135
- rendered.getByText(/user.search.placeholder/i),
136
- ).toBeInTheDocument(),
137
- { timeout: 5000 },
138
- );
116
+ it("shows empty concept and structure selectors", async () => {
117
+ const rendered = renderWithSearchContext();
118
+ await waitForLoad(rendered);
139
119
 
140
- await user.click(await rendered.findByText(/user2/i));
120
+ const user = userEvent.setup({ delay: null });
141
121
 
142
- // Test concepts
143
122
  await user.click(rendered.getByText("concept"));
144
-
145
123
  await waitFor(() =>
146
124
  expect(
147
125
  rendered.getByText(/concepts.search.results.empty/i),
148
126
  ).toBeInTheDocument(),
149
127
  );
150
128
 
151
- // Test structures
152
129
  await user.click(rendered.getByText(/structure/i));
130
+ await waitFor(() =>
131
+ expect(
132
+ rendered.getByText(/structures.not_found.body/i),
133
+ ).toBeInTheDocument(),
134
+ );
135
+ expect(rendered.container.querySelector(".loading")).toBeNull();
136
+ });
153
137
 
154
- // Wait for loading to disappear
155
- await waitFor(
156
- () =>
157
- expect(
158
- rendered.getByText(/structures.not_found.body/i),
159
- ).toBeInTheDocument(),
160
- { timeout: 5000 },
138
+ it("submits a subscription for a user and domain", async () => {
139
+ const onSubmit = jest.fn();
140
+ const rendered = render(
141
+ <SubscriptionForm onSubmit={onSubmit} />,
142
+ renderOpts,
161
143
  );
144
+ await waitForLoad(rendered);
162
145
 
163
- expect(rendered.container.querySelector(".loading")).toBeNull();
146
+ const user = userEvent.setup({ delay: null });
164
147
 
165
- // Select domains
148
+ expect(
149
+ rendered.getByRole("button", { name: "actions.save" }),
150
+ ).toBeDisabled();
151
+
152
+ await user.click(rendered.getByText(/user/i));
153
+ await user.click(await rendered.findByText(/user2/i));
166
154
  await user.click(rendered.getByText(/domains/i));
167
155
 
168
156
  await waitFor(() =>