Skip to content

Commit 7e8383f

Browse files
committed
removed code coverage disable statement
1 parent b12be01 commit 7e8383f

File tree

2 files changed

+41
-25
lines changed

2 files changed

+41
-25
lines changed

src/screens/UserPortal/People/People.spec.tsx

Lines changed: 21 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1254,7 +1254,7 @@ describe('People Component Additional Coverage Tests', () => {
12541254
data: {
12551255
organizations: [
12561256
{
1257-
__typename: 'Organization', // Add typename to match actual response
1257+
__typename: 'Organization',
12581258
_id: 'org-1',
12591259
admins: [
12601260
{
@@ -1311,26 +1311,36 @@ describe('People Component Additional Coverage Tests', () => {
13111311
</MockedProvider>,
13121312
);
13131313

1314-
// Wait for initial members data to load
1314+
// Wait for initial data to load and verify member is shown
13151315
await waitFor(() => {
13161316
expect(screen.getByText('Test Member')).toBeInTheDocument();
13171317
});
13181318

1319-
// Switch to admin mode before admin data is available
1320-
userEvent.click(screen.getByTestId('modeChangeBtn'));
1321-
await waitFor(() => {
1322-
userEvent.click(screen.getByTestId('modeBtn1'));
1319+
// Use act to wrap state changes
1320+
await act(async () => {
1321+
// Open dropdown
1322+
fireEvent.click(screen.getByTestId('modeChangeBtn'));
1323+
// Wait for dropdown to open
1324+
await waitFor(() => {
1325+
expect(screen.getByTestId('modeBtn1')).toBeInTheDocument();
1326+
});
1327+
// Click admin mode button
1328+
fireEvent.click(screen.getByTestId('modeBtn1'));
13231329
});
13241330

1325-
// Initially there should be no members shown as we're waiting for admin data
1326-
expect(screen.queryByText('Test Member')).not.toBeInTheDocument();
1331+
// Wait for admin data to finish loading
1332+
await waitFor(
1333+
() => {
1334+
// Verify the member is no longer shown
1335+
expect(screen.queryByText('Test Member')).not.toBeInTheDocument();
1336+
},
1337+
{ timeout: 2000 },
1338+
);
13271339

1328-
// Wait for admin data to load and verify it appears
1340+
// Wait for admin data to load and verify admin appears
13291341
await waitFor(
13301342
() => {
1331-
// Check for the admin's name (firstName + lastName)
13321343
expect(screen.getByText('Admin Test')).toBeInTheDocument();
1333-
// Also verify that the admin role is displayed
13341344
expect(screen.getByText('Admin')).toBeInTheDocument();
13351345
},
13361346
{ timeout: 2000 },

src/screens/UserPortal/People/People.tsx

Lines changed: 20 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -149,17 +149,27 @@ export default function people(): JSX.Element {
149149
}
150150
}
151151
useEffect(() => {
152-
if (mode === 0 && data) {
153-
setMembers(allMembers);
154-
} else if (mode === 1) {
155-
// Clear members immediately when switching to admin mode
152+
if (mode === 1) {
153+
// Admin mode
154+
// Immediately clear current members when switching to admin mode
156155
setMembers([]);
157-
// Then update with admin data when it's available
158-
if (data2) {
159-
setMembers(admins);
156+
// Only set admin members if we have the data
157+
if (data2 && data2.organizations[0]?.admins) {
158+
const adminMembers = data2.organizations[0].admins.map(
159+
(admin: InterfaceMember) => ({
160+
...admin,
161+
userType: 'Admin',
162+
}),
163+
);
164+
setMembers(adminMembers);
165+
}
166+
} else if (mode === 0) {
167+
// All members mode
168+
if (data && data.organizationsMemberConnection) {
169+
setMembers(allMembers);
160170
}
161171
}
162-
}, [mode, data, data2, allMembers, admins]);
172+
}, [mode, data, data2, allMembers]);
163173

164174
return (
165175
<>
@@ -238,8 +248,7 @@ export default function people(): JSX.Element {
238248
page * rowsPerPage,
239249
page * rowsPerPage + rowsPerPage,
240250
)
241-
: /* istanbul ignore next */
242-
members
251+
: members
243252
).map((member: InterfaceMember, index) => {
244253
const name = `${member.firstName} ${member.lastName}`;
245254

@@ -263,10 +272,7 @@ export default function people(): JSX.Element {
263272
<tbody>
264273
<tr>
265274
<PaginationList
266-
count={
267-
/* istanbul ignore next */
268-
members ? members.length : 0
269-
}
275+
count={members ? members.length : 0}
270276
rowsPerPage={rowsPerPage}
271277
page={page}
272278
onPageChange={handleChangePage}

0 commit comments

Comments
 (0)