Index: /CKEditor/tests/tt/4252/1.html
===================================================================
--- /CKEditor/tests/tt/4252/1.html	(revision 4140)
+++ /CKEditor/tests/tt/4252/1.html	(revision 4140)
@@ -0,0 +1,137 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
+	"http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<head>
+	<title>Ticket: #4252</title>
+	<meta name="tags" content="editor,unit,all">
+	<script type="text/javascript" src="../../cktester/cell.js"></script>
+	<script>
+
+/**
+ * Load the editor and wait for fully interactable.
+ * @param {Object} elementId
+ * @param {Object} callback Continuation with {@param editor}.
+ * @param {Object} context
+ */
+function prepareEditor( elementId, callback, context )
+{
+	CKEDITOR.on( 'instanceReady',
+		function( evt )
+		{
+			callback.call( context, evt.editor );
+		}, this );
+	try
+	{
+		CKEDITOR.replace( elementId );
+	}
+	// Editor instance already existed, reuse it.
+	catch( er )
+	{
+		// Keep the async intrinsic. 
+		CKEDITOR.tools.setTimeout( callback, 0, context, CKEDITOR.instances[ elementId ] );
+	}
+}
+		
+( function()
+{
+	var assert = CKEDITOR.test.assert,
+		toolbarTools = CKEDITOR.test.toolbar;
+
+	CKEDITOR.test.addTestCase( {
+
+			/**
+			 * Click on a style button. 
+			 */
+			test_click_toolbar_style_button : function()
+			{
+				prepareEditor( 'playground', function( editor )
+				{
+					this.resume( function()
+					{
+						toolbarTools.clickButton( editor, 'Bold', function ()
+						{
+							this.resume( function()
+							{
+								var boldCommand = editor.getCommand( 'bold' );
+								assert.areSame( CKEDITOR.TRISTATE_ON, boldCommand.state );
+							} );
+						}, this );
+						this.wait();
+					} );
+				}, this );
+				this.wait();
+			},
+
+			/**
+			 * Click on a combo.
+			 */
+			test_click_toolbar_combo : function()
+			{
+				prepareEditor( 'playground', function( editor )
+				{
+					this.resume( function()
+					{
+						toolbarTools.clickButton( editor, 'Format', function ( combo )
+						{
+							this.resume( function()
+							{
+								assert.isTrue( !!combo._.panel.visible );
+							} );
+						}, this );
+						this.wait();
+					} );
+				}, this );
+				this.wait();
+			},
+
+			/**
+			 * Click on a panel button.
+			 */
+			test_click_toolbar_panel_button : function()
+			{
+				prepareEditor( 'playground', function( editor )
+				{
+					this.resume( function()
+					{
+						toolbarTools.clickButton( editor, 'TextColor', function ( colorbutton )
+						{
+							this.resume( function()
+							{
+								assert.isTrue( !!colorbutton._.panel.visible );
+							} );
+						}, this );
+						this.wait();
+					} );
+				}, this );
+				this.wait();
+			},
+
+			/**
+			 * Click on a dialog button.
+			 */
+			test_click_toolbar_dialog_button : function()
+			{
+				prepareEditor( 'playground', function( editor )
+				{
+					this.resume( function()
+					{
+						toolbarTools.clickButton( editor, 'Link', function ( dialog )
+						{
+							this.resume( function()
+							{
+								assert.isTrue( !!dialog._.element );
+							} );
+						}, this );
+						this.wait();
+					} );
+				}, this );
+				this.wait();
+			}
+	} );
+} )();
+	</script>
+</head>
+<body style="padding-top:100px;">
+<textarea id="playground"></textarea>
+</body>
+</html>
Index: /CKEditor/tests/tt/4252/2.html
===================================================================
--- /CKEditor/tests/tt/4252/2.html	(revision 4140)
+++ /CKEditor/tests/tt/4252/2.html	(revision 4140)
@@ -0,0 +1,97 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
+	"http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<head>
+	<title>Ticket: #4252</title>
+	<meta name="tags" content="editor,unit,all">
+	<script type="text/javascript" src="../../cktester/cell.js"></script>
+	<script>
+
+/**
+ * Load the editor and wait for fully interactable.
+ * @param {Object} elementId
+ * @param {Object} callback Continuation with {@param editor}.
+ * @param {Object} context
+ */
+function prepareEditor( elementId, callback, context )
+{
+	CKEDITOR.on( 'instanceReady',
+		function( evt )
+		{
+			callback.call( context, evt.editor );
+		}, this );
+	try
+	{
+		CKEDITOR.replace( elementId );
+	}
+	// Editor instance already existed, reuse it.
+	catch( er )
+	{
+		// Keep the async intrinsic. 
+		CKEDITOR.tools.setTimeout( callback, 0, context, CKEDITOR.instances[ elementId ] );
+	}
+}
+
+function getTextAreaValue( id )
+{
+	return CKEDITOR.document.getById( id ).getValue();
+}
+
+( function()
+{
+	var assert = CKEDITOR.test.assert,
+		toolbarTools = CKEDITOR.test.toolbar;
+
+	CKEDITOR.test.addTestCase( {
+
+			/**
+			 * Fill in certain fields of 'Image' dialog with values. 
+			 */
+			test_fill_image_dialog : function()
+			{
+				prepareEditor( 'playground', function( editor )
+				{
+					this.resume( function()
+					{
+						// Force result data unformatted.
+						editor.dataProcessor.writer._.rules = {};
+						editor.focus();
+						// Open dialog need some time.
+						editor.execCommand( 'image' );
+						this.wait( function()
+								{
+									var imageDialog = editor._.storedDialogs[ 'image' ];
+									
+									CKEDITOR.test.dialog.fill( imageDialog,
+									{
+									 info :
+									 {
+										  txtUrl : 'http://ckeditor.com/logos.gif'
+									 },
+									 Link :
+									 {
+										 txtUrl : 'http://ckeditor.com'
+									 },
+									 advanced :
+									 {
+										 linkId : 'link_id1',
+										 txtGenClass : 'cls'
+									 }
+									} );
+									assert.areEqual( getTextAreaValue( 'expected_result' ), editor.getData(),
+											'Insert Image result doesn\'t match.' );
+
+								}, 1000 );
+					} );
+				}, this );
+				this.wait();
+			}
+	} );
+} )();
+	</script>
+</head>
+<body style="padding-top:100px;">
+<textarea id="playground"></textarea>
+<textarea id="expected_result"><p><a href="http://ckeditor.com"><img alt="" class="cls" id="link_id1" src="http://ckeditor.com/logos.gif" /></a></p></textarea>
+</body>
+</html>
Index: Editor/tests/tt/4252/4252.html
===================================================================
--- /CKEditor/tests/tt/4252/4252.html	(revision 4139)
+++ 	(revision )
@@ -1,137 +1,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-	"http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-	<title>Ticket: #4252</title>
-	<meta name="tags" content="editor,unit,all">
-	<script type="text/javascript" src="../../cktester/cell.js"></script>
-	<script>
-
-/**
- * Load the editor and wait for fully interactable.
- * @param {Object} elementId
- * @param {Object} callback Continuation with {@param editor}.
- * @param {Object} context
- */
-function prepareEditor( elementId, callback, context )
-{
-	CKEDITOR.on( 'instanceReady',
-		function( evt )
-		{
-			callback.call( context, evt.editor );
-		}, this );
-	try
-	{
-		CKEDITOR.replace( elementId );
-	}
-	// Editor instance already existed, reuse it.
-	catch( er )
-	{
-		// Keep the async intrinsic. 
-		CKEDITOR.tools.setTimeout( callback, 0, context, CKEDITOR.instances[ elementId ] );
-	}
-}
-		
-( function()
-{
-	var assert = CKEDITOR.test.assert,
-		toolbarTools = CKEDITOR.test.toolbar;
-
-	CKEDITOR.test.addTestCase( {
-
-			/**
-			 * Click on a style button. 
-			 */
-			test_click_toolbar_style_button : function()
-			{
-				prepareEditor( 'playground', function( editor )
-				{
-					this.resume( function()
-					{
-						toolbarTools.clickButton( editor, 'Bold', function ()
-						{
-							this.resume( function()
-							{
-								var boldCommand = editor.getCommand( 'bold' );
-								assert.areSame( CKEDITOR.TRISTATE_ON, boldCommand.state );
-							} );
-						}, this );
-						this.wait();
-					} );
-				}, this );
-				this.wait();
-			},
-
-			/**
-			 * Click on a combo.
-			 */
-			test_click_toolbar_combo : function()
-			{
-				prepareEditor( 'playground', function( editor )
-				{
-					this.resume( function()
-					{
-						toolbarTools.clickButton( editor, 'Format', function ( combo )
-						{
-							this.resume( function()
-							{
-								assert.isTrue( !!combo._.panel.visible );
-							} );
-						}, this );
-						this.wait();
-					} );
-				}, this );
-				this.wait();
-			},
-
-			/**
-			 * Click on a panel button.
-			 */
-			test_click_toolbar_panel_button : function()
-			{
-				prepareEditor( 'playground', function( editor )
-				{
-					this.resume( function()
-					{
-						toolbarTools.clickButton( editor, 'TextColor', function ( colorbutton )
-						{
-							this.resume( function()
-							{
-								assert.isTrue( !!colorbutton._.panel.visible );
-							} );
-						}, this );
-						this.wait();
-					} );
-				}, this );
-				this.wait();
-			},
-
-			/**
-			 * Click on a dialog button.
-			 */
-			test_click_toolbar_dialog_button : function()
-			{
-				prepareEditor( 'playground', function( editor )
-				{
-					this.resume( function()
-					{
-						toolbarTools.clickButton( editor, 'Link', function ( dialog )
-						{
-							this.resume( function()
-							{
-								assert.isTrue( !!dialog._.element );
-							} );
-						}, this );
-						this.wait();
-					} );
-				}, this );
-				this.wait();
-			}
-	} );
-} )();
-	</script>
-</head>
-<body style="padding-top:100px;">
-<textarea id="playground"></textarea>
-</body>
-</html>
