You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@flex.apache.org by pi...@apache.org on 2015/03/22 19:26:16 UTC

[2/2] git commit: [flex-tlf] [refs/heads/develop] - Migrate HorizontalScrollingTest to FU 4 Move helper classes to separate folder

Migrate HorizontalScrollingTest to FU 4
Move helper classes to separate folder


Project: http://git-wip-us.apache.org/repos/asf/flex-tlf/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-tlf/commit/3f6abddf
Tree: http://git-wip-us.apache.org/repos/asf/flex-tlf/tree/3f6abddf
Diff: http://git-wip-us.apache.org/repos/asf/flex-tlf/diff/3f6abddf

Branch: refs/heads/develop
Commit: 3f6abddfb24d4c8f227485f45602e3f6bb769f28
Parents: 4538bda
Author: piotrz <pi...@gmail.com>
Authored: Sun Mar 22 19:26:03 2015 +0100
Committer: piotrz <pi...@gmail.com>
Committed: Sun Mar 22 19:26:03 2015 +0100

----------------------------------------------------------------------
 automation_tests/src/AllTestsSuite.as           |    2 +
 .../src/UnitTest/Helpers/ColumnBreak.as         |  124 ++
 .../UnitTest/Helpers/ColumnContainerBreak.as    |  148 ++
 .../src/UnitTest/Helpers/ContainerBreak.as      |  142 ++
 .../src/UnitTest/Tests/ColumnBreak.as           |  129 --
 .../src/UnitTest/Tests/ColumnContainerBreak.as  |  153 --
 .../UnitTest/Tests/ContainerAttributeTest.as    |    3 +
 .../src/UnitTest/Tests/ContainerBreak.as        |  147 --
 .../UnitTest/Tests/HorizontalScrollingTest.as   | 1813 ++++++++++--------
 9 files changed, 1416 insertions(+), 1245 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-tlf/blob/3f6abddf/automation_tests/src/AllTestsSuite.as
----------------------------------------------------------------------
diff --git a/automation_tests/src/AllTestsSuite.as b/automation_tests/src/AllTestsSuite.as
index 34569f2..0b186d5 100644
--- a/automation_tests/src/AllTestsSuite.as
+++ b/automation_tests/src/AllTestsSuite.as
@@ -37,6 +37,7 @@ package
     import UnitTest.Tests.FloatTest;
     import UnitTest.Tests.FlowModelTest;
     import UnitTest.Tests.GeneralFunctionsTest;
+    import UnitTest.Tests.HorizontalScrollingTest;
     import UnitTest.Tests.OperationTest;
     import UnitTest.Tests.ScrollingTest;
     import UnitTest.Tests.TabTest;
@@ -72,6 +73,7 @@ package
         public var undoRedoTest:UndoRedoTest;
         public var textFlowEditTest:TextFlowEditTest;
         public var tabTest:TabTest;
+        public var horizontalScrollingTest:HorizontalScrollingTest;
     }
 
 }

