Skip to content

Commit bd010bc

Browse files
committed
IS-1931: Added tests
1 parent 5a5a66e commit bd010bc

File tree

2 files changed

+88
-1
lines changed

2 files changed

+88
-1
lines changed

src/utils/dateUtils.ts

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,13 @@ export const toReadableDate = (dateArg: Date | null): string => {
1111
export function isPast(compareDate: Date): boolean {
1212
const currentDate = new Date();
1313
const date = new Date(compareDate);
14-
return date < currentDate;
14+
const isNotSameDay = !(
15+
date.getFullYear() === currentDate.getFullYear() &&
16+
date.getMonth() === currentDate.getMonth() &&
17+
date.getDate() === currentDate.getDate()
18+
);
19+
const isInThePast = date < currentDate;
20+
return isNotSameDay && isInThePast;
1521
}
1622

1723
export function isToday(compareDate: Date): boolean {

test/utils/hendelseFilteringUtilsTest.ts

Lines changed: 81 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
import { expect } from 'chai';
22
import {
3+
filterOnFrist,
34
filterOnPersonregister,
5+
FristFilterOption,
46
getSortedEventsFromSortingType,
57
} from '@/utils/hendelseFilteringUtils';
68
import {
@@ -10,6 +12,7 @@ import {
1012
} from '@/api/types/personregisterTypes';
1113
import { testdata } from '../data/fellesTestdata';
1214
import { HendelseTypeFilters } from '@/context/filters/filterContextState';
15+
import { addWeeks, subWeeks } from 'date-fns';
1316

1417
const createPersonDataWithName = (name: string): PersonData => {
1518
return {
@@ -503,5 +506,83 @@ describe('hendelseFilteringUtils', () => {
503506
expect(Object.keys(filteredPersonregister).length).to.equal(1);
504507
expect(Object.keys(filteredPersonregister)[0]).to.equal('09128034883');
505508
});
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+
});
506587
});
507588
});

0 commit comments

Comments
 (0)