9dc7f0d44274115d9742ccaebf0ca735ddc68885Eric FerraiuoloYUI.add('widget-position-test', function (Y) {
9dc7f0d44274115d9742ccaebf0ca735ddc68885Eric Ferraiuolo
9dc7f0d44274115d9742ccaebf0ca735ddc68885Eric Ferraiuolovar Assert = Y.Assert,
9dc7f0d44274115d9742ccaebf0ca735ddc68885Eric Ferraiuolo ArrayAssert = Y.ArrayAssert,
9dc7f0d44274115d9742ccaebf0ca735ddc68885Eric Ferraiuolo
ea66fc748b0c20e20bc3d09027ca29151e95ce39Eric Ferraiuolo suite, TestWidget;
9dc7f0d44274115d9742ccaebf0ca735ddc68885Eric Ferraiuolo
9dc7f0d44274115d9742ccaebf0ca735ddc68885Eric Ferraiuolo// -- Suite --------------------------------------------------------------------
9d74d46d27be0129807fffdf6768653e06f5a292Eric Ferraiuolosuite = new Y.Test.Suite('WidgetPosition');
9dc7f0d44274115d9742ccaebf0ca735ddc68885Eric FerraiuoloTestWidget = Y.Base.create('testWidget', Y.Widget, [Y.WidgetPosition]);
9dc7f0d44274115d9742ccaebf0ca735ddc68885Eric Ferraiuolo
9dc7f0d44274115d9742ccaebf0ca735ddc68885Eric Ferraiuolo// -- Lifecycle ----------------------------------------------------------------
9dc7f0d44274115d9742ccaebf0ca735ddc68885Eric Ferraiuolosuite.add(new Y.Test.Case({
9dc7f0d44274115d9742ccaebf0ca735ddc68885Eric Ferraiuolo name: 'Lifecycle',
9dc7f0d44274115d9742ccaebf0ca735ddc68885Eric Ferraiuolo
9dc7f0d44274115d9742ccaebf0ca735ddc68885Eric Ferraiuolo tearDown: function () {
9dc7f0d44274115d9742ccaebf0ca735ddc68885Eric Ferraiuolo this.widget && this.widget.destroy();
9dc7f0d44274115d9742ccaebf0ca735ddc68885Eric Ferraiuolo delete this.widget;
9dc7f0d44274115d9742ccaebf0ca735ddc68885Eric Ferraiuolo Y.one('#test').empty();
9dc7f0d44274115d9742ccaebf0ca735ddc68885Eric Ferraiuolo },
9dc7f0d44274115d9742ccaebf0ca735ddc68885Eric Ferraiuolo
ea66fc748b0c20e20bc3d09027ca29151e95ce39Eric Ferraiuolo 'WidgetPosition should add `x`, `y`, and `xy` attributes': function () {
9dc7f0d44274115d9742ccaebf0ca735ddc68885Eric Ferraiuolo this.widget = new TestWidget();
9dc7f0d44274115d9742ccaebf0ca735ddc68885Eric Ferraiuolo this.widget.render('#test');
9dc7f0d44274115d9742ccaebf0ca735ddc68885Eric Ferraiuolo
ea66fc748b0c20e20bc3d09027ca29151e95ce39Eric Ferraiuolo Assert.areSame(0, this.widget.get('x'), '`x` is not 0.');
ea66fc748b0c20e20bc3d09027ca29151e95ce39Eric Ferraiuolo Assert.areSame(0, this.widget.get('y'), '`y` is not 0.');
9dc7f0d44274115d9742ccaebf0ca735ddc68885Eric Ferraiuolo Assert.isArray(this.widget.get('xy'), '`xy` is not an Array.');
ea66fc748b0c20e20bc3d09027ca29151e95ce39Eric Ferraiuolo },
ea66fc748b0c20e20bc3d09027ca29151e95ce39Eric Ferraiuolo
ea66fc748b0c20e20bc3d09027ca29151e95ce39Eric Ferraiuolo '`move()` should move the widget to the new `xy`': function () {
ea66fc748b0c20e20bc3d09027ca29151e95ce39Eric Ferraiuolo this.widget = new TestWidget();
ea66fc748b0c20e20bc3d09027ca29151e95ce39Eric Ferraiuolo this.widget.render('#test');
ea66fc748b0c20e20bc3d09027ca29151e95ce39Eric Ferraiuolo
ea66fc748b0c20e20bc3d09027ca29151e95ce39Eric Ferraiuolo Assert.areSame(0, this.widget.get('x'), '`x` is not 0.');
ea66fc748b0c20e20bc3d09027ca29151e95ce39Eric Ferraiuolo Assert.areSame(0, this.widget.get('y'), '`y` is not 0.');
ea66fc748b0c20e20bc3d09027ca29151e95ce39Eric Ferraiuolo
ea66fc748b0c20e20bc3d09027ca29151e95ce39Eric Ferraiuolo this.widget.move(10, 10);
ea66fc748b0c20e20bc3d09027ca29151e95ce39Eric Ferraiuolo
ea66fc748b0c20e20bc3d09027ca29151e95ce39Eric Ferraiuolo Assert.areSame(10, this.widget.get('x'), '`x` is not 0.');
ea66fc748b0c20e20bc3d09027ca29151e95ce39Eric Ferraiuolo Assert.areSame(10, this.widget.get('y'), '`y` is not 0.');
ea66fc748b0c20e20bc3d09027ca29151e95ce39Eric Ferraiuolo
ea66fc748b0c20e20bc3d09027ca29151e95ce39Eric Ferraiuolo this.widget.set('x', 20);
ea66fc748b0c20e20bc3d09027ca29151e95ce39Eric Ferraiuolo this.widget.set('y', 20);
ea66fc748b0c20e20bc3d09027ca29151e95ce39Eric Ferraiuolo
ea66fc748b0c20e20bc3d09027ca29151e95ce39Eric Ferraiuolo Assert.areSame(20, this.widget.get('x'), '`x` is not 0.');
ea66fc748b0c20e20bc3d09027ca29151e95ce39Eric Ferraiuolo Assert.areSame(20, this.widget.get('y'), '`y` is not 0.');
9dc7f0d44274115d9742ccaebf0ca735ddc68885Eric Ferraiuolo }
9dc7f0d44274115d9742ccaebf0ca735ddc68885Eric Ferraiuolo}));
9dc7f0d44274115d9742ccaebf0ca735ddc68885Eric Ferraiuolo
9dc7f0d44274115d9742ccaebf0ca735ddc68885Eric FerraiuoloY.Test.Runner.add(suite);
9dc7f0d44274115d9742ccaebf0ca735ddc68885Eric Ferraiuolo
9dc7f0d44274115d9742ccaebf0ca735ddc68885Eric Ferraiuolo}, '@VERSION@', {
9dc7f0d44274115d9742ccaebf0ca735ddc68885Eric Ferraiuolo requires: ['widget-position', 'test']
9dc7f0d44274115d9742ccaebf0ca735ddc68885Eric Ferraiuolo});