Commit d94bdb93 by Eduard Sergeev Committed by Torkel Ödegaard

Templating: Correctly display __text in multi-values variable (#17840)

Fixes #17839: __value is displayed instead of __text when single item is selected
parent 0833f26b
......@@ -601,7 +601,7 @@ describe('VariableSrv', function(this: any) {
it('sets single value as array if multi choice', async () => {
const [setValueMock, setFromUrl] = setupSetFromUrlTest(ctx, { multi: true });
await setFromUrl('one');
expect(setValueMock).toHaveBeenCalledWith({ text: 'one', value: ['one'] });
expect(setValueMock).toHaveBeenCalledWith({ text: ['one'], value: ['one'] });
});
it('sets both text and value as array if multiple values in url', async () => {
......
......@@ -261,7 +261,7 @@ export class VariableSrv {
if (variable.multi) {
// In case variable is multiple choice, we cast to array to preserve the same behaviour as when selecting
// the option directly, which will return even single value in an array.
option = { ...option, value: _.castArray(option.value) };
option = { text: _.castArray(option.text), value: _.castArray(option.value) };
}
return variable.setValue(option);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment