blob: 121cf6316f828c517b0b360626f3e887c00905f6 [file] [log] [blame]
describe('app', function() {
describe('initialize', function() {
it('should bind deviceready', function() {
runs(function() {
spyOn(app, 'deviceready');
app.initialize();
helper.trigger(window.document, 'deviceready');
});
waitsFor(function() {
return (app.deviceready.calls.length > 0);
}, 'deviceready should be called once', 500);
runs(function() {
expect(app.deviceready).toHaveBeenCalled();
});
});
});
describe('deviceready', function() {
it('should report that it fired', function() {
spyOn(app, 'report');
app.deviceready();
expect(app.report).toHaveBeenCalledWith('deviceready');
});
});
describe('report', function() {
beforeEach(function() {
var el = document.getElementById('stage');
el.innerHTML = ['<div id="deviceready">',
' <p class="status pending">Pending</p>',
' <p class="status complete hide">Complete</p>',
'</div>'].join('\n');
});
it('should show the completion state', function() {
app.report('deviceready');
var el = document.querySelector('#deviceready .complete:not(.hide)');
expect(el).toBeTruthy();
});
it('should hide the pending state', function() {
app.report('deviceready');
var el = document.querySelector('#deviceready .pending.hide');
expect(el).toBeTruthy();
});
});
});