Skip to content
This repository has been archived by the owner on Aug 29, 2023. It is now read-only.

md-tab compiled() and then digest() throws an error in unit tests #1850

Closed
Pyo25 opened this issue Mar 10, 2015 · 1 comment
Closed

md-tab compiled() and then digest() throws an error in unit tests #1850

Pyo25 opened this issue Mar 10, 2015 · 1 comment
Milestone

Comments

@Pyo25
Copy link

Pyo25 commented Mar 10, 2015

Hi guys,

I'm using Material Design in my app and now I'm writing unit tests using Jasmine & Karma.
When I try to compile and digest a md-tab component, it throws an error:

'undefined' is not a function (evaluating 'element.addClass.bind(element, 'md-tab-themed')')

Directive example: (I voluntary removed tab contents)

'use strict';

angular.module('ria.dev').directive('myDirective', function () {
  return {
    template: '<md-content style="height: 600px;">' +
      '<md-tabs md-selected="selectedIndex">' +
        '<md-tab label="hello"></md-tab>' +
      '</md-tabs>' +
  '</md-content>',
    restrict: 'E',
    controller: function($scope, $element) {
      $scope.selectedIndex = 0;
    }
  };
});

The Jasmine unit test is:

describe('MyDirective', function() {
  var $compile, $rootScope;

  beforeEach(module('ria.dev'));
  beforeEach(inject(function(_$compile_, _$rootScope_){
    $compile = _$compile_;
    $rootScope = _$rootScope_;
  }));

  describe('Fake Unit Test', function() {    
    beforeEach(function() {
      element = $compile(angular.element('<my-directive></my-directive>'))($rootScope);
      $rootScope.$digest();
      // the digest() method fails
    });

    it('should be true', function() {
      expect(true).toBe(true);
    });
  });
});

The error is: (this is the bind method that's undefined)

    TypeError: 'undefined' is not a function (evaluating 'element.addClass.bind(element, 'md-tab-themed')')
        at postLink (/xxx/bower_components/angular-material/angular-material.js:11071)
        at /xxx/bower_components/angular/angular.js:8213

And the corresponding line is:

$timeout(element.addClass.bind(element, 'md-tab-themed'), 0, false);

When I comment this line, everything goes better.

I use:

  • Angular.js v1.3.14
  • Angular-Material v0.8.3

Does anyone have an idea? :-)

PS: It works correctly in the browser.

@ThomasBurleson ThomasBurleson modified the milestone: 0.9.0 Mar 11, 2015
@robertmesserle robertmesserle self-assigned this Mar 12, 2015
robertmesserle added a commit that referenced this issue Mar 17, 2015
Closes #1850
Closes #1698
Closes #1570
Closes #1564
Closes #1518
Closes #1516
Closes #1506
Closes #1505
Closes #1403
Closes #1387
Closes #1380
Closes #1261
Closes #1247
Closes #1140
@ajoslin ajoslin added the in progress Mainly for in progress PRs, but may be used for issues that require multiple PRs label Mar 17, 2015
robertmesserle added a commit that referenced this issue Mar 18, 2015
Closes #1850
Closes #1698
Closes #1570
Closes #1564
Closes #1518
Closes #1516
Closes #1506
Closes #1505
Closes #1403
Closes #1387
Closes #1380
Closes #1261
Closes #1247
Closes #1140
robertmesserle added a commit that referenced this issue Mar 19, 2015
Closes #1850
Closes #1698
Closes #1570
Closes #1564
Closes #1518
Closes #1516
Closes #1506
Closes #1505
Closes #1403
Closes #1387
Closes #1380
Closes #1261
Closes #1247
Closes #1140
Closes #1626
robertmesserle added a commit that referenced this issue Mar 19, 2015
Closes #1087
Closes #1107
Closes #1140
Closes #1247
Closes #1261
Closes #1380
Closes #1387
Closes #1403
Closes #1443
Closes #1505
Closes #1506
Closes #1516
Closes #1518
Closes #1564
Closes #1570
Closes #1626
Closes #1698
Closes #1850
robertmesserle added a commit that referenced this issue Mar 19, 2015
Closes #1087
Closes #1107
Closes #1140
Closes #1247
Closes #1261
Closes #1380
Closes #1387
Closes #1403
Closes #1443
Closes #1505
Closes #1506
Closes #1516
Closes #1518
Closes #1564
Closes #1570
Closes #1626
Closes #1698
Closes #1777
Closes #1850
robertmesserle added a commit that referenced this issue Mar 19, 2015
Closes #1087
Closes #1107
Closes #1140
Closes #1247
Closes #1261
Closes #1380
Closes #1387
Closes #1403
Closes #1443
Closes #1505
Closes #1506
Closes #1516
Closes #1518
Closes #1564
Closes #1570
Closes #1620
Closes #1626
Closes #1698
Closes #1777
Closes #1850
robertmesserle added a commit that referenced this issue Mar 19, 2015
Closes #1087
Closes #1107
Closes #1140
Closes #1247
Closes #1261
Closes #1380
Closes #1387
Closes #1403
Closes #1443
Closes #1505
Closes #1506
Closes #1516
Closes #1518
Closes #1564
Closes #1570
Closes #1620
Closes #1626
Closes #1698
Closes #1777
Closes #1850
robertmesserle added a commit that referenced this issue Mar 20, 2015
Closes #1087
Closes #1107
Closes #1140
Closes #1247
Closes #1261
Closes #1380
Closes #1387
Closes #1403
Closes #1443
Closes #1505
Closes #1506
Closes #1516
Closes #1518
Closes #1564
Closes #1570
Closes #1620
Closes #1626
Closes #1698
Closes #1777
Closes #1788
Closes #1850
Closes #1959
robertmesserle added a commit that referenced this issue Mar 20, 2015
Closes #1087
Closes #1107
Closes #1140
Closes #1247
Closes #1261
Closes #1380
Closes #1387
Closes #1403
Closes #1443
Closes #1505
Closes #1506
Closes #1516
Closes #1518
Closes #1564
Closes #1570
Closes #1620
Closes #1626
Closes #1698
Closes #1777
Closes #1788
Closes #1850
Closes #1959
Closes #1986
robertmesserle added a commit that referenced this issue Mar 24, 2015
BREAKING CHANGE: Generated HTML structure has changed, so custom styles
will need to be updated to match the new HTML structure.

