Skip to content

Commit 75bed62

Browse files
committed
Expose show() and hide() methods for more convenience
1 parent 5ac5138 commit 75bed62

File tree

4 files changed

+33
-5
lines changed

4 files changed

+33
-5
lines changed

README.MD

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -174,9 +174,9 @@ export class MyComponent {
174174

175175
constructor(private visibilityService: SpinnerVisibilityService) {
176176
// show the spinner
177-
visibilityService.visibilitySubject.next(true);
177+
visibilityService.show();
178178
// hide the spinner
179-
visibilityService.visibilitySubject.next(false);
179+
visibilityService.hide();
180180
}
181181
}
182182
```

src/services/spinner-visibility.service.ts

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,14 @@ export class SpinnerVisibilityService {
1818
get visibilityObservable(): Observable<boolean> {
1919
return this._visibilitySubject.asObservable();
2020
}
21+
22+
public show(): void {
23+
this._visibilitySubject.next(true);
24+
}
25+
26+
public hide(): void {
27+
this._visibilitySubject.next(false);
28+
}
2129
}
2230

2331
export function SpinnerVisibilityServiceFactory(): SpinnerVisibilityService {

test/components/spinner/spinner.component.spec.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -290,10 +290,10 @@ describe('SpinnerComponent', () => {
290290

291291
it('should be possible to manually show/hide the spinner', inject(
292292
[SpinnerVisibilityService], (visibilityService: SpinnerVisibilityService) => {
293-
visibilityService.visibilitySubject.next(true);
293+
visibilityService.show();
294294
expect(component.isSpinnerVisible).toBeTruthy();
295295

296-
visibilityService.visibilitySubject.next(false);
296+
visibilityService.hide();
297297
expect(component.isSpinnerVisible).toBeFalsy();
298298
}
299299
));

test/services/spinner-visibility.service.spec.ts

Lines changed: 21 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,26 @@ describe('SpinnerVisibilityService', () => {
2323
}));
2424

2525
it('should define a subject', inject([SpinnerVisibilityService], (service: SpinnerVisibilityService) => {
26-
expect(service.visibilitySubject).toBeTruthy();
26+
expect(service.visibilityObservable).toBeTruthy();
27+
}));
28+
29+
it('should pipe \'true\' when calling show()', inject([SpinnerVisibilityService], (service: SpinnerVisibilityService) => {
30+
service.show();
31+
service.visibilityObservable.subscribe(result => {
32+
expect(result).toBeTruthy();
33+
},
34+
error => {
35+
expect(true).toBeFalsy();
36+
});
37+
}));
38+
39+
it('should pipe \'false\' when calling hide()', inject([SpinnerVisibilityService], (service: SpinnerVisibilityService) => {
40+
service.hide();
41+
service.visibilityObservable.subscribe(result => {
42+
expect(result).toBeFalsy();
43+
},
44+
error => {
45+
expect(true).toBeFalsy();
46+
});
2747
}));
2848
});

0 commit comments

Comments
 (0)