package test.customLayoutList.testCase { import component.list.CustomLayoutList; import flash.events.TimerEvent; import flash.utils.Timer; import mx.core.IDataRenderer; import mx.core.UIComponent; import test.base.CustomTestCase; import test.customLayoutList.view.CustomLayoutListView; import test.customLayoutList.view.DataItem; public class TestFiltering extends CustomTestCase { private var testView : CustomLayoutListView; public function TestFiltering() { super(); } override protected function setUp() : void { testView = new CustomLayoutListView(); testView.filterCheckboxVisible = true; testView.addEventListener("filterChange", waitingHandler(pendUntilComplete), false, 0, true); addChild(testView); } override protected function tearDown() : void { removeChild(testView); testView = null; } [Test] public function switchFilterOn() : void { var timer : Timer = new Timer(CustomLayoutList.TWEEN_DURATION_SECONDS * 2000, 1); timer.addEventListener(TimerEvent.TIMER_COMPLETE, asyncHandler(handleLayoutTimerComplete, CustomLayoutList.TWEEN_DURATION_SECONDS * 2000 + 10), false, 0, true); timer.start(); } private function handleLayoutTimerComplete(e : TimerEvent, passthroughData : Object) : void { for each (var item : UIComponent in testView.list.listItems) { if (item.parent != null) { assertTrue(DataItem(IDataRenderer(item).data).isOdd); } else { assertFalse(DataItem(IDataRenderer(item).data).isOdd); } } } } }