Closes #1087
Closes #1107
Closes #1140
Closes #1247
Closes #1261
Closes #1380
Closes #1387
Closes #1403
Closes #1443
Closes #1505
Closes #1506
Closes #1516
Closes #1518
Closes #1564
Closes #1570
Closes #1620
Closes #1626
Closes #1698
Closes #1777
Closes #1788
Closes #1850
Closes #1959
Closes #1986
robertmesserle added a commit that referenced this issue Mar 24, 2015
BREAKING CHANGE: Generated HTML structure has changed, so custom styles
will need to be updated to match the new HTML structure.

Closes #1087
Closes #1107
Closes #1140
Closes #1247
Closes #1261
Closes #1380
Closes #1387
Closes #1403
Closes #1443
Closes #1505
Closes #1506
Closes #1516
Closes #1518
Closes #1564
Closes #1570
Closes #1620
Closes #1626
Closes #1698
Closes #1777
Closes #1788
Closes #1850
Closes #1959
Closes #1986
robertmesserle added a commit that referenced this issue Mar 25, 2015
BREAKING CHANGE: Generated HTML structure has changed, so custom styles
will need to be updated to match the new HTML structure.

Closes #1087
Closes #1107
Closes #1140
Closes #1247
Closes #1261
Closes #1380
Closes #1387
Closes #1403
Closes #1443
Closes #1505
Closes #1506
Closes #1516
Closes #1518
Closes #1564
Closes #1570
Closes #1620
Closes #1626
Closes #1698
Closes #1777
Closes #1788
Closes #1850
Closes #1959
Closes #1986
robertmesserle added a commit that referenced this issue Mar 25, 2015
BREAKING CHANGE: Generated HTML structure has changed, so custom styles
will need to be updated to match the new HTML structure.

Closes #1087
Closes #1107
Closes #1140
Closes #1247
Closes #1261
Closes #1380
Closes #1387
Closes #1403
Closes #1443
Closes #1505
Closes #1506
Closes #1516
Closes #1518
Closes #1564
Closes #1570
Closes #1620
Closes #1626
Closes #1698
Closes #1777
Closes #1788
Closes #1850
Closes #1959
Closes #1986
Closes #2020
robertmesserle added a commit that referenced this issue Mar 26, 2015
BREAKING CHANGE: Generated HTML structure has changed, so custom styles
will need to be updated to match the new HTML structure.

Closes #1087
Closes #1107
Closes #1140
Closes #1247
Closes #1261
Closes #1380
Closes #1387
Closes #1403
Closes #1443
Closes #1505
Closes #1506
Closes #1516
Closes #1518
Closes #1564
Closes #1570
Closes #1620
Closes #1626
Closes #1698
Closes #1777
Closes #1788
Closes #1850
Closes #1959
Closes #1986
Closes #2020
@ajoslin ajoslin removed in progress Mainly for in progress PRs, but may be used for issues that require multiple PRs resolution: fixed labels Mar 26, 2015
@leonelgoncalves
Copy link

Hey, I'm having exactly this same issue but with the md-menu.
Material 1.1, Angular 1.5! anyone knows how to fix it?!

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants