| /* |
| ****************************************************************************** |
| * Copyright © 2018 PTA GmbH. |
| * All rights reserved. This program and the accompanying materials |
| * are made available under the terms of the Eclipse Public License v1.0 |
| * which accompanies this distribution, and is available at |
| * |
| * http://www.eclipse.org/legal/epl-v10.html |
| * |
| ****************************************************************************** |
| */ |
| import { TestBed, async, inject } from '@angular/core/testing'; |
| |
| import 'rxjs/add/observable/of'; |
| import 'rxjs/add/operator/catch'; |
| import 'rxjs/add/operator/do'; |
| import 'rxjs/add/operator/toPromise'; |
| |
| import { ReminderService } from './reminder.service'; |
| import { SessionContext } from '../common/session-context'; |
| import { MessageService } from '../services/message.service'; |
| import { BaseHttpService, HttpMethodEn } from './base-http.service'; |
| import { MockBaseHttpService } from '../testing/mock-base-http.service'; |
| |
| describe('ReminderService', () => { |
| |
| let sessionContext: SessionContext; |
| let messageService: MessageService; |
| let mockedBaseHttpService: MockBaseHttpService; |
| mockedBaseHttpService = new MockBaseHttpService(messageService); |
| |
| beforeEach(async(() => { |
| TestBed.configureTestingModule({ |
| providers: [ |
| ReminderService, |
| SessionContext, |
| MessageService, |
| { provide: BaseHttpService, useValue: mockedBaseHttpService }, |
| ] |
| }) |
| .compileComponents(); |
| |
| sessionContext = new SessionContext(); |
| messageService = new MessageService(sessionContext); |
| })); |
| |
| it('can instantiate service when inject service', |
| inject([ReminderService], (service: ReminderService) => { |
| expect(service instanceof ReminderService).toBe(true); |
| })); |
| |
| it('should call getCurrentReminders', inject([ReminderService], (service: ReminderService) => { |
| expect(service).toBeTruthy(); |
| |
| service.getCurrentReminders(); |
| expect(mockedBaseHttpService.lastHttpCallInfo.method).toBe(HttpMethodEn.get); |
| expect(mockedBaseHttpService.lastHttpCallInfo.uriFragment).toContain('getCurrentReminders'); |
| })); |
| |
| it('should call getExpiredReminders', inject([ReminderService], (service: ReminderService) => { |
| expect(service).toBeTruthy(); |
| |
| service.getExpiredReminders(); |
| expect(mockedBaseHttpService.lastHttpCallInfo.method).toBe(HttpMethodEn.get); |
| expect(mockedBaseHttpService.lastHttpCallInfo.uriFragment).toContain('getExpiredReminders'); |
| })); |
| }); |