1
1
import { expect } from 'chai' ;
2
2
import {
3
+ filterOnFrist ,
3
4
filterOnPersonregister ,
5
+ FristFilterOption ,
4
6
getSortedEventsFromSortingType ,
5
7
} from '@/utils/hendelseFilteringUtils' ;
6
8
import {
@@ -10,6 +12,7 @@ import {
10
12
} from '@/api/types/personregisterTypes' ;
11
13
import { testdata } from '../data/fellesTestdata' ;
12
14
import { HendelseTypeFilters } from '@/context/filters/filterContextState' ;
15
+ import { addWeeks , subWeeks } from 'date-fns' ;
13
16
14
17
const createPersonDataWithName = ( name : string ) : PersonData => {
15
18
return {
@@ -503,5 +506,83 @@ describe('hendelseFilteringUtils', () => {
503
506
expect ( Object . keys ( filteredPersonregister ) . length ) . to . equal ( 1 ) ;
504
507
expect ( Object . keys ( filteredPersonregister ) [ 0 ] ) . to . equal ( '09128034883' ) ;
505
508
} ) ;
509
+
510
+ describe ( 'Frist filter' , ( ) => {
511
+ const today = new Date ( ) ;
512
+ const oneWeekAgo = subWeeks ( today , 1 ) ;
513
+ const oneWeekFromToday = addWeeks ( today , 1 ) ;
514
+
515
+ const oppfolgingsOppgaveFristBeforeToday : PersonData = {
516
+ ...createPersonDataWithName ( 'Box Culder' ) ,
517
+ trengerOppfolging : true ,
518
+ trengerOppfolgingFrist : oneWeekAgo ,
519
+ } ;
520
+ const aktivitetskravVurderingFristBeforeToday : PersonData = {
521
+ ...createPersonDataWithName ( 'Cox Dulder' ) ,
522
+ aktivitetskravActive : true ,
523
+ aktivitetskravVurderingFrist : oneWeekAgo ,
524
+ } ;
525
+ const oppfolgingsOppgaveFristToday : PersonData = {
526
+ ...createPersonDataWithName ( 'Dox Fulder' ) ,
527
+ trengerOppfolging : true ,
528
+ trengerOppfolgingFrist : today ,
529
+ } ;
530
+ const aktivitetskravVurderingFristToday : PersonData = {
531
+ ...createPersonDataWithName ( 'Fox Gulder' ) ,
532
+ aktivitetskravActive : true ,
533
+ aktivitetskravVurderingFrist : today ,
534
+ } ;
535
+ const oppfolgingsOppgaveFristFuture : PersonData = {
536
+ ...createPersonDataWithName ( 'Gox Hulder' ) ,
537
+ trengerOppfolging : true ,
538
+ trengerOppfolgingFrist : oneWeekFromToday ,
539
+ } ;
540
+ const aktivitetskravVurderingFristFuture : PersonData = {
541
+ ...createPersonDataWithName ( 'Jox Kulder' ) ,
542
+ aktivitetskravActive : true ,
543
+ aktivitetskravVurderingFrist : oneWeekFromToday ,
544
+ } ;
545
+
546
+ const personregister : PersonregisterState = {
547
+ '16614407794' : oppfolgingsOppgaveFristBeforeToday ,
548
+ '16614407795' : aktivitetskravVurderingFristBeforeToday ,
549
+ '16614407796' : oppfolgingsOppgaveFristToday ,
550
+ '16614407797' : aktivitetskravVurderingFristToday ,
551
+ '16614407798' : oppfolgingsOppgaveFristFuture ,
552
+ '16614407799' : aktivitetskravVurderingFristFuture ,
553
+ } ;
554
+
555
+ it ( 'Only returns elements with frist dato before today' , ( ) => {
556
+ const filteredPersonregister = filterOnFrist ( personregister , [
557
+ FristFilterOption . Past ,
558
+ ] ) ;
559
+
560
+ console . log ( filteredPersonregister ) ;
561
+
562
+ expect ( Object . keys ( filteredPersonregister ) . length ) . to . equal ( 2 ) ;
563
+ expect ( Object . keys ( filteredPersonregister ) [ 0 ] ) . to . equal ( '16614407794' ) ;
564
+ expect ( Object . keys ( filteredPersonregister ) [ 1 ] ) . to . equal ( '16614407795' ) ;
565
+ } ) ;
566
+
567
+ it ( 'Only returns elements with frist dato today' , ( ) => {
568
+ const filteredPersonregister = filterOnFrist ( personregister , [
569
+ FristFilterOption . Today ,
570
+ ] ) ;
571
+
572
+ expect ( Object . keys ( filteredPersonregister ) . length ) . to . equal ( 2 ) ;
573
+ expect ( Object . keys ( filteredPersonregister ) [ 0 ] ) . to . equal ( '16614407796' ) ;
574
+ expect ( Object . keys ( filteredPersonregister ) [ 1 ] ) . to . equal ( '16614407797' ) ;
575
+ } ) ;
576
+
577
+ it ( 'Only returns elements with frist dato in the future' , ( ) => {
578
+ const filteredPersonregister = filterOnFrist ( personregister , [
579
+ FristFilterOption . Future ,
580
+ ] ) ;
581
+
582
+ expect ( Object . keys ( filteredPersonregister ) . length ) . to . equal ( 2 ) ;
583
+ expect ( Object . keys ( filteredPersonregister ) [ 0 ] ) . to . equal ( '16614407798' ) ;
584
+ expect ( Object . keys ( filteredPersonregister ) [ 1 ] ) . to . equal ( '16614407799' ) ;
585
+ } ) ;
586
+ } ) ;
506
587
} ) ;
507
588
} ) ;
0 commit comments