aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorIgor Minar2012-08-10 22:24:42 -0700
committerIgor Minar2012-08-13 09:48:22 -0700
commit58f121a5c293ed57043e22ed526fdf99642fca81 (patch)
tree21c5dc33e83c9c06a9d28efd602e96b82fd059d2
parentcf6023ef2215ef9f7be970413763abb72253f179 (diff)
downloadangular.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.js40
-rw-r--r--test/ng/interpolateSpec.js10
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('))');
+ }));
});
});