Index: /CKEditor/tests/tt/4252/4.html
===================================================================
--- /CKEditor/tests/tt/4252/4.html	(revision 4161)
+++ /CKEditor/tests/tt/4252/4.html	(revision 4161)
@@ -0,0 +1,86 @@
+<!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( {
+
+
+			/**
+			 * Test typing inside the editor.
+			 */
+			test_editor_type : function()
+			{
+				prepareEditor( 'playground', function( editor )
+				{
+					this.resume( function()
+					{
+						// Force result data unformatted.
+						editor.dataProcessor.writer._.rules = {};
+						editor.focus();
+						var doc = editor.document;
+						var range = new CKEDITOR.dom.range( doc );
+						range.setStart( doc.getById( 'p_1' ), 1 );
+						range.collapse();
+						range.select();
+						// shift-enter + enter
+						CKEDITOR.test.editor.type( editor, "(\r)\r" );
+						// Enter key need time to execute.
+						this.wait( function(){
+							assert.areSame( '<p id="p_1">test </p><p><span>typing</span></p>',
+								editor.getData() );
+						}, 500 );
+
+					} );
+				}, this );
+				this.wait();
+			}
+
+	} );
+} )();
+	</script>
+</head>
+<body style="padding-top:100px;">
+<textarea id="playground"><p id="p_1">test <span>typing</span></p></textarea>
+<textarea id="editor_data"></textarea>
+</body>
+</html>
