-
Notifications
You must be signed in to change notification settings - Fork 1.2k
/
Copy pathoauth-buttons.component.spec.js
67 lines (57 loc) · 2.54 KB
/
oauth-buttons.component.spec.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
'use strict';
import { ComponentFixture, TestBed } from '@angular/core/testing';
import { By } from '@angular/platform-browser';
import { DebugElement } from '@angular/core';
<%_ if(filters.mocha && filters.expect) { -%>
import { expect } from 'chai';<% } %>
import { OauthButtonsComponent } from './oauth-buttons.component';
describe('Component: OauthButtonsComponent', () => {
let comp: OauthButtonsComponent;
let fixture: ComponentFixture<OauthButtonsComponent>;
let de: DebugElement;
let el: HTMLElement;
beforeEach(() => {
TestBed.configureTestingModule({
declarations: [ OauthButtonsComponent ], // declare the test component
});
fixture = TestBed.createComponent(OauthButtonsComponent);
comp = fixture.componentInstance; // OauthButtonsComponent test instance
// query for the title <h1> by CSS element selector
// de = fixture.debugElement.query(By.css('a'));
// el = de.nativeElement;
});
<%_ if(filters.googleAuth) { -%>
it('should have a Google+ button', () => {
const a = fixture.debugElement.query(By.css('i.fa-google-plus')).parent.nativeElement;
fixture.detectChanges();
<%_ if (filters.jasmine) { -%>
expect(a.textContent).toContain('Connect with Google+');
<%_ } if (filters.mocha) { -%>
<%= expect() %>a.textContent<%= to() %>.contain('Connect with Google+');
<%_ } -%>
});
<%_ } -%>
// it('should contain anchor buttons', function() {
// compileDirective('<oauth-buttons></oauth-buttons>');
// expect($(element[0]).find('a.btn.btn-social').length).to.be.at.least(1);
// });
//
// it('should evaluate and bind the classes attribute to scope.classes', function() {
// parentScope.scopedClass = 'scopedClass1';
// compileDirective('<oauth-buttons classes="testClass1 {{scopedClass}}"></oauth-buttons>');
// expect(elementScope.classes).to.equal('testClass1 scopedClass1');
// });
//
// it('should bind scope.classes to class names on the anchor buttons', function() {
// compileDirective('<oauth-buttons></oauth-buttons>');
// // Add classes
// elementScope.classes = 'testClass1 testClass2';
// elementScope.$digest();
// expect($(element[0]).find('a.btn.btn-social.testClass1.testClass2').length).to.be.at.least(1);
//
// // Remove classes
// elementScope.classes = '';
// elementScope.$digest();
// expect($(element[0]).find('a.btn.btn-social.testClass1.testClass2').length).to.equal(0);
// });
});