@@ -103,12 +103,47 @@ describe('MdExpansionPanel', () => {
103
103
expect ( styles . marginLeft ) . toBe ( '37px' ) ;
104
104
expect ( styles . marginRight ) . toBe ( '37px' ) ;
105
105
} ) ) ;
106
+
107
+ it ( 'should be able to hide the toggle' , ( ) => {
108
+ const fixture = TestBed . createComponent ( PanelWithContent ) ;
109
+ const header = fixture . debugElement . query ( By . css ( '.mat-expansion-panel-header' ) ) . nativeElement ;
110
+
111
+ fixture . detectChanges ( ) ;
112
+
113
+ expect ( header . querySelector ( '.mat-expansion-indicator' ) )
114
+ . toBeTruthy ( 'Expected indicator to be shown.' ) ;
115
+
116
+ fixture . componentInstance . hideToggle = true ;
117
+ fixture . detectChanges ( ) ;
118
+
119
+ expect ( header . querySelector ( '.mat-expansion-indicator' ) )
120
+ . toBeFalsy ( 'Expected indicator to be hidden.' ) ;
121
+ } ) ;
122
+
123
+ it ( 'should update the indicator rotation when the expanded state is toggled programmatically' ,
124
+ fakeAsync ( ( ) => {
125
+ const fixture = TestBed . createComponent ( PanelWithContent ) ;
126
+
127
+ fixture . detectChanges ( ) ;
128
+ tick ( 250 ) ;
129
+
130
+ const arrow = fixture . debugElement . query ( By . css ( '.mat-expansion-indicator' ) ) . nativeElement ;
131
+
132
+ expect ( arrow . style . transform ) . toBe ( 'rotate(0deg)' , 'Expected no rotation.' ) ;
133
+
134
+ fixture . componentInstance . expanded = true ;
135
+ fixture . detectChanges ( ) ;
136
+ tick ( 250 ) ;
137
+
138
+ expect ( arrow . style . transform ) . toBe ( 'rotate(180deg)' , 'Expected 180 degree rotation.' ) ;
139
+ } ) ) ;
106
140
} ) ;
107
141
108
142
109
143
@Component ( {
110
144
template : `
111
145
<md-expansion-panel [expanded]="expanded"
146
+ [hideToggle]="hideToggle"
112
147
(opened)="openCallback()"
113
148
(closed)="closeCallback()">
114
149
<md-expansion-panel-header>Panel Title</md-expansion-panel-header>
@@ -118,6 +153,7 @@ describe('MdExpansionPanel', () => {
118
153
} )
119
154
class PanelWithContent {
120
155
expanded : boolean = false ;
156
+ hideToggle : boolean = false ;
121
157
openCallback = jasmine . createSpy ( 'openCallback' ) ;
122
158
closeCallback = jasmine . createSpy ( 'closeCallback' ) ;
123
159
}
0 commit comments