Merge pull request #110 in TEA/mina-sidor-fa-web from fix-Fixed-some-failing-tests to develop
Squashed commit of the following:
commit ff92c6bd63560c8e0dab6c711c09150fbaf7ce37
Author: Daniel Appelgren <daniel.appelgren@arbetsformedlingen.se>
Date: Tue Sep 21 10:46:33 2021 +0200
fix comments and type
commit 3d246398a3a4d5b0397cdfda7aa8b7e2f285303e
Merge: d4d00f4 91eeb1d
Author: Daniel Appelgren <daniel.appelgren@arbetsformedlingen.se>
Date: Tue Sep 21 10:43:11 2021 +0200
Merge branch 'develop' into fix-Fixed-some-failing-tests
commit d4d00f447b8641167c5c6a19c64cb9303d5bd5e9
Author: Daniel Appelgren <daniel.appelgren@arbetsformedlingen.se>
Date: Mon Sep 20 14:11:24 2021 +0200
Fix lint errors
commit 3b203efbc92380a9fadba1521c83c22debb49420
Author: Daniel Appelgren <daniel.appelgren@arbetsformedlingen.se>
Date: Mon Sep 20 14:05:42 2021 +0200
Fix failing tests & type fails
commit b26ab4e13aa646b90431608c697c9d40ca41e67d
Author: Daniel Appelgren <daniel.appelgren@arbetsformedlingen.se>
Date: Mon Sep 20 13:50:26 2021 +0200
Fix: Fixed failing tests
This commit is contained in:
@@ -1,12 +1,8 @@
|
|||||||
import { DigiNgProgressProgressbarModule } from '@af/digi-ng/_progress/progressbar';
|
|
||||||
import { HttpClientTestingModule } from '@angular/common/http/testing';
|
import { HttpClientTestingModule } from '@angular/common/http/testing';
|
||||||
import { CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';
|
import { CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';
|
||||||
import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';
|
import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';
|
||||||
import { RouterTestingModule } from '@angular/router/testing';
|
import { RouterTestingModule } from '@angular/router/testing';
|
||||||
import { LayoutModule } from '@msfa-shared/components/layout/layout.module';
|
|
||||||
import { AvropComponent } from './avrop.component';
|
import { AvropComponent } from './avrop.component';
|
||||||
import { AvropFiltersModule } from './components/avrop-filters/avrop-filters.module';
|
|
||||||
import { AvropListModule } from './components/avrop-list/avrop-list.module';
|
|
||||||
|
|
||||||
describe('AvropComponent', () => {
|
describe('AvropComponent', () => {
|
||||||
let component: AvropComponent;
|
let component: AvropComponent;
|
||||||
@@ -16,14 +12,7 @@ describe('AvropComponent', () => {
|
|||||||
waitForAsync(() => {
|
waitForAsync(() => {
|
||||||
void TestBed.configureTestingModule({
|
void TestBed.configureTestingModule({
|
||||||
declarations: [AvropComponent],
|
declarations: [AvropComponent],
|
||||||
imports: [
|
imports: [RouterTestingModule, HttpClientTestingModule],
|
||||||
RouterTestingModule,
|
|
||||||
HttpClientTestingModule,
|
|
||||||
DigiNgProgressProgressbarModule,
|
|
||||||
LayoutModule,
|
|
||||||
AvropFiltersModule,
|
|
||||||
AvropListModule,
|
|
||||||
],
|
|
||||||
schemas: [CUSTOM_ELEMENTS_SCHEMA],
|
schemas: [CUSTOM_ELEMENTS_SCHEMA],
|
||||||
}).compileComponents();
|
}).compileComponents();
|
||||||
})
|
})
|
||||||
|
|||||||
@@ -1,8 +1,7 @@
|
|||||||
import { ChangeDetectionStrategy, Component } from '@angular/core';
|
import { ChangeDetectionStrategy, Component } from '@angular/core';
|
||||||
import { Avrop, AvropCompactData } from '@msfa-models/avrop.model';
|
import { Avrop, AvropCompact, AvropCompactData } from '@msfa-models/avrop.model';
|
||||||
import { Handledare } from '@msfa-models/handledare.model';
|
import { Handledare } from '@msfa-models/handledare.model';
|
||||||
import { AvropService } from '@msfa-services/avrop.service';
|
import { AvropService } from '@msfa-services/avrop.service';
|
||||||
import { MultiselectFilterOption } from '@msfa-shared/components/multiselect/multiselect-filter-option';
|
|
||||||
import { Observable } from 'rxjs';
|
import { Observable } from 'rxjs';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
@@ -16,10 +15,8 @@ export class AvropComponent {
|
|||||||
currentStep$: Observable<number> = this.avropService.currentStep$;
|
currentStep$: Observable<number> = this.avropService.currentStep$;
|
||||||
|
|
||||||
error$: Observable<string> = this.avropService.error$;
|
error$: Observable<string> = this.avropService.error$;
|
||||||
filteredUtforandeVerksamheter$: Observable<MultiselectFilterOption[]> = this.avropService
|
|
||||||
.filteredUtforandeVerksamheter$;
|
|
||||||
avropData$: Observable<AvropCompactData> = this.avropService.avropData$;
|
avropData$: Observable<AvropCompactData> = this.avropService.avropData$;
|
||||||
selectedAvrop$: Observable<Avrop[]> = this.avropService.selectedAvrop$;
|
selectedAvrop$: Observable<AvropCompact[]> = this.avropService.selectedAvrop$;
|
||||||
availableHandledare$: Observable<Handledare[]> = this.avropService.availableHandledare$;
|
availableHandledare$: Observable<Handledare[]> = this.avropService.availableHandledare$;
|
||||||
selectedHandledare$: Observable<Handledare> = this.avropService.selectedHandledare$;
|
selectedHandledare$: Observable<Handledare> = this.avropService.selectedHandledare$;
|
||||||
avropIsLocked$: Observable<boolean> = this.avropService.avropIsLocked$;
|
avropIsLocked$: Observable<boolean> = this.avropService.avropIsLocked$;
|
||||||
@@ -29,7 +26,7 @@ export class AvropComponent {
|
|||||||
|
|
||||||
constructor(private avropService: AvropService) {}
|
constructor(private avropService: AvropService) {}
|
||||||
|
|
||||||
updateSelectedAvrop(deltagareList: Avrop[], currentStep: number): void {
|
updateSelectedAvrop(deltagareList: AvropCompact[], currentStep: number): void {
|
||||||
if (currentStep !== 1 && !deltagareList.length) {
|
if (currentStep !== 1 && !deltagareList.length) {
|
||||||
this.avropService.goToStep1();
|
this.avropService.goToStep1();
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
@@ -4,10 +4,10 @@ import { CommonModule } from '@angular/common';
|
|||||||
import { CUSTOM_ELEMENTS_SCHEMA, NgModule } from '@angular/core';
|
import { CUSTOM_ELEMENTS_SCHEMA, NgModule } from '@angular/core';
|
||||||
import { RouterModule } from '@angular/router';
|
import { RouterModule } from '@angular/router';
|
||||||
import { LayoutModule } from '@msfa-shared/components/layout/layout.module';
|
import { LayoutModule } from '@msfa-shared/components/layout/layout.module';
|
||||||
import { LoaderModule } from '@msfa-shared/components/loader/loader.module';
|
|
||||||
import { AvropComponent } from './avrop.component';
|
import { AvropComponent } from './avrop.component';
|
||||||
import { AvropFiltersModule } from './components/avrop-filters/avrop-filters.module';
|
import { AvropFiltersModule } from './components/avrop-filters/avrop-filters.module';
|
||||||
import { AvropListModule } from './components/avrop-list/avrop-list.module';
|
import { AvropListModule } from './components/avrop-list/avrop-list.module';
|
||||||
|
import { LoaderModule } from '@msfa-shared/components/loader/loader.module';
|
||||||
|
|
||||||
@NgModule({
|
@NgModule({
|
||||||
schemas: [CUSTOM_ELEMENTS_SCHEMA],
|
schemas: [CUSTOM_ELEMENTS_SCHEMA],
|
||||||
|
|||||||
@@ -47,9 +47,9 @@ describe('AvropFiltersComponent', () => {
|
|||||||
discardPeriodicTasks();
|
discardPeriodicTasks();
|
||||||
}));
|
}));
|
||||||
|
|
||||||
it('should show loading spinners when filters are loading', () => {
|
it('should show loading spinner when filters are loading', () => {
|
||||||
fixture.detectChanges();
|
fixture.detectChanges();
|
||||||
const tags = fixture.debugElement.queryAll(By.css('digi-icon-spinner'));
|
const tags = fixture.debugElement.queryAll(By.css('msfa-loader'));
|
||||||
expect(tags.length).toBe(3);
|
expect(tags.length).toBe(1);
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -69,10 +69,10 @@ export class DeltagareCardComponent {
|
|||||||
|
|
||||||
switch (reportType) {
|
switch (reportType) {
|
||||||
case 'planering':
|
case 'planering':
|
||||||
this.reportsFormControl.valid ? this.router.navigate(['/deltagare/planering', deltagareId]) : null;
|
this.reportsFormControl.valid ? void this.router.navigate(['/deltagare/planering', deltagareId]) : null;
|
||||||
break;
|
break;
|
||||||
case 'avvikelse':
|
case 'avvikelse':
|
||||||
this.reportsFormControl.valid ? this.router.navigate(['/deltagare/rapportera', deltagareId]) : null;
|
this.reportsFormControl.valid ? void this.router.navigate(['/deltagare/rapportera', deltagareId]) : null;
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
return;
|
return;
|
||||||
|
|||||||
@@ -1,18 +1,18 @@
|
|||||||
/* tslint:disable:no-unused-variable */
|
/* tslint:disable:no-unused-variable */
|
||||||
import { CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';
|
import { CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';
|
||||||
import { async, ComponentFixture, TestBed } from '@angular/core/testing';
|
import { ComponentFixture, TestBed } from '@angular/core/testing';
|
||||||
import { LoaderComponent } from './loader.component';
|
import { LoaderComponent } from './loader.component';
|
||||||
|
|
||||||
describe('LoaderComponent', () => {
|
describe('LoaderComponent', () => {
|
||||||
let component: LoaderComponent;
|
let component: LoaderComponent;
|
||||||
let fixture: ComponentFixture<LoaderComponent>;
|
let fixture: ComponentFixture<LoaderComponent>;
|
||||||
|
|
||||||
beforeEach(async(() => {
|
beforeEach(async () => {
|
||||||
void TestBed.configureTestingModule({
|
await TestBed.configureTestingModule({
|
||||||
schemas: [CUSTOM_ELEMENTS_SCHEMA],
|
|
||||||
declarations: [LoaderComponent],
|
declarations: [LoaderComponent],
|
||||||
|
schemas: [CUSTOM_ELEMENTS_SCHEMA],
|
||||||
}).compileComponents();
|
}).compileComponents();
|
||||||
}));
|
});
|
||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
fixture = TestBed.createComponent(LoaderComponent);
|
fixture = TestBed.createComponent(LoaderComponent);
|
||||||
|
|||||||
@@ -1,4 +1,3 @@
|
|||||||
import { DigiNgDialogModule } from '@af/digi-ng/_dialog/dialog';
|
|
||||||
import { CommonModule } from '@angular/common';
|
import { CommonModule } from '@angular/common';
|
||||||
import { CUSTOM_ELEMENTS_SCHEMA, NgModule } from '@angular/core';
|
import { CUSTOM_ELEMENTS_SCHEMA, NgModule } from '@angular/core';
|
||||||
import { LoaderComponent } from './loader.component';
|
import { LoaderComponent } from './loader.component';
|
||||||
@@ -6,7 +5,7 @@ import { LoaderComponent } from './loader.component';
|
|||||||
@NgModule({
|
@NgModule({
|
||||||
schemas: [CUSTOM_ELEMENTS_SCHEMA],
|
schemas: [CUSTOM_ELEMENTS_SCHEMA],
|
||||||
declarations: [LoaderComponent],
|
declarations: [LoaderComponent],
|
||||||
imports: [CommonModule, DigiNgDialogModule],
|
imports: [CommonModule],
|
||||||
exports: [LoaderComponent],
|
exports: [LoaderComponent],
|
||||||
})
|
})
|
||||||
export class LoaderModule {}
|
export class LoaderModule {}
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
import { CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';
|
import { CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';
|
||||||
import { ComponentFixture, TestBed } from '@angular/core/testing';
|
import { ComponentFixture, TestBed } from '@angular/core/testing';
|
||||||
import { MultiselectComponent } from './multiselect.component';
|
import { MultiselectComponent } from './multiselect.component';
|
||||||
|
import { DropdownModule } from '@msfa-shared/components/dropdown/dropdown.module';
|
||||||
|
|
||||||
describe('MultiselectComponent', () => {
|
describe('MultiselectComponent', () => {
|
||||||
let component: MultiselectComponent;
|
let component: MultiselectComponent;
|
||||||
@@ -8,6 +9,7 @@ describe('MultiselectComponent', () => {
|
|||||||
|
|
||||||
beforeEach(async () => {
|
beforeEach(async () => {
|
||||||
await TestBed.configureTestingModule({
|
await TestBed.configureTestingModule({
|
||||||
|
imports: [DropdownModule],
|
||||||
declarations: [MultiselectComponent],
|
declarations: [MultiselectComponent],
|
||||||
schemas: [CUSTOM_ELEMENTS_SCHEMA],
|
schemas: [CUSTOM_ELEMENTS_SCHEMA],
|
||||||
}).compileComponents();
|
}).compileComponents();
|
||||||
|
|||||||
@@ -94,6 +94,9 @@ export class MultiselectComponent implements AfterViewInit, ControlValueAccessor
|
|||||||
}
|
}
|
||||||
|
|
||||||
ngAfterViewInit(): void {
|
ngAfterViewInit(): void {
|
||||||
|
if (!this.dropdownRef) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
this.dropdownRef.onOpen(() => {
|
this.dropdownRef.onOpen(() => {
|
||||||
// force refresh of selected options if it's reopened
|
// force refresh of selected options if it's reopened
|
||||||
this.selectedOptions = [...(this.selectedOptions || [])];
|
this.selectedOptions = [...(this.selectedOptions || [])];
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import { Injectable } from '@angular/core';
|
import { Injectable } from '@angular/core';
|
||||||
import { Params } from '@msfa-models/api/params.model';
|
import { Params } from '@msfa-models/api/params.model';
|
||||||
import { Avrop, AvropCompactData } from '@msfa-models/avrop.model';
|
import { AvropCompact, AvropCompactData } from '@msfa-models/avrop.model';
|
||||||
import { Handledare } from '@msfa-models/handledare.model';
|
import { Handledare } from '@msfa-models/handledare.model';
|
||||||
import { AvropApiService } from '@msfa-services/api/avrop-api.service';
|
import { AvropApiService } from '@msfa-services/api/avrop-api.service';
|
||||||
import { MultiselectFilterOption } from '@msfa-shared/components/multiselect/multiselect-filter-option';
|
import { MultiselectFilterOption } from '@msfa-shared/components/multiselect/multiselect-filter-option';
|
||||||
@@ -18,7 +18,7 @@ export class AvropService {
|
|||||||
private _filteredTjanster$ = new BehaviorSubject<MultiselectFilterOption[]>(null);
|
private _filteredTjanster$ = new BehaviorSubject<MultiselectFilterOption[]>(null);
|
||||||
private _filteredUtforandeVerksamheter$ = new BehaviorSubject<MultiselectFilterOption[]>(null);
|
private _filteredUtforandeVerksamheter$ = new BehaviorSubject<MultiselectFilterOption[]>(null);
|
||||||
private _filteredKommuner$ = new BehaviorSubject<MultiselectFilterOption[]>(null);
|
private _filteredKommuner$ = new BehaviorSubject<MultiselectFilterOption[]>(null);
|
||||||
private _selectedAvrop$ = new BehaviorSubject<Avrop[]>([]);
|
private _selectedAvrop$ = new BehaviorSubject<AvropCompact[]>([]);
|
||||||
private _avropIsLocked$ = new BehaviorSubject<boolean>(null);
|
private _avropIsLocked$ = new BehaviorSubject<boolean>(null);
|
||||||
private _selectedHandledareId$ = new BehaviorSubject<string>(null);
|
private _selectedHandledareId$ = new BehaviorSubject<string>(null);
|
||||||
private _handledareIsConfirmed$ = new BehaviorSubject<boolean>(false);
|
private _handledareIsConfirmed$ = new BehaviorSubject<boolean>(false);
|
||||||
@@ -32,7 +32,7 @@ export class AvropService {
|
|||||||
MultiselectFilterOption[]
|
MultiselectFilterOption[]
|
||||||
> = this._filteredUtforandeVerksamheter$.asObservable();
|
> = this._filteredUtforandeVerksamheter$.asObservable();
|
||||||
public filteredKommuner$: Observable<MultiselectFilterOption[]> = this._filteredKommuner$.asObservable();
|
public filteredKommuner$: Observable<MultiselectFilterOption[]> = this._filteredKommuner$.asObservable();
|
||||||
public selectedAvrop$: Observable<Avrop[]> = this._selectedAvrop$.asObservable();
|
public selectedAvrop$: Observable<AvropCompact[]> = this._selectedAvrop$.asObservable();
|
||||||
public avropIsLocked$: Observable<boolean> = this._avropIsLocked$.asObservable();
|
public avropIsLocked$: Observable<boolean> = this._avropIsLocked$.asObservable();
|
||||||
public selectedHandledare$: Observable<Handledare> = this._selectedHandledareId$.pipe(
|
public selectedHandledare$: Observable<Handledare> = this._selectedHandledareId$.pipe(
|
||||||
filter(selectedHandledare => !!selectedHandledare),
|
filter(selectedHandledare => !!selectedHandledare),
|
||||||
@@ -80,7 +80,7 @@ export class AvropService {
|
|||||||
this._filteredUtforandeVerksamheter$,
|
this._filteredUtforandeVerksamheter$,
|
||||||
]).pipe(switchMap(() => this.avropApiService.fetchAvailableKommuner$(this.filtersForKommuner)));
|
]).pipe(switchMap(() => this.avropApiService.fetchAvailableKommuner$(this.filtersForKommuner)));
|
||||||
|
|
||||||
private _lockedAvrop$: Observable<Avrop[]> = combineLatest([this.selectedAvrop$, this.avropIsLocked$]).pipe(
|
private _lockedAvrop$: Observable<AvropCompact[]> = combineLatest([this.selectedAvrop$, this.avropIsLocked$]).pipe(
|
||||||
map(([selectedAvrop, isLocked]) => (isLocked ? selectedAvrop : null))
|
map(([selectedAvrop, isLocked]) => (isLocked ? selectedAvrop : null))
|
||||||
);
|
);
|
||||||
|
|
||||||
@@ -166,7 +166,7 @@ export class AvropService {
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
public setSelectedAvrop(deltagare: Avrop[]): void {
|
public setSelectedAvrop(deltagare: AvropCompact[]): void {
|
||||||
this._selectedAvrop$.next(deltagare);
|
this._selectedAvrop$.next(deltagare);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user