Files
fullcalendar/tests/automated/header.js
T

79 lines
2.9 KiB
JavaScript

describe('header testing', function() {
beforeEach(function() {
affix('#calendar');
});
describe('when using default header options', function() {
it('should have title as default on left', function() {
$('#calendar').fullCalendar();
var headr = $('#calendar > table.fc-header .fc-header-left > span')[0];
expect(headr).toHaveClass('fc-header-title');
});
it('should have empty center', function() {
$('#calendar').fullCalendar();
var cntr = $('#calendar > table.fc-header .fc-header-center')[0];
expect(cntr).toBeEmpty();
});
it('should have right with today|space|left|right', function() {
$('#calendar').fullCalendar();
var td = $('#calendar > table.fc-header .fc-header-right > span')[0];
var sp = $('#calendar > table.fc-header .fc-header-right > span')[1];
var lft = $('#calendar > table.fc-header .fc-header-right > span')[2];
var rt = $('#calendar > table.fc-header .fc-header-right > span')[3];
expect(td).toHaveClass('fc-button-today');
expect(sp).toHaveClass('fc-header-space');
expect(lft).toHaveClass('fc-button-prev');
expect(rt).toHaveClass('fc-button-next');
});
});
describe('when supplying header options', function() {
beforeEach(function() {
var options = {
header: {
left: 'next,prev',
center: 'prevYear today nextYear agendaView,dayView',
right: 'title'
}
};
$('#calendar').fullCalendar(options);
});
it('should have title on the right', function() {
var item = $('#calendar > table.fc-header .fc-header-right > span')[0];
expect(item).toHaveClass('fc-header-title');
});
it('should have next|prev on left', function() {
var nxt = $('#calendar > table.fc-header .fc-header-left > span')[0];
var prv = $('#calendar > table.fc-header .fc-header-left > span')[1];
expect(nxt).toHaveClass('fc-button-next');
expect(prv).toHaveClass('fc-button-prev');
});
it('should have prevYear|space|today|space|nextYear in center', function() {
var py = $('#calendar > table.fc-header .fc-header-center > span')[0];
var sp1 = $('#calendar > table.fc-header .fc-header-center > span')[1];
var td = $('#calendar > table.fc-header .fc-header-center > span')[2];
var sp2 = $('#calendar > table.fc-header .fc-header-center > span')[3];
var ny = $('#calendar > table.fc-header .fc-header-center > span')[4];
expect(py).toHaveClass('fc-button-prevYear');
expect(sp1).toHaveClass('fc-header-space');
expect(td).toHaveClass('fc-button-today');
expect(sp2).toHaveClass('fc-header-space');
expect(ny).toHaveClass('fc-button-nextYear');
});
});
describe('when setting header to false', function() {
beforeEach(function() {
var options = {
header: false
};
$('#calendar').fullCalendar(options);
})
it('should not have header table', function() {
var headerTableCount = $('table.fc-header').length;
expect(headerTableCount).toEqual(0);
});
});
});