Fix bug where number rendered as date (#116224)
This commit is contained in:
parent
8ce1c1f9bb
commit
8c6ef2054f
|
@ -376,7 +376,7 @@ export const exampleResult = {
|
|||
source: 'custom',
|
||||
},
|
||||
],
|
||||
schemaFields: {},
|
||||
schemaFields: { cats: 'text', dogs: 'text' },
|
||||
};
|
||||
|
||||
export const mostRecentIndexJob = {
|
||||
|
|
|
@ -45,6 +45,7 @@ describe('ExampleResultDetailCard', () => {
|
|||
...exampleResult,
|
||||
searchResultConfig: { detailFields: [{ fieldName: 'date', label: 'Date' }] },
|
||||
exampleDocuments: [{ date }],
|
||||
schemaFields: { date: 'date' },
|
||||
});
|
||||
const wrapper = shallow(<ExampleResultDetailCard />);
|
||||
|
||||
|
@ -52,4 +53,17 @@ describe('ExampleResultDetailCard', () => {
|
|||
new Date(Date.parse(date)).toLocaleString()
|
||||
);
|
||||
});
|
||||
|
||||
it('shows non-formatted value when not a date field', () => {
|
||||
const value = '9999';
|
||||
setMockValues({
|
||||
...exampleResult,
|
||||
searchResultConfig: { detailFields: [{ fieldName: 'value', label: 'Value' }] },
|
||||
exampleDocuments: [{ value }],
|
||||
schemaFields: { value: 'text' },
|
||||
});
|
||||
const wrapper = shallow(<ExampleResultDetailCard />);
|
||||
|
||||
expect(wrapper.find(EuiText).children().text()).toContain(value);
|
||||
});
|
||||
});
|
||||
|
|
|
@ -12,6 +12,7 @@ import { useValues } from 'kea';
|
|||
|
||||
import { EuiFlexGroup, EuiFlexItem, EuiSpacer, EuiText, EuiTitle } from '@elastic/eui';
|
||||
|
||||
import { SchemaType } from '../../../../../shared/schema/types';
|
||||
import { URL_LABEL } from '../../../../constants';
|
||||
import { getAsLocalDateTimeString } from '../../../../utils';
|
||||
|
||||
|
@ -26,6 +27,7 @@ export const ExampleResultDetailCard: React.FC = () => {
|
|||
titleFieldHover,
|
||||
urlFieldHover,
|
||||
exampleDocuments,
|
||||
schemaFields,
|
||||
} = useValues(DisplaySettingsLogic);
|
||||
|
||||
const result = exampleDocuments[0];
|
||||
|
@ -63,7 +65,8 @@ export const ExampleResultDetailCard: React.FC = () => {
|
|||
{detailFields.length > 0 ? (
|
||||
detailFields.map(({ fieldName, label }, index) => {
|
||||
const value = result[fieldName];
|
||||
const dateValue = getAsLocalDateTimeString(value);
|
||||
const fieldType = (schemaFields as { [key: string]: SchemaType })[fieldName];
|
||||
const dateValue = fieldType === SchemaType.Date && getAsLocalDateTimeString(value);
|
||||
|
||||
return (
|
||||
<div
|
||||
|
|
|
@ -47,7 +47,7 @@ import { ExampleResultDetailCard } from './example_result_detail_card';
|
|||
import { ResultDetail } from './result_detail';
|
||||
|
||||
describe('ResultDetail', () => {
|
||||
const { searchResultConfig, exampleDocuments } = exampleResult;
|
||||
const { searchResultConfig, exampleDocuments, schemaFields } = exampleResult;
|
||||
const availableFieldOptions = [
|
||||
{
|
||||
value: 'foo',
|
||||
|
@ -70,6 +70,7 @@ describe('ResultDetail', () => {
|
|||
searchResultConfig,
|
||||
availableFieldOptions,
|
||||
exampleDocuments,
|
||||
schemaFields,
|
||||
});
|
||||
});
|
||||
|
||||
|
@ -94,6 +95,7 @@ describe('ResultDetail', () => {
|
|||
},
|
||||
availableFieldOptions,
|
||||
exampleDocuments,
|
||||
schemaFields,
|
||||
});
|
||||
const wrapper = shallow(<ResultDetail />);
|
||||
|
||||
|
@ -122,6 +124,7 @@ describe('ResultDetail', () => {
|
|||
},
|
||||
availableFieldOptions,
|
||||
exampleDocuments,
|
||||
schemaFields,
|
||||
});
|
||||
const wrapper = mount(<ResultDetail />);
|
||||
|
||||
|
|
Loading…
Reference in a new issue