4b1ca32b107db5aba328c40574d62b0773cab275Eric Ferraiuolo// -- Suite --------------------------------------------------------------------
4b1ca32b107db5aba328c40574d62b0773cab275Eric FerraiuoloTestWidget = Y.Base.create('testWidget', Y.Widget, [Y.WidgetStack]);
4b1ca32b107db5aba328c40574d62b0773cab275Eric Ferraiuolo// -- Lifecycle ----------------------------------------------------------------
4b1ca32b107db5aba328c40574d62b0773cab275Eric Ferraiuolo tearDown: function () {
def498f726d18f7ebbb4412cb6cae1b39fcc96ccEric Ferraiuolo 'WidgetStack should add `shim` and `zIndex` attributes': function () {
def498f726d18f7ebbb4412cb6cae1b39fcc96ccEric Ferraiuolo Assert.areSame(10, this.widget.get('zIndex'), '`zIndex` is not 10.');
def498f726d18f7ebbb4412cb6cae1b39fcc96ccEric Ferraiuolo Assert.areSame(true, this.widget.get('shim'), '`shim` is not `true`.');
7fac276f7bad8999927d1d86d779393dc7240ce6Eric Ferraiuolo// -- Attributes and Properties ------------------------------------------------
7fac276f7bad8999927d1d86d779393dc7240ce6Eric Ferraiuolo tearDown: function () {
7fac276f7bad8999927d1d86d779393dc7240ce6Eric Ferraiuolo 'zIndex of "auto" parsed from a node should not override the default': function () {
7fac276f7bad8999927d1d86d779393dc7240ce6Eric Ferraiuolo // The follow nodes should all be considered to have an "auto" `zIndex`.
7fac276f7bad8999927d1d86d779393dc7240ce6Eric Ferraiuolo offDocStyle = Y.Node.create('<div style="z-index: 10;" />'),
7fac276f7bad8999927d1d86d779393dc7240ce6Eric Ferraiuolo offDocStylePos = Y.Node.create('<div style="z-index: 10; position: relative;" />'),
7fac276f7bad8999927d1d86d779393dc7240ce6Eric Ferraiuolo inDoc = Y.Node.create('<div />').appendTo('#test'),
7fac276f7bad8999927d1d86d779393dc7240ce6Eric Ferraiuolo inDocStyle = Y.Node.create('<div style="z-index: 10" />').appendTo('#test'),
7fac276f7bad8999927d1d86d779393dc7240ce6Eric Ferraiuolo inDocCss = Y.Node.create('<div />').addClass('css-htmlparser').appendTo('#test'),
7fac276f7bad8999927d1d86d779393dc7240ce6Eric Ferraiuolo parseZIndex = Y.WidgetStack.prototype._parseZIndex;
7fac276f7bad8999927d1d86d779393dc7240ce6Eric Ferraiuolo Assert.areSame(null, parseZIndex(offDoc), 'offDoc did not have z-index: auto');
7fac276f7bad8999927d1d86d779393dc7240ce6Eric Ferraiuolo Assert.areSame(null, parseZIndex(offDocStyle), 'offDocStyle did not have z-index: auto');
7fac276f7bad8999927d1d86d779393dc7240ce6Eric Ferraiuolo Assert.areSame(null, parseZIndex(offDocStylePos), 'offDocStylePos did not have z-index: auto');
7fac276f7bad8999927d1d86d779393dc7240ce6Eric Ferraiuolo Assert.areSame(null, parseZIndex(inDoc), 'inDoc did not have z-index: auto');
7fac276f7bad8999927d1d86d779393dc7240ce6Eric Ferraiuolo Assert.areSame(null, parseZIndex(inDocStyle), 'inDocStyle did not have z-index: auto');
7fac276f7bad8999927d1d86d779393dc7240ce6Eric Ferraiuolo Assert.areSame(null, parseZIndex(inDocCss), 'inDocCss did not have z-index: auto');
7fac276f7bad8999927d1d86d779393dc7240ce6Eric Ferraiuolo srcNode: inDocStyle.cloneNode().appendTo('#test'),
7fac276f7bad8999927d1d86d779393dc7240ce6Eric Ferraiuolo Assert.areSame(0, this.widget.get('zIndex'), 'widget zIndex was not 0.');
7fac276f7bad8999927d1d86d779393dc7240ce6Eric Ferraiuolo Assert.areSame(0, parseInt(this.widget.get('boundingBox').getStyle('zIndex'), 10), 'widget bb zIndex was not 0.');
7fac276f7bad8999927d1d86d779393dc7240ce6Eric Ferraiuolo 'srcNode in the document with position should have its zIndex parsed from the DOM': function () {
7fac276f7bad8999927d1d86d779393dc7240ce6Eric Ferraiuolo var style = Y.Node.create('<div style="z-index: 10; position: relative;" />').appendTo('#test'),
7fac276f7bad8999927d1d86d779393dc7240ce6Eric Ferraiuolo css = Y.Node.create('<div style="position: relative;" />').addClass('css-htmlparser').appendTo('#test');
7fac276f7bad8999927d1d86d779393dc7240ce6Eric Ferraiuolo Assert.areSame(10, this.widget.get('zIndex'), 'widget zIndex was not 10.');
7fac276f7bad8999927d1d86d779393dc7240ce6Eric Ferraiuolo Assert.areSame(10, parseInt(this.widget.get('boundingBox').getStyle('zIndex'), 10), 'widget bb zIndex was not 10.');
7fac276f7bad8999927d1d86d779393dc7240ce6Eric Ferraiuolo Assert.areSame(2, this.widget.get('zIndex'), 'widget zIndex was not 2.');
7fac276f7bad8999927d1d86d779393dc7240ce6Eric Ferraiuolo Assert.areSame(2, parseInt(this.widget.get('boundingBox').getStyle('zIndex'), 10), 'widget bb zIndex was not 2.');
7fac276f7bad8999927d1d86d779393dc7240ce6Eric Ferraiuolo 'A user specified zIndex should override the parsed zIndex value': function () {
7fac276f7bad8999927d1d86d779393dc7240ce6Eric Ferraiuolo var srcNode = Y.Node.create('<div style="z-index: 10; position: relative;" />').appendTo('#test');
7fac276f7bad8999927d1d86d779393dc7240ce6Eric Ferraiuolo Assert.areSame(11, this.widget.get('zIndex'), 'widget zIndex was not 11.');
7fac276f7bad8999927d1d86d779393dc7240ce6Eric Ferraiuolo Assert.areSame(11, parseInt(this.widget.get('boundingBox').getStyle('zIndex'), 10), 'widget bb zIndex was not 11.');
4b1ca32b107db5aba328c40574d62b0773cab275Eric Ferraiuolo}, '@VERSION@', {