fix(calendar): init centralDate from selectedDate when today is disabled

This commit is contained in:
Mikhail Bashkirov 2019-06-04 16:00:52 +02:00
parent a9bda5a22b
commit 1643379d74
2 changed files with 19 additions and 1 deletions

View file

@ -374,8 +374,10 @@ export class LionCalendar extends LocalizeMixin(LitElement) {
}
__disableDatesChanged() {
if (this.__connectedCallbackDone) {
this.__ensureValidCentralDate();
}
}
__dateSelectedByUser(selectedDate) {
this.selectedDate = selectedDate;

View file

@ -306,6 +306,22 @@ describe('<lion-calendar>', () => {
expect(new DayObject(d).isDisabled).to.equal(shouldBeDisabled);
});
});
it('does not prevent initializing "centralDate" from "selectedDate" when today is disabled', async () => {
const clock = sinon.useFakeTimers({ now: new Date('2019/06/03').getTime() });
const el = await fixture(html`
<lion-calendar
.selectedDate="${new Date('2001/01/08')}"
.disableDates=${day => day.getDate() === 3}
></lion-calendar>
`);
const elObj = new CalendarObject(el);
expect(isSameDate(el.centralDate, new Date('2001/01/08'))).to.be.true;
expect(elObj.activeMonthAndYear).to.equal('January 2001');
clock.restore();
});
});
});