Sha256: 52fde3b88867064353263a3251cf6f4a1342f55d6ddad5c9dec16e465727603f

Contents?: true

Size: 1.63 KB

Versions: 13

Compression:

Stored size: 1.63 KB

Contents

describe('Deck JS Menu', function() {
	var $d = $(document),
	dsc = defaults.selectors.container;
	
	beforeEach(function() {
		loadFixtures('standard.html');
		if (Modernizr.history) {
			history.replaceState({}, "", "#")
		}
		else {
			window.location.hash = '#';
		}
		$.deck('.slide');
	});
	
	describe('showMenu()', function() {
		it('should show the menu', function() {
			expect($(dsc)).not.toHaveClass(defaults.classes.menu);
			$.deck('showMenu');
			expect($(dsc)).toHaveClass(defaults.classes.menu);
		});
		
		it('should do nothing if menu is already showing', function() {
			if (Modernizr.csstransforms) {
				$.deck('showMenu');
				$.deck('showMenu');
				$.deck('hideMenu');
				expect($('.slide').attr('style')).toBeFalsy();
			}
		});
	});
	
	describe('hideMenu()', function() {
		it('should hide the menu', function() {
			$.deck('showMenu');
			$.deck('hideMenu');
			expect($(dsc)).not.toHaveClass(defaults.classes.menu);
		});
	});
	
	describe('toggleMenu()', function() {
		it('should toggle menu on and off', function() {
			expect($(dsc)).not.toHaveClass(defaults.classes.menu);
			$.deck('toggleMenu');
			expect($(dsc)).toHaveClass(defaults.classes.menu);
			$.deck('toggleMenu');
			expect($(dsc)).not.toHaveClass(defaults.classes.menu);
		});
	});
	
	describe('key bindings', function() {
		var e;

		beforeEach(function() {
			e = jQuery.Event('keydown.deckmenu');
		});
		
		it('should toggle the menu if the specified key is pressed', function() {
			e.which = 77; // m
			$d.trigger(e);
			expect($(dsc)).toHaveClass(defaults.classes.menu);
			$d.trigger(e);
			expect($(dsc)).not.toHaveClass(defaults.classes.menu);
		});
	});
});

Version data entries

13 entries across 13 versions & 2 rubygems

Version Path
deckrb-0.5.2 public/deck.js/test/spec.menu.js
deckrb-0.5.1 public/deck.js/test/spec.menu.js
deckrb-0.5.0 public/deck.js/test/spec.menu.js
deckrb-0.4.2 public/deck.js/test/spec.menu.js
deckrb-0.4.1 public/deck.js/test/spec.menu.js
deckr-0.1.0 lib/deckr/templates/deck/test/spec.menu.js
deckrb-0.4.0 public/deck.js/test/spec.menu.js
deckrb-0.3.1 public/deck.js/test/spec.menu.js
deckrb-0.3.0 public/deck.js/test/spec.menu.js
deckrb-0.2.2 public/deck.js/test/spec.menu.js
deckrb-0.2.1 public/deck.js/test/spec.menu.js
deckrb-0.2.0 public/deck.js/test/spec.menu.js
deckrb-0.1.0 deck/test/spec.menu.js