| <?xml version="1.0" encoding="utf-8"?> |
| <!-- |
| |
| Licensed to the Apache Software Foundation (ASF) under one or more |
| contributor license agreements. See the NOTICE file distributed with |
| this work for additional information regarding copyright ownership. |
| The ASF licenses this file to You under the Apache License, Version 2.0 |
| (the "License"); you may not use this file except in compliance with |
| the License. You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
| |
| --> |
| <UnitTester testDir="containers/TitleWindow/Events/" xmlns:mx="http://www.adobe.com/2006/mxml" xmlns="*" testSWF="TitleWindow_Basic.mxml"> |
| |
| <!-- this set of lines form a template that must be in each unit test --> |
| <mx:Script> |
| <![CDATA[ |
| import mx.managers.SystemManager; |
| import mx.events.CloseEvent; |
| import mx.controls.Button; |
| |
| public static function init(o:DisplayObject):void |
| { |
| |
| } |
| |
| public function addAButton(i:int, tileName:int):void |
| { |
| var newButton:Button = new Button(); |
| newButton.label = "new button"; |
| if(tileName==1) |
| { |
| application.myTW.addChildAt(newButton, i); |
| } |
| else |
| { |
| application.tw.addChild(newButton); |
| } |
| } |
| |
| ]]> |
| </mx:Script> |
| <mx:Metadata> |
| <![CDATA[ |
| [Mixin] |
| ]]> |
| </mx:Metadata> |
| <!-- end of set of lines that must be in each unit test --> |
| |
| <testCases> |
| <!-- childAdd --> |
| <TestCase testID="childAdd_atZero" description="Check that childAdd is triggered after adding a component to an empty TitleWindow" keywords="[childAdd, TitleWindow]"> |
| <setup> |
| <ResetComponent target="tw" className="mx.containers.TitleWindow" waitTarget="tw" waitEvent="updateComplete" /> |
| </setup> |
| <body> |
| <RunCode code="addAButton(0,0)" waitTarget="tw" waitEvent="updateComplete" /> |
| <AssertEvent target="tw" eventName="childAdd" eventClass="mx.events::ChildExistenceChangedEvent" /> |
| </body> |
| </TestCase> |
| <TestCase testID="childAdd_middle" description="Check that childAdd is triggered after adding a component to middle of a TitleWindow" keywords="[childAdd, TitleWindow]"> |
| <setup> |
| <ResetComponent target="myTW" className="MyTw" waitTarget="myTW" waitEvent="updateComplete" /> |
| </setup> |
| <body> |
| <RunCode code="addAButton(3,1)" waitTarget="myTW" waitEvent="updateComplete" /> |
| <AssertEvent target="myTW" eventName="childAdd" eventClass="mx.events::ChildExistenceChangedEvent" /> |
| </body> |
| </TestCase> |
| <TestCase testID="childAdd_atEnd" description="Check that childAdd is triggered after adding a component to end of a TitleWindow" keywords="[childAdd, TitleWindow]"> |
| <setup> |
| <ResetComponent target="myTW" className="MyTw" waitTarget="myTW" waitEvent="updateComplete" /> |
| </setup> |
| <body> |
| <RunCode code="addAButton(7,1)" waitTarget="myTW" waitEvent="updateComplete" /> |
| <AssertEvent target="myTW" eventName="childAdd" eventClass="mx.events::ChildExistenceChangedEvent" /> |
| </body> |
| </TestCase> |
| <TestCase testID="childAdd_afterRemove" description="Check that childAdd is triggered after removing a component and then adding one" keywords="[childAdd, TitleWindow]"> |
| <setup> |
| <ResetComponent target="myTW" className="MyTw" waitTarget="myTW" waitEvent="updateComplete" /> |
| </setup> |
| <body> |
| <RunCode code="application.myTW.removeChildAt(2)" waitTarget="myTW" waitEvent="updateComplete" /> |
| <RunCode code="addAButton(2,1)" waitTarget="myTW" waitEvent="updateComplete" /> |
| <AssertEvent target="myTW" eventName="childAdd" eventClass="mx.events::ChildExistenceChangedEvent" /> |
| </body> |
| </TestCase> |
| <!-- childRemove --> |
| <TestCase testID="childRemove_atZero" description="Check that childRemove is triggered after removing the last component of a TitleWindow" keywords="[childRemove, TitleWindow]"> |
| <setup> |
| <ResetComponent target="tw" className="mx.containers.TitleWindow" waitTarget="tw" waitEvent="updateComplete" /> |
| </setup> |
| <body> |
| <RunCode code="addAButton(0,0)" waitTarget="tw" waitEvent="updateComplete" /> |
| <RunCode code="application.tw.removeChildAt(0)" waitTarget="tw" waitEvent="updateComplete" /> |
| <AssertEvent target="tw" eventName="childRemove" eventClass="mx.events::ChildExistenceChangedEvent" /> |
| </body> |
| </TestCase> |
| <TestCase testID="childRemove_middle" description="Check that childRemove is triggered after removing a component in the middle of a TitleWindow" keywords="[childRemove, TitleWindow]"> |
| <setup> |
| <ResetComponent target="myTW" className="MyTw" waitTarget="myTW" waitEvent="updateComplete" /> |
| </setup> |
| <body> |
| <RunCode code="application.myTW.removeChildAt(3)" waitTarget="myTW" waitEvent="updateComplete" /> |
| <AssertEvent target="myTW" eventName="childRemove" eventClass="mx.events::ChildExistenceChangedEvent" /> |
| </body> |
| </TestCase> |
| <TestCase testID="childRemove_atEnd" description="Check that childRemove is triggered after removing a component at the end of a TitleWindow" keywords="[childRemove, TitleWindow]"> |
| <setup> |
| <ResetComponent target="myTW" className="MyTw" waitTarget="myTW" waitEvent="updateComplete" /> |
| </setup> |
| <body> |
| <RunCode code="application.myTW.removeChildAt(6)" waitTarget="myTW" waitEvent="updateComplete" /> |
| <AssertEvent target="myTW" eventName="childRemove" eventClass="mx.events::ChildExistenceChangedEvent" /> |
| </body> |
| </TestCase> |
| <TestCase testID="childRemove_afterAdd" description="Check that childRemove is triggered after adding a component and then removing one" keywords="[childRemove, TitleWindow]"> |
| <setup> |
| <ResetComponent target="myTW" className="MyTw" waitTarget="myTW" waitEvent="updateComplete" /> |
| </setup> |
| <body> |
| <RunCode code="addAButton(2,1)" waitTarget="myTW" waitEvent="updateComplete" /> |
| <RunCode code="application.myTW.removeChildAt(2)" waitTarget="myTW" waitEvent="updateComplete" /> |
| <AssertEvent target="myTW" eventName="childRemove" eventClass="mx.events::ChildExistenceChangedEvent" /> |
| </body> |
| </TestCase> |
| <!-- childIndexChange --> |
| <TestCase testID="childIndexChange_atZero" description="Check that childIndexChange is triggered after calling setChildIndex on the first component of a TitleWindow" keywords="[childIndexChange, TitleWindow]"> |
| <setup> |
| <ResetComponent target="tw" className="mx.containers.TitleWindow" waitTarget="tw" waitEvent="updateComplete" /> |
| </setup> |
| <body> |
| <RunCode code="addAButton(0,0)" waitTarget="tw" waitEvent="updateComplete" /> |
| <RunCode code="addAButton(0,0)" waitTarget="tw" waitEvent="updateComplete" /> |
| <RunCode code="application.tw.setChildIndex(application.tw.getChildAt(0),1)" waitTarget="tw" waitEvent="updateComplete" /> |
| <AssertEvent target="tw" eventName="childIndexChange" eventClass="mx.events::IndexChangedEvent" /> |
| </body> |
| </TestCase> |
| <TestCase testID="childIndexChange_middle" description="Check that childIndexChange is triggered after calling setChildIndex on a component in the middle of a TitleWindow" keywords="[childIndexChange, TitleWindow]"> |
| <setup> |
| <ResetComponent target="myTW" className="MyTw" waitTarget="myTW" waitEvent="updateComplete" /> |
| </setup> |
| <body> |
| <RunCode code="application.myTW.setChildIndex(application.myTW.getChildAt(3), 5)" waitTarget="myTW" waitEvent="updateComplete" /> |
| <AssertEvent target="myTW" eventName="childIndexChange" eventClass="mx.events::IndexChangedEvent" /> |
| </body> |
| </TestCase> |
| <TestCase testID="childIndexChange_atEnd" description="Check that childIndexChange is triggered after calling setChildIndex on a component at the end of a TitleWindow" keywords="[childIndexChange, TitleWindow]"> |
| <setup> |
| <ResetComponent target="myTW" className="MyTw" waitTarget="myTW" waitEvent="updateComplete" /> |
| </setup> |
| <body> |
| <RunCode code="application.myTW.setChildIndex(application.myTW.getChildAt(6), 0)" waitTarget="myTW" waitEvent="updateComplete" /> |
| <AssertEvent target="myTW" eventName="childIndexChange" eventClass="mx.events::IndexChangedEvent" /> |
| </body> |
| </TestCase> |
| <!-- scroll --> |
| <TestCase testID="scroll_keyBoardDown" description="Check that scroll event is triggered after when using the down arrow key on a TitleWindow" keywords="[scroll, TitleWindow]"> |
| <setup> |
| <ResetComponent target="myTW" className="MyTw" waitTarget="myTW" waitEvent="updateComplete" /> |
| </setup> |
| <body> |
| <SetProperty propertyName="width" value="120" target="myTW" /> |
| <SetProperty propertyName="height" value="140" target="myTW" waitTarget="myTW" waitEvent="updateComplete" /> |
| <DispatchKeyEvent keys="[TAB, TAB, DOWN, DOWN]" waitEvent="scroll" waitTarget="myTW" /> |
| <AssertEvent target="myTW" eventName="scroll" eventClass="mx.events::ScrollEvent" numExpectedEvents="2" /> |
| </body> |
| </TestCase> |
| <TestCase testID="scroll_keyBoardUp" description="Check that scroll event is triggered after using your up arrow to scroll in a TitleWindow" keywords="[scroll, TitleWindow]"> |
| <setup> |
| <ResetComponent target="myTW" className="MyTw" waitTarget="myTW" waitEvent="updateComplete" /> |
| </setup> |
| <body> |
| <SetProperty propertyName="width" value="120" target="myTW" /> |
| <SetProperty propertyName="height" value="140" target="myTW" /> |
| <SetProperty propertyName="verticalScrollPosition" value="10" waitTarget="myTW" waitEvent="updateComplete" /> |
| <DispatchKeyEvent keys="[TAB, TAB, UP]" waitEvent="scroll" waitTarget="myTW"/> |
| <AssertEvent target="myTW" eventName="scroll" eventClass="mx.events::ScrollEvent" /> |
| </body> |
| </TestCase> |
| <TestCase testID="scroll_keyboardRight" description="Check that scroll is triggered after pressing the right key to scroll in a TitleWindow" keywords="[scroll, TitleWindow]"> |
| <setup> |
| <ResetComponent target="myTW" className="MyTw" waitTarget="myTW" waitEvent="updateComplete" /> |
| </setup> |
| <body> |
| <SetProperty propertyName="width" value="220" target="myTW.button2" /> |
| <SetProperty propertyName="width" value="100" target="myTW" waitTarget="myTW" waitEvent="updateComplete" /> |
| <DispatchKeyEvent keys="[TAB, TAB, RIGHT]" waitEvent="scroll" waitTarget="myTW"/> |
| <AssertEvent target="myTW" eventName="scroll" eventClass="mx.events::ScrollEvent" /> |
| </body> |
| </TestCase> |
| <TestCase testID="scroll_keyboardLeft" description="Check that scroll is triggered after pressing the left key to scroll in a TitleWindow" keywords="[scroll, TitleWindow]"> |
| <setup> |
| <ResetComponent target="myTW" className="MyTw" waitTarget="myTW" waitEvent="updateComplete" /> |
| </setup> |
| <body> |
| <SetProperty propertyName="width" value="220" target="myTW.button2" /> |
| <SetProperty propertyName="width" value="100" target="myTW" /> |
| <SetProperty propertyName="horizontalScrollPosition" value="10" waitTarget="myTW" waitEvent="updateComplete" /> |
| <DispatchKeyEvent keys="[TAB, TAB, LEFT]" waitEvent="scroll" waitTarget="myTW"/> |
| <AssertEvent target="myTW" eventName="scroll" eventClass="mx.events::ScrollEvent" /> |
| </body> |
| </TestCase> |
| <TestCase testID="scroll_mouseOnHorizontal" description="Check that scroll is triggered after pressing the mouse on a horizontal scrollbar in a TitleWindow" keywords="[scroll, TitleWindow]"> |
| <setup> |
| <ResetComponent target="myTW" className="MyTw" waitTarget="myTW" waitEvent="updateComplete" /> |
| </setup> |
| <body> |
| <SetProperty propertyName="width" value="220" target="myTW.button2" /> |
| <SetProperty propertyName="width" value="100" target="myTW" waitTarget="myTW" waitEvent="updateComplete" /> |
| <DispatchMouseEvent type="mouseDown" target="myTW.rawChildren.getChildAt(3)" localX="6" localY="37" /> |
| <DispatchMouseEvent type="mouseUp" target="myTW.rawChildren.getChildAt(3)" localX="6" localY="37" /> |
| <AssertEvent target="myTW" eventName="scroll" eventClass="mx.events::ScrollEvent" /> |
| </body> |
| </TestCase> |
| |
| </testCases> |
| </UnitTester> |