describe("loading states extension", function () {
beforeEach(function () {
this.server = makeServer();
this.clock = sinon.useFakeTimers();
clearWorkArea();
});
afterEach(function () {
this.server.restore();
this.clock.restore();
clearWorkArea();
});
it('works on basic setup', function () {
this.server.respondWith("GET", "/test", "Clicked!");
var btn = make('');
var element = make('
');
btn.click();
element.style.display.should.be.equal("inline-block");
this.server.respond();
element.style.display.should.be.equal("none");
btn.innerHTML.should.equal("Clicked!");
});
it('works with custom display', function () {
this.server.respondWith("GET", "/test", "Clicked!");
var btn = make('');
var element = make('
');
btn.click();
element.style.display.should.be.equal("flex");
this.server.respond();
element.style.display.should.be.equal("none");
btn.innerHTML.should.equal("Clicked!");
});
it('works with classes', function () {
this.server.respondWith("GET", "/test", "Clicked!");
var btn = make('');
var element = make('
');
btn.click();
element.should.have.class("test");
this.server.respond();
element.should.not.have.class("test");
btn.innerHTML.should.equal("Clicked!");
});
it('works with classes removal', function () {
this.server.respondWith("GET", "/test", "Clicked!");
var btn = make('');
var element = make('
');
btn.click();
element.should.not.have.class("test");
this.server.respond();
element.should.have.class("test");
btn.innerHTML.should.equal("Clicked!");
});
it('works with disabling', function () {
this.server.respondWith("GET", "/test", "Clicked!");
var btn = make('');
var element = make('