diff options
| author | Igor Minar | 2012-08-10 22:24:42 -0700 |
|---|---|---|
| committer | Igor Minar | 2012-08-13 09:48:22 -0700 |
| commit | 58f121a5c293ed57043e22ed526fdf99642fca81 (patch) | |
| tree | 21c5dc33e83c9c06a9d28efd602e96b82fd059d2 | |
| parent | cf6023ef2215ef9f7be970413763abb72253f179 (diff) | |
| download | angular.js-58f121a5c293ed57043e22ed526fdf99642fca81.tar.bz2 | |
feat($interpolate): expose start/end symbols in run phase
previously the startSymbol() and endSymbol() getters were exposed only via provider
in the config phase
| -rw-r--r-- | src/ng/interpolate.js | 40 | ||||
| -rw-r--r-- | test/ng/interpolateSpec.js | 10 |
2 files changed, 48 insertions, 2 deletions
diff --git a/src/ng/interpolate.js b/src/ng/interpolate.js index 3011e8c6..149f0c86 100644 --- a/src/ng/interpolate.js +++ b/src/ng/interpolate.js @@ -89,7 +89,7 @@ function $InterpolateProvider() { * against. * */ - return function(text, mustHaveExpression) { + function $interpolate(text, mustHaveExpression) { var startIndex, endIndex, index = 0, @@ -141,7 +141,43 @@ function $InterpolateProvider() { fn.parts = parts; return fn; } - }; + } + + + /** + * @ngdoc method + * @name ng.$interpolate#startSymbol + * @methodOf ng.$interpolate + * @description + * Symbol to denote the start of expression in the interpolated string. Defaults to `{{`. + * + * Use {@link ng.$interpolateProvider#startSymbol $interpolateProvider#startSymbol} to change + * the symbol. + * + * @returns {string} start symbol. + */ + $interpolate.startSymbol = function() { + return startSymbol; + } + + + /** + * @ngdoc method + * @name ng.$interpolate#endSymbol + * @methodOf ng.$interpolate + * @description + * Symbol to denote the end of expression in the interpolated string. Defaults to `}}`. + * + * Use {@link ng.$interpolateProvider#endSymbol $interpolateProvider#endSymbol} to change + * the symbol. + * + * @returns {string} start symbol. + */ + $interpolate.endSymbol = function() { + return endSymbol; + } + + return $interpolate; }]; } diff --git a/test/ng/interpolateSpec.js b/test/ng/interpolateSpec.js index 88e4ae75..20214445 100644 --- a/test/ng/interpolateSpec.js +++ b/test/ng/interpolateSpec.js @@ -113,6 +113,11 @@ describe('$interpolate', function() { })); + it('should expose the startSymbol in run phase', inject(function($interpolate) { + expect($interpolate.startSymbol()).toBe('(('); + })); + + it('should not get confused by matching start and end symbols', function() { module(function($interpolateProvider) { $interpolateProvider.startSymbol('--'); @@ -139,5 +144,10 @@ describe('$interpolate', function() { it('should expose the endSymbol in config phase', module(function($interpolateProvider) { expect($interpolateProvider.endSymbol()).toBe('))'); })); + + + it('should expose the endSymbol in run phase', inject(function($interpolate) { + expect($interpolate.endSymbol()).toBe('))'); + })); }); }); |
