fix(sqllab): missing zero values while copy-to-clipboard (#21153)

This commit is contained in:
JUST.in DO IT 2022-08-26 14:28:48 -07:00 committed by GitHub
parent d41f44fcdf
commit 4e23d62d4f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 11 additions and 1 deletions

View File

@ -97,7 +97,7 @@ export function prepareCopyToClipboardTabularData(data, columns) {
// JavaScript does not maintain the order of a mixed set of keys (i.e integers and strings)
// the below function orders the keys based on the column names.
const key = columns[j].name || columns[j];
if (data[i][key]) {
if (key in data[i]) {
row[j] = data[i][key];
} else {
row[j] = data[i][parseFloat(key)];

View File

@ -59,6 +59,16 @@ describe('utils/common', () => {
'lorem\tipsum\t\ndolor\tsit\tamet\n',
);
});
it('includes 0 values', () => {
const array = [
{ column1: 0, column2: 0 },
{ column1: 1, column2: -1, 0: 0 },
];
const column = ['column1', 'column2', '0'];
expect(prepareCopyToClipboardTabularData(array, column)).toEqual(
'0\t0\t\n1\t-1\t0\n',
);
});
});
describe('applyFormattingToTabularData', () => {
it('does not mutate empty array', () => {