Sha256: fcdd04fcb1fe56524b5d934acde468fb9b4fbbb43f9099880c8db03518b09ac1

Contents?: true

Size: 1.46 KB

Versions: 5

Compression:

Stored size: 1.46 KB

Contents

/*
---
name: Element.Event.Pseudos Tests
requires: [More/Element.Event.Pseudos, Core/Request.JSON]
provides: [Element.Event.Pseudos.Tests]
...
*/
describe('Element.Event.Pseudos', function(){

	it('tests the Event.definePseudo function', function(){

		var eventFn =  function(){
			return 'bar';
		},
		eventArgs = ['one', 'two', 'three'];

		Event.definePseudo('test', function(split, fn, args){
			expect(split).toEqual({
				event: 'e',
				value: 'foo',
				pseudo: 'test',
				original: 'e:test(foo)'
			});
			expect(fn).toEqual(eventFn);
			expect(Array.from(args)).toEqual(eventArgs);
		});

		var element = new Element('div');
		element.addEvent('e:test(foo)', eventFn);
		element.fireEvent('e', eventArgs);

	});

	describe('pseudos', function(){

		it('once: should fire the event once', function(){

			var i = 0;

			var database = new Class({
				Implements: Events,

				connect: function(){
					return this.fireEvent('connect');
				}
			});

			var db = new database();
			db.addEvent('connect:once', function(){
				i++;
			});
			db.connect().connect();

			expect(i).toEqual(1);

		});

	});

	// Test if Events.Pseudos is implemented in Fx.Tween and Request.JSON
	it('should test if Events.Pseudos is implemented in Fx.Tween and Request.JSON', function(){
		var reqComplete = jasmine.createSpy('requestComplete');
		var req = new Request.JSON().addEvent('complete:once', reqComplete);
		req.fireEvent('complete');
		expect(reqComplete).toHaveBeenCalled();
	});

});

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
lsd_rails-0.1.4 Packages/mootools-more/Tests/Specs/1.3/Element/Element.Event.Pseudos.js
lsd_rails-0.1.3 Packages/mootools-more/Tests/Specs/1.3/Element/Element.Event.Pseudos.js
lsd_rails-0.1.2 Packages/mootools-more/Tests/Specs/1.3/Element/Element.Event.Pseudos.js
lsd_rails-0.1.1 Packages/mootools-more/Tests/Specs/1.3/Element/Element.Event.Pseudos.js
lsd_rails-0.1 Packages/mootools-more/Tests/Specs/1.3/Element/Element.Event.Pseudos.js