mirror of
https://github.com/open-metadata/OpenMetadata.git
synced 2025-10-03 21:03:48 +00:00
fix profile redirection issue for displayname (#21624)
(cherry picked from commit d529c9fe9d990504abf74ded53356450cbedeec2)
This commit is contained in:
parent
ec3eda8ae0
commit
b60898daff
@ -310,11 +310,11 @@ const ActivityFeedCardNew = ({
|
|||||||
) : (
|
) : (
|
||||||
<div className="d-flex gap-2">
|
<div className="d-flex gap-2">
|
||||||
<div>
|
<div>
|
||||||
<UserPopOverCard userName={getEntityName(currentUser)}>
|
<UserPopOverCard userName={currentUser?.name ?? ''}>
|
||||||
<div className="d-flex items-center">
|
<div className="d-flex items-center">
|
||||||
<ProfilePicture
|
<ProfilePicture
|
||||||
key={feed.id}
|
key={feed.id}
|
||||||
name={getEntityName(currentUser)}
|
name={currentUser?.name ?? ''}
|
||||||
width="32"
|
width="32"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
@ -958,20 +958,16 @@ export const TaskTabNew = ({
|
|||||||
{taskThread?.task?.assignees?.length === 1 ? (
|
{taskThread?.task?.assignees?.length === 1 ? (
|
||||||
<div className="d-flex items-center gap-2">
|
<div className="d-flex items-center gap-2">
|
||||||
<UserPopOverCard
|
<UserPopOverCard
|
||||||
userName={
|
userName={taskThread?.task?.assignees[0].name ?? ''}>
|
||||||
taskThread?.task?.assignees[0].displayName ?? ''
|
|
||||||
}>
|
|
||||||
<div className="d-flex items-center">
|
<div className="d-flex items-center">
|
||||||
<ProfilePicture
|
<ProfilePicture
|
||||||
name={
|
name={taskThread?.task?.assignees[0].name ?? ''}
|
||||||
taskThread?.task?.assignees[0].displayName ?? ''
|
|
||||||
}
|
|
||||||
width="24"
|
width="24"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</UserPopOverCard>
|
</UserPopOverCard>
|
||||||
<Typography.Text className="text-grey-body">
|
<Typography.Text className="text-grey-body">
|
||||||
{taskThread?.task?.assignees[0].displayName}
|
{getEntityName(taskThread?.task?.assignees[0])}
|
||||||
</Typography.Text>
|
</Typography.Text>
|
||||||
</div>
|
</div>
|
||||||
) : (
|
) : (
|
||||||
@ -1132,11 +1128,11 @@ export const TaskTabNew = ({
|
|||||||
taskThread?.task?.status === ThreadTaskStatus.Open && (
|
taskThread?.task?.status === ThreadTaskStatus.Open && (
|
||||||
<div className="d-flex gap-2">
|
<div className="d-flex gap-2">
|
||||||
<div className="profile-picture">
|
<div className="profile-picture">
|
||||||
<UserPopOverCard userName={getEntityName(currentUser)}>
|
<UserPopOverCard userName={currentUser?.name ?? ''}>
|
||||||
<div className="d-flex items-center">
|
<div className="d-flex items-center">
|
||||||
<ProfilePicture
|
<ProfilePicture
|
||||||
key={taskThread.id}
|
key={taskThread.id}
|
||||||
name={getEntityName(currentUser)}
|
name={currentUser?.name ?? ''}
|
||||||
width="32"
|
width="32"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
@ -145,17 +145,16 @@ const TaskTabIncidentManagerHeaderNew = ({ thread }: { thread: Thread }) => {
|
|||||||
<Col className="flex items-center gap-2" span={16}>
|
<Col className="flex items-center gap-2" span={16}>
|
||||||
{thread?.task?.assignees?.length === 1 ? (
|
{thread?.task?.assignees?.length === 1 ? (
|
||||||
<div className="d-flex items-center gap-2">
|
<div className="d-flex items-center gap-2">
|
||||||
<UserPopOverCard
|
<UserPopOverCard userName={thread?.task?.assignees[0].name ?? ''}>
|
||||||
userName={thread?.task?.assignees[0].displayName ?? ''}>
|
|
||||||
<div className="d-flex items-center">
|
<div className="d-flex items-center">
|
||||||
<ProfilePicture
|
<ProfilePicture
|
||||||
name={thread?.task?.assignees[0].displayName ?? ''}
|
name={thread?.task?.assignees[0].name ?? ''}
|
||||||
width="24"
|
width="24"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</UserPopOverCard>
|
</UserPopOverCard>
|
||||||
<Typography.Text className="text-grey-body">
|
<Typography.Text className="text-grey-body">
|
||||||
{thread?.task?.assignees[0].displayName}
|
{getEntityName(thread?.task?.assignees[0])}
|
||||||
</Typography.Text>
|
</Typography.Text>
|
||||||
</div>
|
</div>
|
||||||
) : (
|
) : (
|
||||||
|
@ -239,7 +239,7 @@ const ProfileSectionUserDetailsCard = ({
|
|||||||
</Popover>
|
</Popover>
|
||||||
|
|
||||||
<div className="m-t-sm">
|
<div className="m-t-sm">
|
||||||
<UserPopOverCard userName={getEntityName(userData)}>
|
<UserPopOverCard userName={userData?.name}>
|
||||||
<div className="d-flex items-center">
|
<div className="d-flex items-center">
|
||||||
<ProfilePicture
|
<ProfilePicture
|
||||||
data-testid="replied-user"
|
data-testid="replied-user"
|
||||||
|
@ -85,6 +85,11 @@ jest.mock('../ProfilePicture/ProfilePicture', () => {
|
|||||||
return jest.fn().mockImplementation(() => <div>ProfilePicture</div>);
|
return jest.fn().mockImplementation(() => <div>ProfilePicture</div>);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
const mockPush = jest.fn();
|
||||||
|
(useHistory as jest.Mock).mockImplementation(() => ({
|
||||||
|
push: mockPush,
|
||||||
|
}));
|
||||||
|
|
||||||
describe('Test UserPopOverCard components', () => {
|
describe('Test UserPopOverCard components', () => {
|
||||||
describe('UserTeams Component', () => {
|
describe('UserTeams Component', () => {
|
||||||
it('should render teams when teams are available', () => {
|
it('should render teams when teams are available', () => {
|
||||||
@ -195,6 +200,27 @@ describe('Test UserPopOverCard components', () => {
|
|||||||
expect(screen.getByText('testUser')).toBeInTheDocument();
|
expect(screen.getByText('testUser')).toBeInTheDocument();
|
||||||
});
|
});
|
||||||
|
|
||||||
|
it('should navigate using name instead of display name when clicking display name in tooltip', () => {
|
||||||
|
(useUserProfile as jest.Mock).mockImplementation(() => [
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
mockUserData,
|
||||||
|
]);
|
||||||
|
|
||||||
|
render(
|
||||||
|
<PopoverTitle
|
||||||
|
profilePicture={<div>ProfilePicture</div>}
|
||||||
|
type={OwnerType.USER}
|
||||||
|
userName="testUser"
|
||||||
|
/>
|
||||||
|
);
|
||||||
|
|
||||||
|
const displayNameButton = screen.getByText('Test User');
|
||||||
|
displayNameButton.click();
|
||||||
|
|
||||||
|
expect(mockPush).toHaveBeenCalledWith('/users/testUser');
|
||||||
|
});
|
||||||
|
|
||||||
it('should handle click on user name', () => {
|
it('should handle click on user name', () => {
|
||||||
const mockPush = jest.fn();
|
const mockPush = jest.fn();
|
||||||
(useHistory as jest.Mock).mockImplementationOnce(() => ({
|
(useHistory as jest.Mock).mockImplementationOnce(() => ({
|
||||||
|
Loading…
x
Reference in New Issue
Block a user