Fixed multi-value nested templating for opentsdb

This commit is contained in:
utkarshcmu 2016-11-03 01:18:01 -07:00
parent c138b04c5e
commit 849ac9441a
3 changed files with 20 additions and 1 deletions

View File

@ -145,6 +145,11 @@ describe('templateSrv', function() {
expect(result).to.be('test|test2');
});
it('multi value and distributed should render distributed string', function() {
var result = _templateSrv.formatValue(['test','test2'], 'distributed', { name: 'build' });
expect(result).to.be('test,build=test2');
});
it('slash should be properly escaped in regex format', function() {
var result = _templateSrv.formatValue('Gi3/14', 'regex');
expect(result).to.be('Gi3\\/14');

View File

@ -95,6 +95,9 @@ function (angular, _, kbn) {
}
return value.join('|');
}
case "distributed": {
return this.distributeVariable(value, variable.name);
}
default: {
if (typeof value === 'string') {
return value;
@ -210,6 +213,17 @@ function (angular, _, kbn) {
});
};
this.distributeVariable = function(value, variable) {
value = _.map(value, function(val, index) {
if (index !== 0) {
return variable + "=" + val;
} else {
return val;
}
});
return value.join(',');
};
});
});

View File

@ -244,7 +244,7 @@ function (angular, _, dateMath) {
var interpolated;
try {
interpolated = templateSrv.replace(query);
interpolated = templateSrv.replace(query, {}, "distributed");
}
catch (err) {
return $q.reject(err);