Skip to content

Commit b0552e4

Browse files
authored
fixing timestamp type for message content (#1821)
* fixing timestamp type for message content * adding test cases to improve coverage * fixing test cases names * removing testId from test cases
1 parent e9260cf commit b0552e4

File tree

2 files changed

+46
-1
lines changed

2 files changed

+46
-1
lines changed

kafka-ui-react-app/src/components/Topics/Topic/Details/Messages/MessageContent/MessageContent.tsx

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ import React from 'react';
33
import EditorViewer from 'components/common/EditorViewer/EditorViewer';
44
import { SecondaryTabs } from 'components/common/Tabs/SecondaryTabs.styled';
55
import BytesFormatted from 'components/common/BytesFormatted/BytesFormatted';
6+
import dayjs from 'dayjs';
67

78
import * as S from './MessageContent.styled';
89

@@ -94,7 +95,9 @@ const MessageContent: React.FC<MessageContentProps> = ({
9495
<S.Metadata>
9596
<S.MetadataLabel>Timestamp</S.MetadataLabel>
9697
<span>
97-
<S.MetadataValue>{timestamp?.toLocaleString()}</S.MetadataValue>
98+
<S.MetadataValue>
99+
{dayjs(timestamp).format('MM.DD.YYYY HH:mm:ss')}
100+
</S.MetadataValue>
98101
<S.MetadataMeta>Timestamp type: {timestampType}</S.MetadataMeta>
99102
</span>
100103
</S.Metadata>

kafka-ui-react-app/src/components/Topics/Topic/Details/Messages/MessageContent/__tests__/MessageContent.spec.tsx

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,9 @@ const setupWrapper = (props?: Partial<MessageContentProps>) => {
2828
);
2929
};
3030

31+
const proto =
32+
'syntax = "proto3";\npackage com.provectus;\n\nmessage TestProtoRecord {\n string f1 = 1;\n int32 f2 = 2;\n}\n';
33+
3134
global.TextEncoder = TextEncoder;
3235

3336
describe('MessageContent screen', () => {
@@ -78,3 +81,42 @@ describe('MessageContent screen', () => {
7881
});
7982
});
8083
});
84+
85+
describe('checking content type depend on message type', () => {
86+
it('renders component with message having JSON type', () => {
87+
render(
88+
setupWrapper({
89+
messageContentFormat: 'JSON',
90+
messageContent: '{"data": "test"}',
91+
})
92+
);
93+
expect(screen.getAllByText('JSON')[1]).toBeInTheDocument();
94+
});
95+
it('renders component with message having AVRO type', () => {
96+
render(
97+
setupWrapper({
98+
messageContentFormat: 'AVRO',
99+
messageContent: '{"data": "test"}',
100+
})
101+
);
102+
expect(screen.getByText('AVRO')).toBeInTheDocument();
103+
});
104+
it('renders component with message having PROTOBUF type', () => {
105+
render(
106+
setupWrapper({
107+
messageContentFormat: 'PROTOBUF',
108+
messageContent: proto,
109+
})
110+
);
111+
expect(screen.getByText('PROTOBUF')).toBeInTheDocument();
112+
});
113+
it('renders component with message having no type which is equal to having PROTOBUF type', () => {
114+
render(
115+
setupWrapper({
116+
messageContentFormat: 'PROTOBUF',
117+
messageContent: '',
118+
})
119+
);
120+
expect(screen.getByText('PROTOBUF')).toBeInTheDocument();
121+
});
122+
});

0 commit comments

Comments
 (0)