/* tslint:disable:no-unused-variable */

import { TestBed, async, inject } from '@angular/core/testing';
import { NotificationSearchSortService } from './notification-search-sort.service';

describe('NotificationSearchSortService', () => {
  beforeEach(() => {
    TestBed.configureTestingModule({
      providers: [NotificationSearchSortService]
    });
  });

  it('should ...', inject([NotificationSearchSortService], (service: NotificationSearchSortService) => {
    expect(service).toBeTruthy();
  }));
});
