plugin.options.should.be.an('object');
});
});
-
+
describe('up()', function() {
it('closes the targeted submenu', function(done) {
$html = $(template).appendTo('body');
plugin = new Foundation.AccordionMenu($html);
+ const $submenu = $html.find('.is-accordion-submenu').eq(0);
// Open it first
- plugin.down($html.find('.is-accordion-submenu').eq(0));
-
- plugin.up($html.find('.is-accordion-submenu').eq(0));
+ plugin.down($submenu);
+
+ plugin.up($submenu);
+
setTimeout(() => {
- $html.find('.is-accordion-submenu').eq(0).should.be.hidden;
+ // Should be hidden
+ $submenu.should.be.hidden;
+ // Should have attributes updated and without active classe
+ $submenu.should.have.attr('aria-hidden', 'true');
+ $submenu.should.not.have.class('is-active');
done();
}, 1);
});
it('opens the targeted submenu', function() {
$html = $(template).appendTo('body');
plugin = new Foundation.AccordionMenu($html, {});
+ const $submenu = $html.find('.is-accordion-submenu').eq(0);
- plugin.down($html.find('.is-accordion-submenu').eq(0));
- $html.find('.is-accordion-submenu').eq(0).should.be.visible;
+ plugin.down($submenu);
+
+ // Should be visible
+ $submenu.should.be.visible;
+ // Should have attributes updated and with an active classe
+ $submenu.should.have.attr('aria-hidden', 'false');
+ $submenu.should.have.class('is-active');
});
it('toggles attributes of title of the targeted submenu', function() {
// Open another one first
plugin.down($html.find('.is-accordion-submenu').eq(0));
-
+
plugin.down($html.find('.is-accordion-submenu').eq(2));
$html.find('.is-accordion-submenu').eq(0).should.be.hidden;
});
// Open another one first
plugin.down($html.find('.is-accordion-submenu').eq(0));
-
+
plugin.down($html.find('.is-accordion-submenu').eq(2));
$html.find('.is-accordion-submenu').eq(0).should.be.visible;
});