33aae62dca7bd174fde5b0afbe732871d60e13fbLuke Smith "Y.DataTable should be augmented": function () {
33aae62dca7bd174fde5b0afbe732871d60e13fbLuke Smith new Y.DataTable().hasImpl(Y.DataTable.Scrollable));
33aae62dca7bd174fde5b0afbe732871d60e13fbLuke Smith "Y.DataTable.Base should not be augmented": function () {
33aae62dca7bd174fde5b0afbe732871d60e13fbLuke Smith new Y.DataTable.Base().hasImpl(Y.DataTable.Scrollable));
33aae62dca7bd174fde5b0afbe732871d60e13fbLuke Smith "Y.DataTable constructor should not error": function () {
33aae62dca7bd174fde5b0afbe732871d60e13fbLuke Smith Y.Assert.isTrue(table.hasImpl(Y.DataTable.Scrollable));
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith tearDown: function () {
33aae62dca7bd174fde5b0afbe732871d60e13fbLuke Smith "test scrollable values": function () {
33aae62dca7bd174fde5b0afbe732871d60e13fbLuke Smith * Commented out until #2528732 is fixed
33aae62dca7bd174fde5b0afbe732871d60e13fbLuke Smith config.scrollable = 'ab';
33aae62dca7bd174fde5b0afbe732871d60e13fbLuke Smith table = new Y.DataTable(config);
33aae62dca7bd174fde5b0afbe732871d60e13fbLuke Smith Y.Assert.isFalse(table.get('scrollable'));
33aae62dca7bd174fde5b0afbe732871d60e13fbLuke Smith config.scrollable = ['x', 'y'];
33aae62dca7bd174fde5b0afbe732871d60e13fbLuke Smith table = new Y.DataTable(config);
33aae62dca7bd174fde5b0afbe732871d60e13fbLuke Smith Y.Assert.isFalse(table.get('scrollable'));
33aae62dca7bd174fde5b0afbe732871d60e13fbLuke Smith config.scrollable = { x: true };
33aae62dca7bd174fde5b0afbe732871d60e13fbLuke Smith table = new Y.DataTable(config);
33aae62dca7bd174fde5b0afbe732871d60e13fbLuke Smith Y.Assert.isFalse(table.get('scrollable'));
33aae62dca7bd174fde5b0afbe732871d60e13fbLuke Smith "test set('scrollable')": function () {
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith "render() with 'scrollable' unset should not include scrolling UI": function () {
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isNull(boundingBox.one('.yui3-datatable-x-scroller'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Default table has X scroll node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isNull(boundingBox.one('.yui3-datatable-y-scroller'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Default table has Y scroll node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isNull(boundingBox.one('.yui3-datatable-y-scroller-container'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Default table has Y scroll container node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isNull(boundingBox.one('.yui3-datatable-scrollbar'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Default table has virtual scrollbar node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isNull(boundingBox.one('.yui3-datatable-caption-table'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Default table has caption table node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isNull(boundingBox.one('.yui3-datatable-scroll-columns'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Default table has fixed header node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isFalse(boundingBox.hasClass('yui3-datatable-scrollable-x'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Default table has scrollable-x class');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isFalse(boundingBox.hasClass('yui3-datatable-scrollable-y'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Default table has scrollable-y class');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith "render() with scrollable set, but neither width/height should not render scroll UI": function () {
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isNull(boundingBox.one('.yui3-datatable-x-scroller'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Default table has X scroll node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isNull(boundingBox.one('.yui3-datatable-y-scroller'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Default table has Y scroll node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isNull(boundingBox.one('.yui3-datatable-y-scroller-container'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Default table has Y scroll container node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isNull(boundingBox.one('.yui3-datatable-scrollbar'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Default table has virtual scrollbar node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isNull(boundingBox.one('.yui3-datatable-caption-table'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Default table has caption table node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isNull(boundingBox.one('.yui3-datatable-scroll-columns'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Default table has fixed header node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isFalse(boundingBox.hasClass('yui3-datatable-scrollable-x'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Default table has scrollable-x class');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isFalse(boundingBox.hasClass('yui3-datatable-scrollable-y'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Default table has scrollable-y class');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isNull(boundingBox.one('.yui3-datatable-x-scroller'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Default table has X scroll node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isNull(boundingBox.one('.yui3-datatable-y-scroller'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Default table has Y scroll node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isNull(boundingBox.one('.yui3-datatable-y-scroller-container'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Default table has Y scroll container node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isNull(boundingBox.one('.yui3-datatable-scrollbar'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Default table has virtual scrollbar node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isNull(boundingBox.one('.yui3-datatable-caption-table'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Default table has caption table node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isNull(boundingBox.one('.yui3-datatable-scroll-columns'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Default table has fixed header node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isFalse(boundingBox.hasClass('yui3-datatable-scrollable-x'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Default table has scrollable-x class');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isFalse(boundingBox.hasClass('yui3-datatable-scrollable-y'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Default table has scrollable-y class');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isNull(boundingBox.one('.yui3-datatable-x-scroller'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Default table has X scroll node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isNull(boundingBox.one('.yui3-datatable-y-scroller'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Default table has Y scroll node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isNull(boundingBox.one('.yui3-datatable-y-scroller-container'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Default table has Y scroll container node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isNull(boundingBox.one('.yui3-datatable-scrollbar'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Default table has virtual scrollbar node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isNull(boundingBox.one('.yui3-datatable-caption-table'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Default table has caption table node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isNull(boundingBox.one('.yui3-datatable-scroll-columns'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Default table has fixed header node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isFalse(boundingBox.hasClass('yui3-datatable-scrollable-x'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Default table has scrollable-x class');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isFalse(boundingBox.hasClass('yui3-datatable-scrollable-y'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Default table has scrollable-y class');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith "render() with scrollable: x + width should render x scroller": function () {
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isInstanceOf(Y.Node, boundingBox.one('.yui3-datatable-x-scroller'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'X scrolling table missing X scroll node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isNull(boundingBox.one('.yui3-datatable-y-scroller'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'X scrolling table has Y scroll node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isNull(boundingBox.one('.yui3-datatable-y-scroller-container'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'X scrolling table has Y scroll container node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isNull(boundingBox.one('.yui3-datatable-scrollbar'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'X scrolling table has virtual scrollbar node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isNull(boundingBox.one('.yui3-datatable-caption-table'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'X scrolling table has caption table node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isNull(boundingBox.one('.yui3-datatable-scroll-columns'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'X scrolling table has fixed header node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isTrue(boundingBox.hasClass('yui3-datatable-scrollable-x'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'X scrolling table missing scrollable-x class');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isFalse(boundingBox.hasClass('yui3-datatable-scrollable-y'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'X scrolling table has scrollable-y class');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith "render() with scrollable: y + height should render y scroll DOM": function () {
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isNull(boundingBox.one('.yui3-datatable-x-scroller'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Y scrolling table has X scroll node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isInstanceOf(Y.Node, boundingBox.one('.yui3-datatable-y-scroller'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Y scrolling table missing Y scroll node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isInstanceOf(Y.Node, boundingBox.one('.yui3-datatable-y-scroller-container'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Y scrolling table missing Y scroll container node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isInstanceOf(Y.Node, boundingBox.one('.yui3-datatable-scrollbar'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Y scrolling table missing virtual scrollbar node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isNull(boundingBox.one('.yui3-datatable-caption-table'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Y scrolling table has caption table node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isInstanceOf(Y.Node, boundingBox.one('.yui3-datatable-scroll-columns'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Y scrolling table missing fixed header node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isFalse(boundingBox.hasClass('yui3-datatable-scrollable-x'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Y scrolling table has scrollable-x class');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isTrue(boundingBox.hasClass('yui3-datatable-scrollable-y'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Y scrolling table missing scrollable-y class');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith "render() with scrollable: xy + height, width should render x and y scroll DOM": function () {
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isInstanceOf(Y.Node, boundingBox.one('.yui3-datatable-x-scroller'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'XY scrolling table missing X scroll node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isInstanceOf(Y.Node, boundingBox.one('.yui3-datatable-y-scroller'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'XY scrolling table missing Y scroll node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isInstanceOf(Y.Node, boundingBox.one('.yui3-datatable-y-scroller-container'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'XY scrolling table missing Y scroll container node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isInstanceOf(Y.Node, boundingBox.one('.yui3-datatable-scrollbar'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'XY scrolling table missing virtual scrollbar node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isNull(boundingBox.one('.yui3-datatable-caption-table'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'XY scrolling table has caption table node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isInstanceOf(Y.Node, boundingBox.one('.yui3-datatable-scroll-columns'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'XY scrolling table missing fixed header node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isTrue(boundingBox.hasClass('yui3-datatable-scrollable-x'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'XY scrolling table missing scrollable-x class');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isTrue(boundingBox.hasClass('yui3-datatable-scrollable-y'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'XY scrolling table missing scrollable-y class');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith "set('scrollable', 'x') after render() should add x scroll DOM": function () {
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isTrue(boundingBox.hasClass('yui3-datatable-scrollable-x'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'X scrolling table missing scrollable-x class');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isInstanceOf(Y.Node, boundingBox.one('.yui3-datatable-x-scroller'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'X scrolling table missing X scroll node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith "set('scrollable', 'y') after render() should add y scroll DOM": function () {
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isTrue(boundingBox.hasClass('yui3-datatable-scrollable-y'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Y scrolling table missing scrollable-y class');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isInstanceOf(Y.Node, boundingBox.one('.yui3-datatable-y-scroller-container'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Y scrolling table missing Y scroll container node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isInstanceOf(Y.Node, boundingBox.one('.yui3-datatable-scroll-columns'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Y scrolling table missing Y scroll fixed header node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isInstanceOf(Y.Node, boundingBox.one('.yui3-datatable-y-scroller'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Y scrolling table missing Y scroll node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isInstanceOf(Y.Node, boundingBox.one('.yui3-datatable-scrollbar'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Y scrolling table missing virtual scrollbar node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith "set('scrollable', 'xy') after render() should add y scroll DOM": function () {
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isTrue(boundingBox.hasClass('yui3-datatable-scrollable-x'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'XY scrolling table missing scrollable-x class');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isTrue(boundingBox.hasClass('yui3-datatable-scrollable-y'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'XY scrolling table missing scrollable-y class');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isInstanceOf(Y.Node, boundingBox.one('.yui3-datatable-x-scroller'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'XY scrolling table missing X scroll node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isInstanceOf(Y.Node, boundingBox.one('.yui3-datatable-y-scroller-container'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'XY scrolling table missing Y scroll container node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isInstanceOf(Y.Node, boundingBox.one('.yui3-datatable-scroll-columns'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'XY scrolling table missing Y scroll fixed header node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isInstanceOf(Y.Node, boundingBox.one('.yui3-datatable-y-scroller'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'XY scrolling table missing Y scroll node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isInstanceOf(Y.Node, boundingBox.one('.yui3-datatable-scrollbar'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'XY scrolling table missing virtual scrollbar node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith "set('scrollable', 'x') from 'xy' should remove y scroll DOM": function () {
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isTrue(boundingBox.hasClass('yui3-datatable-scrollable-x'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'X scrolling table missing scrollable-x class');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isFalse(boundingBox.hasClass('yui3-datatable-scrollable-y'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'X scrolling table has scrollable-y class');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isInstanceOf(Y.Node, boundingBox.one('.yui3-datatable-x-scroller'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'X scrolling table missing X scroll node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isNull(boundingBox.one('.yui3-datatable-y-scroller-container'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'X scrolling table has Y scroll container node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isNull(boundingBox.one('.yui3-datatable-scroll-columns'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'X scrolling table has Y scroll fixed header node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isNull(boundingBox.one('.yui3-datatable-y-scroller'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'X scrolling table has Y scroll node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isNull(boundingBox.one('.yui3-datatable-scrollbar'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'X scrolling table has virtual scrollbar node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith "set('scrollable', 'y') from 'xy' should remove x scroll DOM": function () {
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isFalse(boundingBox.hasClass('yui3-datatable-scrollable-x'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Y scrolling table has scrollable-x class');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isTrue(boundingBox.hasClass('yui3-datatable-scrollable-y'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Y scrolling table missing scrollable-y class');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isNull(boundingBox.one('.yui3-datatable-x-scroller'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Y scrolling table has X scroll node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isInstanceOf(Y.Node, boundingBox.one('.yui3-datatable-y-scroller-container'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Y scrolling table missing Y scroll container node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isInstanceOf(Y.Node, boundingBox.one('.yui3-datatable-scroll-columns'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Y scrolling table missing Y scroll fixed header node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isInstanceOf(Y.Node, boundingBox.one('.yui3-datatable-y-scroller'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Y scrolling table missing Y scroll node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isInstanceOf(Y.Node, boundingBox.one('.yui3-datatable-scrollbar'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Y scrolling table missing virtual scrollbar node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith "set('scrollable', false) from 'x' should remove x scroll DOM": function () {
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isFalse(boundingBox.hasClass('yui3-datatable-scrollable-x'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Non-scrolling table has scrollable-x class');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isNull(boundingBox.one('.yui3-datatable-x-scroller'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Non-scrolling table has X scroll node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith "set('scrollable', false) from 'y' should remove y scroll DOM": function () {
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isFalse(boundingBox.hasClass('yui3-datatable-scrollable-y'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Non-scrolling table has scrollable-y class');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isNull(boundingBox.one('.yui3-datatable-y-scroller-container'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Non-scrolling table has Y scroll container node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isNull(boundingBox.one('.yui3-datatable-scroll-columns'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Non-scrolling table has Y scroll fixed header node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isNull(boundingBox.one('.yui3-datatable-y-scroller'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Non-scrolling table has Y scroll node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isNull(boundingBox.one('.yui3-datatable-scrollbar'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Non-scrolling table has virtual scrollbar node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith "set('scrollable', false) from 'xy' should remove x and y scroll DOM": function () {
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isFalse(boundingBox.hasClass('yui3-datatable-scrollable-x'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Non-scrolling table has scrollable-x class');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isFalse(boundingBox.hasClass('yui3-datatable-scrollable-y'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Non-scrolling table has scrollable-y class');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isNull(boundingBox.one('.yui3-datatable-x-scroller'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Non-scrolling table has X scroll node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isNull(boundingBox.one('.yui3-datatable-y-scroller-container'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Non-scrolling table has Y scroll container node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isNull(boundingBox.one('.yui3-datatable-scroll-columns'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Non-scrolling table has Y scroll fixed header node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isNull(boundingBox.one('.yui3-datatable-y-scroller'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Non-scrolling table has Y scroll node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isNull(boundingBox.one('.yui3-datatable-scrollbar'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Non-scrolling table has virtual scrollbar node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith "set('scrollable', 'x') from 'y' should add x scroll DOM and remove y scroll DOM": function () {
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isTrue(boundingBox.hasClass('yui3-datatable-scrollable-x'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'X scrolling table missing scrollable-x class');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isFalse(boundingBox.hasClass('yui3-datatable-scrollable-y'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'X scrolling table has scrollable-y class');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isInstanceOf(Y.Node, boundingBox.one('.yui3-datatable-x-scroller'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'X scrolling table missing X scroll node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isNull(boundingBox.one('.yui3-datatable-y-scroller-container'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'X scrolling table has Y scroll container node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isNull(boundingBox.one('.yui3-datatable-scroll-columns'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'X scrolling table has Y scroll fixed header node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isNull(boundingBox.one('.yui3-datatable-y-scroller'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'X scrolling table has Y scroll node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isNull(boundingBox.one('.yui3-datatable-scrollbar'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'X scrolling table has virtual scrollbar node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith "set('scrollable', 'y') from 'x' should add y scroll DOM and remove x scroll DOM": function () {
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isFalse(boundingBox.hasClass('yui3-datatable-scrollable-x'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Y scrolling table has scrollable-x class');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isTrue(boundingBox.hasClass('yui3-datatable-scrollable-y'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Y scrolling table missing scrollable-y class');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isNull(boundingBox.one('.yui3-datatable-x-scroller'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Y scrolling table has X scroll node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isInstanceOf(Y.Node, boundingBox.one('.yui3-datatable-y-scroller-container'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Y scrolling table missing Y scroll container node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isInstanceOf(Y.Node, boundingBox.one('.yui3-datatable-scroll-columns'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Y scrolling table missing Y scroll fixed header node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isInstanceOf(Y.Node, boundingBox.one('.yui3-datatable-y-scroller'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Y scrolling table missing Y scroll node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isInstanceOf(Y.Node, boundingBox.one('.yui3-datatable-scrollbar'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'Y scrolling table missing virtual scrollbar node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith "set('scrollable', 'xy') from 'y' should add x scroll DOM outside y scroll DOM": function () {
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isTrue(boundingBox.hasClass('yui3-datatable-scrollable-x'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'XY scrolling table missing scrollable-x class');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isTrue(boundingBox.hasClass('yui3-datatable-scrollable-y'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'XY scrolling table missing scrollable-y class');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isInstanceOf(Y.Node, boundingBox.one('.yui3-datatable-x-scroller'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'XY scrolling table missing X scroll node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isInstanceOf(Y.Node, boundingBox.one('.yui3-datatable-y-scroller-container'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'XY scrolling table missing Y scroll container node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isInstanceOf(Y.Node, boundingBox.one('.yui3-datatable-scroll-columns'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'XY scrolling table missing Y scroll fixed header node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isInstanceOf(Y.Node, boundingBox.one('.yui3-datatable-y-scroller'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'XY scrolling table missing Y scroll node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isInstanceOf(Y.Node, boundingBox.one('.yui3-datatable-scrollbar'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith 'XY scrolling table missing virtual scrollbar node');
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith Y.Assert.isTrue(boundingBox.one('.yui3-datatable-y-scroller-container')
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith .get('parentNode').test('.yui3-datatable-x-scroller'),
3915fbd207f60de0f006499e756901ff6c4cd8a5Luke Smith "X scroll container didn't wrap Y scroll DOM");
6ed8155c20400990c7e65faa4b40aef98c5b5136Luke Smith setUp: function () {
6ed8155c20400990c7e65faa4b40aef98c5b5136Luke Smith var data = [], i;
6ed8155c20400990c7e65faa4b40aef98c5b5136Luke Smith for (; i < 100; ++i) {
33aae62dca7bd174fde5b0afbe732871d60e13fbLuke Smith "": function () {
6ed8155c20400990c7e65faa4b40aef98c5b5136Luke Smith "": function () {
6ed8155c20400990c7e65faa4b40aef98c5b5136Luke Smith "": function () {
6ed8155c20400990c7e65faa4b40aef98c5b5136Luke Smith "": function () {
6ed8155c20400990c7e65faa4b40aef98c5b5136Luke Smith}, '@VERSION@' ,{requires:['datatable-scroll', 'test']});