describe("JSInput", function() { beforeEach(function () { loadFixtures('js/capa/fixtures/jsinput.html'); }); it('sets all data-processed attributes to true on first load', function() { var sections = $(document).find('section[id="inputtype_"]'); JSInput.walkDOM(); sections.each(function(index, section) { expect(section.attr('data-processed')).toEqual('true'); }); }); it('sets the data-processed attribute to true on subsequent load', function() { var section1 = $(document).find('section[id="inputtype_1"]'), section2 = $(document).find('section[id="inputtype_2"]'); section1.attr('data-processed', false); JSInput.walkDOM(); expect(section1.attr('data-processed')).toEqual('true'); expect(section2.attr('data-processed')).toEqual('true'); }); it('sets the waitfor attribute to its update function', function() { var inputFields = $(document).find('input[id="input_"]'); JSInput.walkDOM(); inputFields.each(function(index, inputField) { expect(inputField.data('waitfor')).toBeDefined(); }); }); });