Commit bd21a08b by Torkel Ödegaard

fix(templating): fixed encoding of all value for regex, and custom all value,…

fix(templating): fixed encoding of all value for regex, and custom all value, fixes #4755, fixes #4736
parent 99ae38a2
# 3.0.0-beta6 (unreleased)
### Bug fixes
* **InfluxDB 0.12**: Fixed issue templating and `show tag values` query only returning tags for first measurement, fixes [#4726](https://github.com/grafana/grafana/issues/4726)
* **Templating**: Fixed issue with regex formating when matching multiple values, fixes [#4755](https://github.com/grafana/grafana/issues/4755)
* **Templating**: Fixed issue with custom all value and escaping, fixes [#4736](https://github.com/grafana/grafana/issues/4736)
# 3.0.0-beta5 (2016-04-15) # 3.0.0-beta5 (2016-04-15)
### Bug fixes ### Bug fixes
......
...@@ -57,7 +57,7 @@ function (angular, _) { ...@@ -57,7 +57,7 @@ function (angular, _) {
} }
var escapedValues = _.map(value, regexEscape); var escapedValues = _.map(value, regexEscape);
return escapedValues.join('|'); return '(' + escapedValues.join('|') + ')';
} }
case "lucene": { case "lucene": {
if (typeof value === 'string') { if (typeof value === 'string') {
...@@ -152,6 +152,10 @@ function (angular, _) { ...@@ -152,6 +152,10 @@ function (angular, _) {
value = variable.current.value; value = variable.current.value;
if (self.isAllValue(value)) { if (self.isAllValue(value)) {
value = self.getAllValue(variable); value = self.getAllValue(variable);
// skip formating of custom all values
if (variable.allValue) {
return value;
}
} }
var res = self.formatValue(value, format, variable); var res = self.formatValue(value, format, variable);
......
...@@ -99,6 +99,11 @@ define([ ...@@ -99,6 +99,11 @@ define([
var target = _templateSrv.replace('this.$test.filters', {}, 'glob'); var target = _templateSrv.replace('this.$test.filters', {}, 'glob');
expect(target).to.be('this.*.filters'); expect(target).to.be('this.*.filters');
}); });
it('should not escape custom all value', function() {
var target = _templateSrv.replace('this.$test', {}, 'regex');
expect(target).to.be('this.*');
});
}); });
describe('lucene format', function() { describe('lucene format', function() {
...@@ -127,7 +132,7 @@ define([ ...@@ -127,7 +132,7 @@ define([
it('multi value and regex format should render regex string', function() { it('multi value and regex format should render regex string', function() {
var result = _templateSrv.formatValue(['test.','test2'], 'regex'); var result = _templateSrv.formatValue(['test.','test2'], 'regex');
expect(result).to.be('test\\.|test2'); expect(result).to.be('(test\\.|test2)');
}); });
it('multi value and pipe should render pipe string', function() { it('multi value and pipe should render pipe string', function() {
......
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