From 2bce71e9dc10c8588f9eb599a0cd2e831440fc48 Mon Sep 17 00:00:00 2001
From: Caitlin Potter
Date: Mon, 20 Jan 2014 20:59:21 -0500
Subject: feat(ngHref): bind ng-href to xlink:href for SVGAElement
This change makes the ngHref directive useful for SVGAElements by having it bind
to the xlink:href attribute rather than the href attribute.
Closes #5904
---
test/ng/directive/booleanAttrsSpec.js | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)
(limited to 'test')
diff --git a/test/ng/directive/booleanAttrsSpec.js b/test/ng/directive/booleanAttrsSpec.js
index 83bc75e5..2d800f5b 100644
--- a/test/ng/directive/booleanAttrsSpec.js
+++ b/test/ng/directive/booleanAttrsSpec.js
@@ -251,4 +251,28 @@ describe('ngHref', function() {
$rootScope.$digest();
expect(element.attr('href')).toEqual('http://server');
}));
+
+ if (isDefined(window.SVGElement)) {
+ describe('SVGAElement', function() {
+ it('should interpolate the expression and bind to xlink:href', inject(function($compile, $rootScope) {
+ element = $compile('')($rootScope);
+ var child = element.children('a');
+ $rootScope.$digest();
+ expect(child.attr('xlink:href')).toEqual('some/');
+
+ $rootScope.$apply(function() {
+ $rootScope.id = 1;
+ });
+ expect(child.attr('xlink:href')).toEqual('some/1');
+ }));
+
+
+ it('should bind xlink:href even if no interpolation', inject(function($rootScope, $compile) {
+ element = $compile('')($rootScope);
+ var child = element.children('a');
+ $rootScope.$digest();
+ expect(child.attr('xlink:href')).toEqual('http://server');
+ }));
+ });
+ }
});
--
cgit v1.2.3