#!/usr/bin/node //--------------------------------------------------------------------- var test = require('ig-test') var serialize = require('ig-serialize') var parser = require('../parser').parser //--------------------------------------------------------------------- test.Setups({ empty: function(assert){ return { code: [ '', '' ] }}, // XXX var... // XXX arg... // slot... slot_empty: function(assert){ return {code: [ '@slot(slot)', '@slot("slot")', '@slot(\'slot\')', '@slot(name=slot)', '@slot(name="slot")', '@slot(name=\'slot\')', '', '', '', '', '', '', '' ]} }, slot_value: function(assert){ return {code: [ '', '', '@slot(slot value)', '@slot(slot text=value)', 'value' ]} }, slot_fill: function(assert){ var ins = this.slot_value(assert).code.slice(0, -1) return {code: [ ...ins.map(function(e){ return e + '@slot(slot other)' }), ...ins.map(function(e){ return e + '' }), ...ins.map(function(e){ return e + 'other' }), 'other' ]} }, slot_fill_fill: function(assert){ var ins = this.slot_fill(assert).code.slice(0, -1) return {code: [ ...ins.map(function(e){ return e + '@slot(slot third)' }), ...ins.map(function(e){ return e + '' }), ...ins.map(function(e){ return e + 'third' }), 'third' ]} }, // XXX these are an alternative to ... slot_nested: function(assert){ return {code: [ '[[ ]]@slot(slot.content value)', '[[ value ]]' ]} }, slot_nested_overwrite: function(assert){ return {code: [ '[[ ]]@slot(slot value)', 'value' ]} }, /* XXX SHOWN_HIDDEN // XXX these need to be revised... // ...do we actually need hidden/shown??? // slot_shown: function(assert){ var ins = this.slot_value(assert) var expect = ins.pop() return {code: [ ...ins.map(function(i){ return i +' @slot(slot that shown)' }), 'that that' ]} }, slot_hidden: function(assert){ return {code: [ '