Commit 976e5d62b43723c8eb209a883713b0e59945eae5

Authored by Victor Costa
1 parent e99067c1

Fix state change of sidebar

src/app/layout/services/body-state-classes.service.spec.ts
@@ -19,9 +19,7 @@ describe("BodyStateClasses Service", () => { @@ -19,9 +19,7 @@ describe("BodyStateClasses Service", () => {
19 }, 19 },
20 authService: any = helpers.mocks.authService, 20 authService: any = helpers.mocks.authService,
21 bodyEl: { className: string }, 21 bodyEl: { className: string },
22 - bodyElJq: any,  
23 - contentWrapperEl: { className: string },  
24 - contentWrapperElJq: any; 22 + bodyElJq: any;
25 23
26 let getService = (): BodyStateClassesService => { 24 let getService = (): BodyStateClassesService => {
27 return new BodyStateClassesService($rootScope, $document, $state, authService); 25 return new BodyStateClassesService($rootScope, $document, $state, authService);
@@ -31,9 +29,6 @@ describe("BodyStateClasses Service", () => { @@ -31,9 +29,6 @@ describe("BodyStateClasses Service", () => {
31 authService.isAuthenticated = jasmine.createSpy("isAuthenticated").and.returnValue(true); 29 authService.isAuthenticated = jasmine.createSpy("isAuthenticated").and.returnValue(true);
32 bodyEl = { className: "" }; 30 bodyEl = { className: "" };
33 bodyElJq = [bodyEl]; 31 bodyElJq = [bodyEl];
34 -  
35 - contentWrapperEl = { className: "" };  
36 - contentWrapperElJq = [contentWrapperEl];  
37 }); 32 });
38 33
39 it("should add the class noosfero-user-logged to the body element if the user is authenticated", () => { 34 it("should add the class noosfero-user-logged to the body element if the user is authenticated", () => {
@@ -157,24 +152,20 @@ describe("BodyStateClasses Service", () => { @@ -157,24 +152,20 @@ describe("BodyStateClasses Service", () => {
157 it("add a css class to content wrapper element", () => { 152 it("add a css class to content wrapper element", () => {
158 let service = getService(); 153 let service = getService();
159 154
160 - contentWrapperElJq.addClass = jasmine.createSpy("addClass");  
161 - contentWrapperElJq.removeClass = jasmine.createSpy("removeClass");  
162 -  
163 - service["contentWrapperElement"] = contentWrapperElJq; 155 + let contentWrapperMock = jasmine.createSpyObj("contentWrapperMock", ["addClass", "removeClass"])
  156 + service["getContentWrapper"] = jasmine.createSpy("getContentWrapper").and.returnValue(contentWrapperMock);
164 service.addContentClass(true); 157 service.addContentClass(true);
165 158
166 - expect(contentWrapperElJq.addClass).toHaveBeenCalledWith(BodyStateClassesService.CONTENT_WRAPPER_FULL); 159 + expect(contentWrapperMock.addClass).toHaveBeenCalledWith(BodyStateClassesService.CONTENT_WRAPPER_FULL);
167 }); 160 });
168 161
169 it("remove a css class from content wrapper element", () => { 162 it("remove a css class from content wrapper element", () => {
170 let service = getService(); 163 let service = getService();
171 164
172 - contentWrapperElJq.addClass = jasmine.createSpy("addClass");  
173 - contentWrapperElJq.removeClass = jasmine.createSpy("removeClass");  
174 -  
175 - service["contentWrapperElement"] = contentWrapperElJq; 165 + let contentWrapperMock = jasmine.createSpyObj("contentWrapperMock", ["addClass", "removeClass"])
  166 + service["getContentWrapper"] = jasmine.createSpy("getContentWrapper").and.returnValue(contentWrapperMock);
176 service.addContentClass(false); 167 service.addContentClass(false);
177 168
178 - expect(contentWrapperElJq.removeClass).toHaveBeenCalledWith(BodyStateClassesService.CONTENT_WRAPPER_FULL); 169 + expect(contentWrapperMock.removeClass).toHaveBeenCalledWith(BodyStateClassesService.CONTENT_WRAPPER_FULL);
179 }); 170 });
180 }); 171 });
src/app/layout/services/body-state-classes.service.ts
@@ -33,7 +33,6 @@ export class BodyStateClassesService { @@ -33,7 +33,6 @@ export class BodyStateClassesService {
33 public static get CONTENT_WRAPPER_FULL(): string { return "full-content"; } 33 public static get CONTENT_WRAPPER_FULL(): string { return "full-content"; }
34 34
35 private bodyElement: ng.IAugmentedJQuery = null; 35 private bodyElement: ng.IAugmentedJQuery = null;
36 - private contentWrapperElement: INgForwardJQuery = null;  
37 36
38 constructor( 37 constructor(
39 private $rootScope: ng.IRootScopeService, 38 private $rootScope: ng.IRootScopeService,
@@ -131,13 +130,7 @@ export class BodyStateClassesService { @@ -131,13 +130,7 @@ export class BodyStateClassesService {
131 } 130 }
132 131
133 private getContentWrapper(selector?: string): INgForwardJQuery { 132 private getContentWrapper(selector?: string): INgForwardJQuery {
134 -  
135 - if (this.contentWrapperElement === null) {  
136 -  
137 - let doc = <INgForwardJQuery>angular.element(this.$document);  
138 - this.contentWrapperElement = doc.query(selector || '.content-wrapper');  
139 - }  
140 -  
141 - return this.contentWrapperElement; 133 + let doc = <INgForwardJQuery>angular.element(this.$document);
  134 + return doc.query(selector || '.content-wrapper');
142 } 135 }
143 } 136 }
src/app/main/main.html
1 <acme-navbar></acme-navbar> 1 <acme-navbar></acme-navbar>
2 <!-- Sidebar Left --> 2 <!-- Sidebar Left -->
3 <sidebar [visible]="false"></sidebar> 3 <sidebar [visible]="false"></sidebar>
4 -<div class="content-wrapper" ui-view="content"></div> 4 +<div class="content-wrapper full-content" ui-view="content"></div>