]> git.evergreen-ils.org Git - working/Evergreen.git/blob - Open-ILS/src/eg2/src/app/share/daterange-select/daterange-select.component.spec.ts
52a0c47e1d5660af66605979f0f7535303b7fc21
[working/Evergreen.git] / Open-ILS / src / eg2 / src / app / share / daterange-select / daterange-select.component.spec.ts
1 import {ComponentFixture, TestBed} from '@angular/core/testing';
2 import {Component, DebugElement, Input, TemplateRef} from '@angular/core';
3 import {By} from '@angular/platform-browser';
4 import {DateRange, DateRangeSelectComponent} from './daterange-select.component';
5 import {ReactiveFormsModule} from '@angular/forms';
6 import {NgbDate} from '@ng-bootstrap/ng-bootstrap';
7
8 @Component({
9     selector: 'ngb-datepicker',
10     template: ''
11 })
12 class EgMockDateSelectComponent {
13     @Input() displayMonths: number;
14     @Input() dayTemplate: TemplateRef<any>;
15     @Input() outsideDays: string;
16     @Input() markDisabled:
17         (date: NgbDate, current: { year: number; month: number; }) => boolean =
18         (date: NgbDate, current: { year: number; month: number; }) => false
19 }
20
21 describe('Component: DateRangeSelect', () => {
22     let component: DateRangeSelectComponent;
23     let fixture: ComponentFixture<DateRangeSelectComponent>;
24
25     beforeEach(() => {
26         TestBed.configureTestingModule({
27             declarations: [
28                 DateRangeSelectComponent,
29                 EgMockDateSelectComponent,
30         ]});
31
32         fixture = TestBed.createComponent(DateRangeSelectComponent);
33         component = fixture.componentInstance;
34         component.ngOnInit();
35     });
36
37
38     it('creates a range when the user clicks two dates, with the earlier date clicked first', () => {
39         component.onDateSelection(new NgbDate(2004, 6, 4));
40         component.onDateSelection(new NgbDate(2005, 7, 27));
41         expect(component.selectedRange.toDate).toBeTruthy();
42     });
43
44     it('creates a range with a null value when the user clicks two dates, with the later date clicked first', () => {
45         component.onDateSelection(new NgbDate(2011, 1, 27));
46         component.onDateSelection(new NgbDate(2006, 11, 16));
47         expect(component.selectedRange.toDate).toBeNull();
48     });
49
50 });