From 0df23b7f08c2e2944f7d5fd2419bffe3cda4be77 Mon Sep 17 00:00:00 2001 From: Wesley Cho Date: Sat, 3 Oct 2015 09:24:06 -0700 Subject: [PATCH] fix(accordion): re-expose AccordionController - Expose `AccordionController` with deprecation message --- src/accordion/accordion.js | 13 ++++++++++++- src/accordion/test/accordion.spec.js | 10 +++++----- 2 files changed, 17 insertions(+), 6 deletions(-) diff --git a/src/accordion/accordion.js b/src/accordion/accordion.js index 317ca489b3..93a71eeb45 100644 --- a/src/accordion/accordion.js +++ b/src/accordion/accordion.js @@ -135,10 +135,21 @@ angular.module('ui.bootstrap.accordion') .value('$accordionSuppressWarning', false) + .controller('AccordionController', ['$scope', '$attrs', '$controller', '$log', '$accordionSuppressWarning', function($scope, $attrs, $controller, $log, $accordionSuppressWarning) { + if (!$accordionSuppressWarning) { + $log.warn('AccordionController is now deprecated. Use UibAccordionController instead.'); + } + + angular.extend(this, $controller('UibAccordionController', { + $scope: $scope, + $attrs: $attrs + })); + }]) + .directive('accordion', ['$log', '$accordionSuppressWarning', function($log, $accordionSuppressWarning) { return { restrict: 'EA', - controller: 'UibAccordionController', + controller: 'AccordionController', controllerAs: 'accordion', transclude: true, replace: false, diff --git a/src/accordion/test/accordion.spec.js b/src/accordion/test/accordion.spec.js index 5bc720eff6..f7b669b279 100644 --- a/src/accordion/test/accordion.spec.js +++ b/src/accordion/test/accordion.spec.js @@ -12,7 +12,6 @@ describe('uib-accordion', function() { })); describe('controller', function () { - var ctrl, $element, $attrs; beforeEach(inject(function($controller) { $attrs = {}; @@ -627,9 +626,10 @@ describe('accordion deprecation', function() { element = $compile(element)($rootScope); $rootScope.$digest(); - expect($log.warn.calls.count()).toBe(3); - expect($log.warn.calls.argsFor(0)).toEqual(['accordion-heading is now deprecated. Use uib-accordion-heading instead.']); - expect($log.warn.calls.argsFor(1)).toEqual(['accordion-group is now deprecated. Use uib-accordion-group instead.']); - expect($log.warn.calls.argsFor(2)).toEqual(['accordion is now deprecated. Use uib-accordion instead.']); + expect($log.warn.calls.count()).toBe(4); + expect($log.warn.calls.argsFor(0)).toEqual(['AccordionController is now deprecated. Use UibAccordionController instead.']); + expect($log.warn.calls.argsFor(1)).toEqual(['accordion-heading is now deprecated. Use uib-accordion-heading instead.']); + expect($log.warn.calls.argsFor(2)).toEqual(['accordion-group is now deprecated. Use uib-accordion-group instead.']); + expect($log.warn.calls.argsFor(3)).toEqual(['accordion is now deprecated. Use uib-accordion instead.']); })); });