http://git-wip-us.apache.org/repos/asf/flex-tlf/blob/3f6abddf/automation_tests/src/UnitTest/Helpers/ColumnBreak.as
----------------------------------------------------------------------
diff --git a/automation_tests/src/UnitTest/Helpers/ColumnBreak.as b/automation_tests/src/UnitTest/Helpers/ColumnBreak.as
new file mode 100644
index 0000000..5debc41
--- /dev/null
+++ b/automation_tests/src/UnitTest/Helpers/ColumnBreak.as
@@ -0,0 +1,124 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package UnitTest.Helpers
+{
+    import flash.display.Sprite;
+    import flash.display.StageAlign;
+    import flash.display.StageScaleMode;
+
+    import flashx.textLayout.container.*;
+    import flashx.textLayout.elements.*;
+    import flashx.textLayout.formats.*;
+
+    [SWF(width="1200", height="400")]
+
+    public class ColumnBreak extends Sprite
+    {
+        public var textFlow:TextFlow = new TextFlow();
+
+        public function ColumnBreak(columnWidth:int, textLayoutFmt1:TextLayoutFormat, textLayoutFmt2:TextLayoutFormat, textLayoutFmt3:TextLayoutFormat)
+        {
+            /*
+             TextFlow.hostFormat        -> textLayoutFormat
+             DivElement.format          -> autoFmt
+             ListElement.format         -> alwaysFmt
+             ListItemElement123.format  -> inheritFmt
+             ParagraphElement123.format -> inheritFmt
+
+             TextFlow.addController -> Sprite123(container123)
+
+             TextFlow -> ListElement -> ListItemElement123 -> ParagraphElement123 -> span123 -> string123
+             */
+
+            var para1String:String = "STR1CBB " + textLayoutFmt1.columnBreakBefore
+                    + "CBA " + textLayoutFmt1.columnBreakAfter;
+            var para2String:String = "STR2CBB " + textLayoutFmt2.columnBreakBefore
+                    + "CBA " + textLayoutFmt2.columnBreakAfter;
+            var para3String:String = "STR3CBB " + textLayoutFmt3.columnBreakBefore
+                    + "CBA " + textLayoutFmt3.columnBreakAfter;
+
+
+            var listElement:ListElement = new ListElement();
+            var listItemElement1:ListItemElement = new ListItemElement();
+            var listItemElement2:ListItemElement = new ListItemElement();
+            var listItemElement3:ListItemElement = new ListItemElement();
+
+            var paragraph1:ParagraphElement = new ParagraphElement();
+            var paragraph2:ParagraphElement = new ParagraphElement();
+            var paragraph3:ParagraphElement = new ParagraphElement();
+
+            var spanElement:SpanElement = new SpanElement();
+            spanElement.text = para1String;
+            paragraph1.addChild(spanElement);
+
+            spanElement = new SpanElement();
+            spanElement.text = para2String;
+            paragraph2.addChild(spanElement);
+
+            spanElement = new SpanElement();
+            spanElement.text = para3String;
+            paragraph3.addChild(spanElement);
+
+
+            listItemElement1.addChild(paragraph1);
+            listItemElement2.addChild(paragraph2);
+            listItemElement3.addChild(paragraph3);
+            listElement.addChild(listItemElement1);
+            listElement.addChild(listItemElement2);
+            listElement.addChild(listItemElement3);
+
+            textFlow.addChild(listElement);
+
+            var textLayoutFormat:TextLayoutFormat = new TextLayoutFormat();
+            textLayoutFormat.fontSize = 12;
+            textLayoutFormat.textIndent = 10;
+            textLayoutFormat.paragraphSpaceAfter = 5;
+            textLayoutFormat.columnCount = 3;
+            textLayoutFormat.fontFamily = "Arial";
+            textFlow.hostFormat = textLayoutFormat;
+
+            paragraph1.format = textLayoutFmt1;
+            paragraph2.format = textLayoutFmt2;
+            paragraph3.format = textLayoutFmt3;
+
+            if (stage)
+            {
+                stage.align = StageAlign.TOP_LEFT;
+                stage.scaleMode = StageScaleMode.NO_SCALE;
+            }
+
+            var sprite1:Sprite = new Sprite();
+            var sprite2:Sprite = new Sprite();
+            var sprite3:Sprite = new Sprite();
+
+            addChild(sprite1);
+
+            textFlow.flowComposer.addController(new ContainerController(sprite1, columnWidth, columnWidth));
+            sprite1.graphics.beginFill(0xf0f0a0);
+            sprite1.graphics.drawRect(0, 0, columnWidth, columnWidth);
+            sprite1.graphics.endFill();
+            sprite1.x = 0;
+            sprite1.y = 0;
+
+            textFlow.flowComposer.updateAllControllers();
+
+        }
+
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-tlf/blob/3f6abddf/automation_tests/src/UnitTest/Helpers/ColumnContainerBreak.as
----------------------------------------------------------------------
diff --git a/automation_tests/src/UnitTest/Helpers/ColumnContainerBreak.as b/automation_tests/src/UnitTest/Helpers/ColumnContainerBreak.as
new file mode 100644
index 0000000..cadb565
--- /dev/null
+++ b/automation_tests/src/UnitTest/Helpers/ColumnContainerBreak.as
@@ -0,0 +1,148 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package UnitTest.Helpers
+{
+    import flash.display.Sprite;
+    import flash.display.StageAlign;
+    import flash.display.StageScaleMode;
+
+    import flashx.textLayout.container.*;
+    import flashx.textLayout.elements.*;
+    import flashx.textLayout.formats.*;
+
+    [SWF(width="1200", height="500")]
+
+    public class ColumnContainerBreak extends Sprite
+    {
+        public var textFlow:TextFlow = new TextFlow();
+
+        public function ColumnContainerBreak(columnWidth:int, textLayoutFmt1:TextLayoutFormat, textLayoutFmt2:TextLayoutFormat, textLayoutFmt3:TextLayoutFormat)
+        {
+            /*
+             TextFlow.hostFormat        -> textLayoutFormat
+             DivElement.format          -> autoFmt
+             ListElement.format         -> alwaysFmt
+             ListItemElement123.format  -> inheritFmt
+             ParagraphElement123.format -> inheritFmt
+
+             TextFlow.addController -> Sprite123(container123)
+
+             TextFlow -> ListElement -> ListItemElement123 -> ParagraphElement123
+             */
+
+            var para1String:String = "STR1ColBB " + textLayoutFmt1.columnBreakBefore
+                    + "ColBA " + textLayoutFmt1.columnBreakAfter
+                    + "ConBB " + textLayoutFmt1.containerBreakBefore
+                    + "ConBA " + textLayoutFmt1.containerBreakAfter;
+            var para2String:String = "STR2ColBB " + textLayoutFmt2.columnBreakBefore
+                    + "ColBA " + textLayoutFmt2.columnBreakAfter
+                    + "ConBB " + textLayoutFmt2.containerBreakBefore
+                    + "ConBA " + textLayoutFmt2.containerBreakAfter;
+            var para3String:String = "STR3ColBB " + textLayoutFmt3.columnBreakBefore
+                    + "ColBA " + textLayoutFmt3.columnBreakAfter
+                    + "ConBB " + textLayoutFmt3.containerBreakBefore
+                    + "ConBA " + textLayoutFmt3.containerBreakAfter;
+
+
+            var listElement:ListElement = new ListElement();
+            var listItemElement1:ListItemElement = new ListItemElement();
+            var listItemElement2:ListItemElement = new ListItemElement();
+            var listItemElement3:ListItemElement = new ListItemElement();
+
+            var paragraph1:ParagraphElement = new ParagraphElement();
+            var paragraph2:ParagraphElement = new ParagraphElement();
+            var paragraph3:ParagraphElement = new ParagraphElement();
+
+            var spanElement:SpanElement = new SpanElement();
+
+            spanElement.text = para1String;
+            paragraph1.addChild(spanElement);
+
+            spanElement = new SpanElement();
+            spanElement.text = para2String;
+            paragraph2.addChild(spanElement);
+
+            spanElement = new SpanElement();
+            spanElement.text = para3String;
+            paragraph3.addChild(spanElement);
+
+
+            listItemElement1.addChild(paragraph1);
+            listItemElement2.addChild(paragraph2);
+            listItemElement3.addChild(paragraph3);
+            listElement.addChild(listItemElement1);
+            listElement.addChild(listItemElement2);
+            listElement.addChild(listItemElement3);
+
+            textFlow.addChild(listElement);
+
+            var textLayoutFormat:TextLayoutFormat = new TextLayoutFormat();
+            textLayoutFormat.fontSize = 12;
+            textLayoutFormat.textIndent = 10;
+            textLayoutFormat.paragraphSpaceAfter = 5;
+            textLayoutFormat.columnCount = 3;
+            textLayoutFormat.fontFamily = "Arial";
+            textFlow.hostFormat = textLayoutFormat;
+
+            paragraph1.format = textLayoutFmt1;
+            paragraph2.format = textLayoutFmt2;
+            paragraph3.format = textLayoutFmt3;
+
+            if (stage)
+            {
+                stage.align = StageAlign.TOP_LEFT;
+                stage.scaleMode = StageScaleMode.NO_SCALE;
+            }
+
+            var sprite1:Sprite = new Sprite();
+            var sprite2:Sprite = new Sprite();
+            var sprite3:Sprite = new Sprite();
+
+            addChild(sprite1);
+            addChild(sprite2);
+            addChild(sprite3);
+
+            textFlow.flowComposer.addController(new ContainerController(sprite1, columnWidth, columnWidth));
+            sprite1.graphics.beginFill(0xf0f0a0);
+            sprite1.graphics.drawRect(0, 0, columnWidth, columnWidth);
+            sprite1.graphics.endFill();
+            sprite1.x = 0;
+            sprite1.y = 0;
+
+            textFlow.flowComposer.addController(new ContainerController(sprite2, columnWidth, columnWidth));
+            sprite2.graphics.beginFill(0xa0d0f0);
+            sprite2.graphics.drawRect(0, 0, columnWidth, columnWidth);
+            sprite2.graphics.endFill();
+            sprite2.x = sprite1.x + sprite1.width;
+            sprite2.y = 0;
+
+            textFlow.flowComposer.addController(new ContainerController(sprite3, columnWidth, columnWidth));
+            sprite3.graphics.beginFill(0xf0d0d0);
+            sprite3.graphics.drawRect(0, 0, columnWidth, columnWidth);
+            sprite3.graphics.endFill();
+            sprite3.x = sprite2.x + sprite2.width;
+            sprite3.y = 0;
+
+            textFlow.flowComposer.updateAllControllers();
+
+        }
+
+
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-tlf/blob/3f6abddf/automation_tests/src/UnitTest/Helpers/ContainerBreak.as
----------------------------------------------------------------------
diff --git a/automation_tests/src/UnitTest/Helpers/ContainerBreak.as b/automation_tests/src/UnitTest/Helpers/ContainerBreak.as
new file mode 100644
index 0000000..3b67114
--- /dev/null
+++ b/automation_tests/src/UnitTest/Helpers/ContainerBreak.as
@@ -0,0 +1,142 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package UnitTest.Helpers
+{
+    import flash.display.Sprite;
+    import flash.display.StageAlign;
+    import flash.display.StageScaleMode;
+
+    import flashx.textLayout.container.*;
+    import flashx.textLayout.elements.*;
+    import flashx.textLayout.formats.*;
+
+    [SWF(width="1200", height="400")]
+
+    public class ContainerBreak extends Sprite
+    {
+        public var textFlow:TextFlow = new TextFlow();
+
+        public function ContainerBreak(containerWidth:int, textLayoutFmt1:TextLayoutFormat, textLayoutFmt2:TextLayoutFormat, textLayoutFmt3:TextLayoutFormat)
+        {
+            /*
+             TextFlow.hostFormat        -> textLayoutFormat
+             DivElement.format          -> autoFmt
+             ListElement.format         -> alwaysFmt
+             ListItemElement123.format  -> inheritFmt
+             ParagraphElement123.format -> inheritFmt
+
+             TextFlow.addController -> Sprite123(container123)
+
+             TextFlow -> ListElement -> ListItemElement123 -> ParagraphElement123
+             */
+
+            var para1String:String = "STR1CBB " + textLayoutFmt1.containerBreakBefore
+                    + "CBA " + textLayoutFmt1.containerBreakAfter;
+            var para2String:String = "STR2CBB " + textLayoutFmt2.containerBreakBefore
+                    + "CBA " + textLayoutFmt2.containerBreakAfter;
+            var para3String:String = "STR3CBB " + textLayoutFmt3.containerBreakBefore
+                    + "CBA " + textLayoutFmt3.containerBreakAfter;
+
+
+            var listElement:ListElement = new ListElement();
+            var listItemElement1:ListItemElement = new ListItemElement();
+            var listItemElement2:ListItemElement = new ListItemElement();
+            var listItemElement3:ListItemElement = new ListItemElement();
+
+            var paragraph1:ParagraphElement = new ParagraphElement();
+            var paragraph2:ParagraphElement = new ParagraphElement();
+            var paragraph3:ParagraphElement = new ParagraphElement();
+
+            var spanElement:SpanElement = new SpanElement();
+
+            spanElement.text = para1String;
+            // add spans to first paragraph
+            paragraph1.addChild(spanElement);
+
+            spanElement = new SpanElement();
+            spanElement.text = para2String;
+            paragraph2.addChild(spanElement);
+
+            spanElement = new SpanElement();
+            spanElement.text = para3String;
+            paragraph3.addChild(spanElement);
+
+            listItemElement1.addChild(paragraph1);
+            listItemElement2.addChild(paragraph2);
+            listItemElement3.addChild(paragraph3);
+            listElement.addChild(listItemElement1);
+            listElement.addChild(listItemElement2);
+            listElement.addChild(listItemElement3);
+
+            textFlow.addChild(listElement);
+
+            var textLayoutFormat:TextLayoutFormat = new TextLayoutFormat();
+            textLayoutFormat.fontSize = 12;
+            textLayoutFormat.textIndent = 10;
+            textLayoutFormat.paragraphSpaceAfter = 5;
+            textLayoutFormat.columnCount = 1;
+            textLayoutFormat.columnWidth = containerWidth;
+            textLayoutFormat.fontFamily = "Arial";
+            textLayoutFormat.columnGap = 0;
+            textFlow.hostFormat = textLayoutFormat;
+
+            paragraph1.format = textLayoutFmt1;
+            paragraph2.format = textLayoutFmt2;
+            paragraph3.format = textLayoutFmt3;
+
+            if (stage)
+            {
+                stage.align = StageAlign.TOP_LEFT;
+                stage.scaleMode = StageScaleMode.NO_SCALE;
+            }
+
+            var sprite1:Sprite = new Sprite();
+            var sprite2:Sprite = new Sprite();
+            var sprite3:Sprite = new Sprite();
+
+            addChild(sprite1);
+            addChild(sprite2);
+            addChild(sprite3);
+
+            textFlow.flowComposer.addController(new ContainerController(sprite1, containerWidth, containerWidth));
+            sprite1.graphics.beginFill(0xf0f0a0);
+            sprite1.graphics.drawRect(0, 0, containerWidth, containerWidth);
+            sprite1.graphics.endFill();
+            sprite1.x = 0;
+            sprite1.y = 0;
+
+            textFlow.flowComposer.addController(new ContainerController(sprite2, containerWidth, containerWidth));
+            sprite2.graphics.beginFill(0xa0d0f0);
+            sprite2.graphics.drawRect(0, 0, containerWidth, containerWidth);
+            sprite2.graphics.endFill();
+            sprite2.x = sprite1.x + sprite1.width;
+            sprite2.y = 0;
+
+            textFlow.flowComposer.addController(new ContainerController(sprite3, containerWidth, containerWidth));
+            sprite3.graphics.beginFill(0xf0d0d0);
+            sprite3.graphics.drawRect(0, 0, containerWidth, containerWidth);
+            sprite3.graphics.endFill();
+            sprite3.x = sprite2.x + sprite2.width;
+            sprite3.y = 0;
+
+            textFlow.flowComposer.updateAllControllers();
+
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-tlf/blob/3f6abddf/automation_tests/src/UnitTest/Tests/ColumnBreak.as
----------------------------------------------------------------------
diff --git a/automation_tests/src/UnitTest/Tests/ColumnBreak.as b/automation_tests/src/UnitTest/Tests/ColumnBreak.as
deleted file mode 100644
index 560669d..0000000
--- a/automation_tests/src/UnitTest/Tests/ColumnBreak.as
+++ /dev/null
@@ -1,129 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package UnitTest.Tests
-{
-	import flash.display.Sprite;
-	import flash.display.StageAlign;
-	import flash.display.StageScaleMode;
-	import flash.events.Event;
-	
-	import flashx.textLayout.container.*;
-	import flashx.textLayout.elements.*;
-	import flashx.textLayout.elements.SpanElement;
-	import flashx.textLayout.events.TextLayoutEvent;
-	import flashx.textLayout.formats.*;
-	import flashx.textLayout.formats.BreakStyle;
-	
-
-	[SWF(width="1200", height="400")]
-
-	public class ColumnBreak extends Sprite 
-	{
-		public var textFlow:TextFlow = new TextFlow();
-		
-		public function ColumnBreak(columnWidth:int, textLayoutFmt1:TextLayoutFormat, textLayoutFmt2:TextLayoutFormat, textLayoutFmt3:TextLayoutFormat)
-		{
-			/*
-			TextFlow.hostFormat        -> textLayoutFormat
-			DivElement.format          -> autoFmt
-			ListElement.format         -> alwaysFmt
-			ListItemElement123.format  -> inheritFmt
-			ParagraphElement123.format -> inheritFmt
-			
-			TextFlow.addController -> Sprite123(container123)  
-			
-			TextFlow -> ListElement -> ListItemElement123 -> ParagraphElement123 -> span123 -> string123
-			*/
-			
-			var para1String:String = "STR1CBB " + textLayoutFmt1.columnBreakBefore 
-				+ "CBA " + textLayoutFmt1.columnBreakAfter;
-			var para2String:String = "STR2CBB " + textLayoutFmt2.columnBreakBefore 
-				+ "CBA " + textLayoutFmt2.columnBreakAfter;
-			var para3String:String = "STR3CBB " + textLayoutFmt3.columnBreakBefore 
-				+ "CBA " + textLayoutFmt3.columnBreakAfter;
-			
-			
-			var listElement:ListElement = new ListElement() ;
-			var listItemElement1:ListItemElement = new ListItemElement() ;
-			var listItemElement2:ListItemElement = new ListItemElement() ;
-			var listItemElement3:ListItemElement = new ListItemElement() ;
-			
-			var paragraph1:ParagraphElement = new ParagraphElement();
-			var paragraph2:ParagraphElement = new ParagraphElement();
-			var paragraph3:ParagraphElement = new ParagraphElement();
-			
-			var spanElement:SpanElement = new SpanElement();
-			spanElement.text = para1String;
-			paragraph1.addChild(spanElement);
-			
-			spanElement = new SpanElement() ;
-			spanElement.text = para2String;
-			paragraph2.addChild(spanElement) ;
-
-			spanElement = new SpanElement() ;
-			spanElement.text = para3String ;
-			paragraph3.addChild(spanElement) ;
-
-	
-			listItemElement1.addChild(paragraph1) ;
-			listItemElement2.addChild(paragraph2) ;
-			listItemElement3.addChild(paragraph3) ;
-			listElement.addChild(listItemElement1) ;
-			listElement.addChild(listItemElement2) ;
-			listElement.addChild(listItemElement3) ;
-			
-			textFlow.addChild(listElement) ;
-			
-			var textLayoutFormat:TextLayoutFormat = new TextLayoutFormat();
-			textLayoutFormat.fontSize = 12;
-			textLayoutFormat.textIndent = 10;
-			textLayoutFormat.paragraphSpaceAfter = 5;
-			textLayoutFormat.columnCount = 3 ;
-			textLayoutFormat.fontFamily="Arial" ;
-			textFlow.hostFormat = textLayoutFormat;
-
-			paragraph1.format = textLayoutFmt1 ;
-			paragraph2.format = textLayoutFmt2 ;
-			paragraph3.format = textLayoutFmt3 ;
-						
-			if (stage)
-			{
-				stage.align = StageAlign.TOP_LEFT;
-				stage.scaleMode = StageScaleMode.NO_SCALE;				
-			}
-			
-			var sprite1:Sprite = new Sprite() ;
-			var sprite2:Sprite = new Sprite() ;
-			var sprite3:Sprite = new Sprite() ;
-			
-			addChild(sprite1) ;
-			
-			textFlow.flowComposer.addController(new ContainerController(sprite1, columnWidth, columnWidth) );
-			sprite1.graphics.beginFill(0xf0f0a0) ;
-			sprite1.graphics.drawRect(0, 0, columnWidth, columnWidth) ;
-			sprite1.graphics.endFill() ;	
-			sprite1.x = 0 ;
-			sprite1.y = 0 ;
-			
-			textFlow.flowComposer.updateAllControllers() ;
-			
-		}
-		
-	}
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-tlf/blob/3f6abddf/automation_tests/src/UnitTest/Tests/ColumnContainerBreak.as
----------------------------------------------------------------------
diff --git a/automation_tests/src/UnitTest/Tests/ColumnContainerBreak.as b/automation_tests/src/UnitTest/Tests/ColumnContainerBreak.as
deleted file mode 100644
index 3ad3ef0..0000000
--- a/automation_tests/src/UnitTest/Tests/ColumnContainerBreak.as
+++ /dev/null
@@ -1,153 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package UnitTest.Tests
-{
-	import flash.display.Sprite;
-	import flash.display.StageAlign;
-	import flash.display.StageScaleMode;
-	import flash.events.Event;
-	
-	import flashx.textLayout.container.*;
-	import flashx.textLayout.elements.*;
-	import flashx.textLayout.elements.SpanElement;
-	import flashx.textLayout.events.TextLayoutEvent;
-	import flashx.textLayout.formats.*;
-	import flashx.textLayout.formats.BreakStyle;
-	
-
-	[SWF(width="1200", height="500")]
-
-	public class ColumnContainerBreak extends Sprite 
-	{
-		public var textFlow:TextFlow = new TextFlow();
-		
-		public function ColumnContainerBreak(columnWidth:int, textLayoutFmt1:TextLayoutFormat, textLayoutFmt2:TextLayoutFormat, textLayoutFmt3:TextLayoutFormat)
-		{
-			/*
-			TextFlow.hostFormat        -> textLayoutFormat
-			DivElement.format          -> autoFmt
-			ListElement.format         -> alwaysFmt
-			ListItemElement123.format  -> inheritFmt
-			ParagraphElement123.format -> inheritFmt
-			
-			TextFlow.addController -> Sprite123(container123)  
-			
-			TextFlow -> ListElement -> ListItemElement123 -> ParagraphElement123 
-			*/
-			
-			var para1String:String = "STR1ColBB " + textLayoutFmt1.columnBreakBefore 
-				+ "ColBA " + textLayoutFmt1.columnBreakAfter
-				+ "ConBB " + textLayoutFmt1.containerBreakBefore
-				+ "ConBA " + textLayoutFmt1.containerBreakAfter;
-			var para2String:String = "STR2ColBB " + textLayoutFmt2.columnBreakBefore 
-				+ "ColBA " + textLayoutFmt2.columnBreakAfter
-				+ "ConBB " + textLayoutFmt2.containerBreakBefore
-				+ "ConBA " + textLayoutFmt2.containerBreakAfter;
-			var para3String:String = "STR3ColBB " + textLayoutFmt3.columnBreakBefore 
-				+ "ColBA " + textLayoutFmt3.columnBreakAfter
-				+ "ConBB " + textLayoutFmt3.containerBreakBefore
-				+ "ConBA " + textLayoutFmt3.containerBreakAfter;
-			
-			
-			var listElement:ListElement = new ListElement() ;
-			var listItemElement1:ListItemElement = new ListItemElement() ;
-			var listItemElement2:ListItemElement = new ListItemElement() ;
-			var listItemElement3:ListItemElement = new ListItemElement() ;
-			
-			var paragraph1:ParagraphElement = new ParagraphElement();
-			var paragraph2:ParagraphElement = new ParagraphElement();
-			var paragraph3:ParagraphElement = new ParagraphElement();
-			
-			var spanElement:SpanElement = new SpanElement();
-			
-			spanElement.text = para1String;
-			paragraph1.addChild(spanElement);
-			
-			spanElement = new SpanElement() ;
-			spanElement.text = para2String;
-			paragraph2.addChild(spanElement) ;
-
-			spanElement = new SpanElement() ;
-			spanElement.text = para3String ;
-			paragraph3.addChild(spanElement) ;
-
-	
-			listItemElement1.addChild(paragraph1) ;
-			listItemElement2.addChild(paragraph2) ;
-			listItemElement3.addChild(paragraph3) ;
-			listElement.addChild(listItemElement1) ;
-			listElement.addChild(listItemElement2) ;
-			listElement.addChild(listItemElement3) ;
-			
-			textFlow.addChild(listElement) ;
-			
-			var textLayoutFormat:TextLayoutFormat = new TextLayoutFormat();
-			textLayoutFormat.fontSize = 12;
-			textLayoutFormat.textIndent = 10;
-			textLayoutFormat.paragraphSpaceAfter = 5;
-			textLayoutFormat.columnCount = 3 ;
-			textLayoutFormat.fontFamily="Arial" ;
-			textFlow.hostFormat = textLayoutFormat;
-
-			paragraph1.format = textLayoutFmt1 ;
-			paragraph2.format = textLayoutFmt2 ;
-			paragraph3.format = textLayoutFmt3 ;
-						
-			if (stage)
-			{
-				stage.align = StageAlign.TOP_LEFT;
-				stage.scaleMode = StageScaleMode.NO_SCALE;				
-			}
-			
-			var sprite1:Sprite = new Sprite() ;
-			var sprite2:Sprite = new Sprite() ;
-			var sprite3:Sprite = new Sprite() ;
-			
-			addChild(sprite1) ;
-			addChild(sprite2) ;
-			addChild(sprite3) ;
-			
-			textFlow.flowComposer.addController(new ContainerController(sprite1, columnWidth, columnWidth)) ;
-			sprite1.graphics.beginFill(0xf0f0a0) ;
-			sprite1.graphics.drawRect(0, 0, columnWidth, columnWidth) ;
-			sprite1.graphics.endFill() ;	
-			sprite1.x = 0 ;
-			sprite1.y = 0 ;
-
-			textFlow.flowComposer.addController(new ContainerController(sprite2, columnWidth, columnWidth)) ;
-			sprite2.graphics.beginFill(0xa0d0f0) ;
-			sprite2.graphics.drawRect(0, 0, columnWidth, columnWidth) ;
-			sprite2.graphics.endFill() ;	
-			sprite2.x = sprite1.x + sprite1.width ;
-			sprite2.y = 0 ;
-
-			textFlow.flowComposer.addController(new ContainerController(sprite3, columnWidth, columnWidth)) ;
-			sprite3.graphics.beginFill(0xf0d0d0) ;
-			sprite3.graphics.drawRect(0, 0, columnWidth, columnWidth) ;
-			sprite3.graphics.endFill() ;	
-			sprite3.x = sprite2.x + sprite2.width ;
-			sprite3.y = 0 ;
-			
-			textFlow.flowComposer.updateAllControllers() ;
-			
-		}
-		
-		
-	}
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-tlf/blob/3f6abddf/automation_tests/src/UnitTest/Tests/ContainerAttributeTest.as
----------------------------------------------------------------------
diff --git a/automation_tests/src/UnitTest/Tests/ContainerAttributeTest.as b/automation_tests/src/UnitTest/Tests/ContainerAttributeTest.as
index 30e2a39..bfd1916 100644
--- a/automation_tests/src/UnitTest/Tests/ContainerAttributeTest.as
+++ b/automation_tests/src/UnitTest/Tests/ContainerAttributeTest.as
@@ -22,6 +22,9 @@ package UnitTest.Tests
     import UnitTest.ExtendedClasses.VellumTestCase;
     import UnitTest.Fixtures.TestCaseVo;
     import UnitTest.Fixtures.TestConfig;
+    import UnitTest.Helpers.ColumnBreak;
+    import UnitTest.Helpers.ColumnContainerBreak;
+    import UnitTest.Helpers.ContainerBreak;
 
     import flash.display.BitmapData;
     import flash.display.DisplayObject;

http://git-wip-us.apache.org/repos/asf/flex-tlf/blob/3f6abddf/automation_tests/src/UnitTest/Tests/ContainerBreak.as
----------------------------------------------------------------------
diff --git a/automation_tests/src/UnitTest/Tests/ContainerBreak.as b/automation_tests/src/UnitTest/Tests/ContainerBreak.as
deleted file mode 100644
index 833be71..0000000
--- a/automation_tests/src/UnitTest/Tests/ContainerBreak.as
+++ /dev/null
@@ -1,147 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package UnitTest.Tests
-{
-	import flash.display.Sprite;
-	import flash.display.StageAlign;
-	import flash.display.StageScaleMode;
-	import flash.events.Event;
-	
-	import flashx.textLayout.container.*;
-	import flashx.textLayout.elements.*;
-	import flashx.textLayout.elements.SpanElement;
-	import flashx.textLayout.events.TextLayoutEvent;
-	import flashx.textLayout.formats.*;
-	import flashx.textLayout.formats.BreakStyle;
-	
-
-	[SWF(width="1200", height="400")]
-
-	public class ContainerBreak extends Sprite 
-	{
-		public var textFlow:TextFlow = new TextFlow();
-		
-		public function ContainerBreak(containerWidth:int, textLayoutFmt1:TextLayoutFormat, textLayoutFmt2:TextLayoutFormat, textLayoutFmt3:TextLayoutFormat)
-		{
-			/*
-			TextFlow.hostFormat        -> textLayoutFormat
-			DivElement.format          -> autoFmt
-			ListElement.format         -> alwaysFmt
-			ListItemElement123.format  -> inheritFmt
-			ParagraphElement123.format -> inheritFmt
-			
-			TextFlow.addController -> Sprite123(container123)  
-			
-			TextFlow -> ListElement -> ListItemElement123 -> ParagraphElement123 
-			*/
-			
-			var para1String:String = "STR1CBB " + textLayoutFmt1.containerBreakBefore 
-				+ "CBA " + textLayoutFmt1.containerBreakAfter;
-			var para2String:String = "STR2CBB " + textLayoutFmt2.containerBreakBefore 
-				+ "CBA " + textLayoutFmt2.containerBreakAfter;
-			var para3String:String = "STR3CBB " + textLayoutFmt3.containerBreakBefore 
-				+ "CBA " + textLayoutFmt3.containerBreakAfter;
-			
-			
-			var listElement:ListElement = new ListElement() ;
-			var listItemElement1:ListItemElement = new ListItemElement() ;
-			var listItemElement2:ListItemElement = new ListItemElement() ;
-			var listItemElement3:ListItemElement = new ListItemElement() ;
-			
-			var paragraph1:ParagraphElement = new ParagraphElement();
-			var paragraph2:ParagraphElement = new ParagraphElement();
-			var paragraph3:ParagraphElement = new ParagraphElement();
-			
-			var spanElement:SpanElement = new SpanElement();
-			
-			spanElement.text = para1String;
-			// add spans to first paragraph
-			paragraph1.addChild(spanElement);
-			
-			spanElement = new SpanElement() ;
-			spanElement.text = para2String;
-			paragraph2.addChild(spanElement) ;
-			
-			spanElement = new SpanElement() ;
-			spanElement.text = para3String ;
-			paragraph3.addChild(spanElement) ;
-			
-			listItemElement1.addChild(paragraph1) ;
-			listItemElement2.addChild(paragraph2) ;
-			listItemElement3.addChild(paragraph3) ;
-			listElement.addChild(listItemElement1) ;
-			listElement.addChild(listItemElement2) ;
-			listElement.addChild(listItemElement3) ;
-			
-			textFlow.addChild(listElement) ;
-			
-			var textLayoutFormat:TextLayoutFormat = new TextLayoutFormat();
-			textLayoutFormat.fontSize = 12;
-			textLayoutFormat.textIndent = 10;
-			textLayoutFormat.paragraphSpaceAfter = 5;
-			textLayoutFormat.columnCount = 1 ;
-			textLayoutFormat.columnWidth = containerWidth;
-			textLayoutFormat.fontFamily="Arial" ;
-			textLayoutFormat.columnGap = 0;
-			textFlow.hostFormat = textLayoutFormat;
-			
-			paragraph1.format = textLayoutFmt1 ;
-			paragraph2.format = textLayoutFmt2 ;
-			paragraph3.format = textLayoutFmt3 ;
-			
-			if (stage)
-			{
-				stage.align = StageAlign.TOP_LEFT;
-				stage.scaleMode = StageScaleMode.NO_SCALE;				
-			}
-			
-			var sprite1:Sprite = new Sprite() ;
-			var sprite2:Sprite = new Sprite() ;
-			var sprite3:Sprite = new Sprite() ;
-			
-			addChild(sprite1) ;
-			addChild(sprite2) ;
-			addChild(sprite3) ;
-			
-			textFlow.flowComposer.addController(new ContainerController(sprite1, containerWidth, containerWidth)) ;
-			sprite1.graphics.beginFill(0xf0f0a0) ;
-			sprite1.graphics.drawRect(0, 0, containerWidth, containerWidth) ;
-			sprite1.graphics.endFill() ;	
-			sprite1.x = 0 ;
-			sprite1.y = 0 ;
-			
-			textFlow.flowComposer.addController(new ContainerController(sprite2, containerWidth, containerWidth)) ;
-			sprite2.graphics.beginFill(0xa0d0f0) ;
-			sprite2.graphics.drawRect(0, 0, containerWidth, containerWidth) ;
-			sprite2.graphics.endFill() ;
-			sprite2.x = sprite1.x + sprite1.width ;
-			sprite2.y = 0 ;
-			
-			textFlow.flowComposer.addController(new ContainerController(sprite3, containerWidth, containerWidth)) ;
-			sprite3.graphics.beginFill(0xf0d0d0) ;
-			sprite3.graphics.drawRect(0, 0, containerWidth, containerWidth) ;
-			sprite3.graphics.endFill() ;	
-			sprite3.x = sprite2.x + sprite2.width ;
-			sprite3.y = 0 ;
-			
-			textFlow.flowComposer.updateAllControllers() ;
-			
-		}
-	}
-}
\ No newline at end of file