1 import {TestBed} from '@angular/core/testing';
2 import {PackagesStore} from './packages.store';
3 import {HttpClientTestingModule, HttpTestingController} from '@angular/common/http/testing';
4 import {PackagesApiService} from './packages-api.service';
5 import {of} from 'rxjs';
6 import {BluePrintPage} from './model/BluePrint.model';
7 import {getBluePrintPageMock} from './blueprint.page.mock';
8 import {PackagesDashboardState} from './model/packages-dashboard.state';
10 fdescribe('PackagesStore', () => {
11 let store: PackagesStore;
13 const MOCK_BLUEPRINTS_PAGE: BluePrintPage = getBluePrintPageMock();
16 let httpMock: HttpTestingController;
19 TestBed.configureTestingModule({
21 HttpClientTestingModule
28 httpMock = TestBed.get(HttpTestingController);
32 it('should correctly get page of packages', () => {
33 const packagesServiceSpy = jasmine.createSpyObj('PackagesListService', ['getPagedPackages']);
35 // set the value to return when the ` getPagedPackages` spy is called.
36 packagesServiceSpy.getPagedPackages.and.returnValue(of([MOCK_BLUEPRINTS_PAGE]));
37 store = new PackagesStore(packagesServiceSpy);
39 // Todo check the Abbas's code
40 /*store.getPagedPackages(0, 2);
41 store.state$.subscribe(page => {
42 expect(store.state).toEqual(MOCK_BLUEPRINTS_PAGE);
47 it('should correctly get all packages', () => {
48 const packagesServiceSpy = jasmine.createSpyObj('PackagesListService', ['getPagedPackages']);
50 // set the value to return when the `getPagedPackages` spy is called.
51 packagesServiceSpy.getPagedPackages.and.returnValue(of([MOCK_BLUEPRINTS_PAGE]));
52 store = new PackagesStore(packagesServiceSpy);
54 store.state$.subscribe(page => {
55 expect(store.state.page).toEqual(MOCK_BLUEPRINTS_PAGE);