Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
Merge branch 't/12805' into major
  • Loading branch information
Reinmar committed Feb 17, 2015
2 parents 10531dd + af97f26 commit 3bf82bb
Show file tree
Hide file tree
Showing 7 changed files with 165 additions and 0 deletions.
Binary file added tests/_assets/lena.jpg
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
16 changes: 16 additions & 0 deletions tests/plugins/uploadwidget/manual/__template__.html
@@ -0,0 +1,16 @@
<div style="display: none; text-align: center; color: red; font-weight: bold; padding: 20px;" id="ignore">
File uploading is not support on Internet Explorer 9 and below.
</div>
<textarea cols="80" id="editor1" name="editor1" rows="10">
&lt;h1&gt;Apollo 11&lt;/h1&gt; &lt;p&gt;&lt;b&gt;Apollo 11&lt;/b&gt; was the spaceflight that landed the first humans, Americans &lt;a href=&quot;http://en.wikipedia.org/wiki/Neil_Armstrong&quot; title=&quot;Neil Armstrong&quot;&gt;Neil Armstrong&lt;/a&gt; and &lt;a href=&quot;http://en.wikipedia.org/wiki/Buzz_Aldrin&quot; title=&quot;Buzz Aldrin&quot;&gt;Buzz Aldrin&lt;/a&gt;, on the Moon on July 20, 1969, at 20:18 UTC. Armstrong became the first to step onto the lunar surface 6 hours later on July 21 at 02:56 UTC.&lt;/p&gt; &lt;p&gt;Armstrong spent about &lt;s&gt;three and a half&lt;/s&gt; two and a half hours outside the spacecraft, Aldrin slightly less; and together they collected 47.5 pounds (21.5&amp;nbsp;kg) of lunar material for return to Earth. A third member of the mission, &lt;a href=&quot;http://en.wikipedia.org/wiki/Michael_Collins_(astronaut)&quot; title=&quot;Michael Collins (astronaut)&quot;&gt;Michael Collins&lt;/a&gt;, piloted the &lt;a href=&quot;http://en.wikipedia.org/wiki/Apollo_Command/Service_Module&quot; title=&quot;Apollo Command/Service Module&quot;&gt;command&lt;/a&gt; spacecraft alone in lunar orbit until Armstrong and Aldrin returned to it for the trip back to Earth.&lt;/p&gt; &lt;h2&gt;Broadcasting and &lt;em&gt;quotes&lt;/em&gt; &lt;a id=&quot;quotes&quot; name=&quot;quotes&quot;&gt;&lt;/a&gt;&lt;/h2&gt; &lt;p&gt;Broadcast on live TV to a world-wide audience, Armstrong stepped onto the lunar surface and described the event as:&lt;/p&gt; &lt;blockquote&gt;&lt;p&gt;One small step for [a] man, one giant leap for mankind.&lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;Apollo 11 effectively ended the &lt;a href=&quot;http://en.wikipedia.org/wiki/Space_Race&quot; title=&quot;Space Race&quot;&gt;Space Race&lt;/a&gt; and fulfilled a national goal proposed in 1961 by the late U.S. President &lt;a href=&quot;http://en.wikipedia.org/wiki/John_F._Kennedy&quot; title=&quot;John F. Kennedy&quot;&gt;John F. Kennedy&lt;/a&gt; in a speech before the United States Congress:&lt;/p&gt; &lt;blockquote&gt;&lt;p&gt;[...] before this decade is out, of landing a man on the Moon and returning him safely to the Earth.&lt;/p&gt;&lt;/blockquote&gt; &lt;h2&gt;Technical details &lt;a id=&quot;tech-details&quot; name=&quot;tech-details&quot;&gt;&lt;/a&gt;&lt;/h2&gt; &lt;table align=&quot;right&quot; border=&quot;1&quot; bordercolor=&quot;#ccc&quot; cellpadding=&quot;5&quot; cellspacing=&quot;0&quot; style=&quot;border-collapse:collapse;margin:10px 0 10px 15px;&quot;&gt; &lt;caption&gt;&lt;strong&gt;Mission crew&lt;/strong&gt;&lt;/caption&gt; &lt;thead&gt; &lt;tr&gt; &lt;th scope=&quot;col&quot;&gt;Position&lt;/th&gt; &lt;th scope=&quot;col&quot;&gt;Astronaut&lt;/th&gt; &lt;/tr&gt; &lt;/thead&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;Commander&lt;/td&gt; &lt;td&gt;Neil A. Armstrong&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Command Module Pilot&lt;/td&gt; &lt;td&gt;Michael Collins&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Lunar Module Pilot&lt;/td&gt; &lt;td&gt;Edwin &amp;quot;Buzz&amp;quot; E. Aldrin, Jr.&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;p&gt;Launched by a &lt;strong&gt;Saturn V&lt;/strong&gt; rocket from &lt;a href=&quot;http://en.wikipedia.org/wiki/Kennedy_Space_Center&quot; title=&quot;Kennedy Space Center&quot;&gt;Kennedy Space Center&lt;/a&gt; in Merritt Island, Florida on July 16, Apollo 11 was the fifth manned mission of &lt;a href=&quot;http://en.wikipedia.org/wiki/NASA&quot; title=&quot;NASA&quot;&gt;NASA&lt;/a&gt;&amp;#39;s Apollo program. The Apollo spacecraft had three parts:&lt;/p&gt; &lt;ol&gt; &lt;li&gt;&lt;strong&gt;Command Module&lt;/strong&gt; with a cabin for the three astronauts which was the only part which landed back on Earth&lt;/li&gt; &lt;li&gt;&lt;strong&gt;Service Module&lt;/strong&gt; which supported the Command Module with propulsion, electrical power, oxygen and water&lt;/li&gt; &lt;li&gt;&lt;strong&gt;Lunar Module&lt;/strong&gt; for landing on the Moon.&lt;/li&gt; &lt;/ol&gt; &lt;p&gt;After being sent to the Moon by the Saturn V&amp;#39;s upper stage, the astronauts separated the spacecraft from it and travelled for three days until they entered into lunar orbit. Armstrong and Aldrin then moved into the Lunar Module and landed in the &lt;a href=&quot;http://en.wikipedia.org/wiki/Mare_Tranquillitatis&quot; title=&quot;Mare Tranquillitatis&quot;&gt;Sea of Tranquility&lt;/a&gt;. They stayed a total of about 21 and a half hours on the lunar surface. After lifting off in the upper part of the Lunar Module and rejoining Collins in the Command Module, they returned to Earth and landed in the &lt;a href=&quot;http://en.wikipedia.org/wiki/Pacific_Ocean&quot; title=&quot;Pacific Ocean&quot;&gt;Pacific Ocean&lt;/a&gt; on July 24.&lt;/p&gt; &lt;hr/&gt; &lt;p style=&quot;text-align: right;&quot;&gt;&lt;small&gt;Source: &lt;a href=&quot;http://en.wikipedia.org/wiki/Apollo_11&quot;&gt;Wikipedia.org&lt;/a&gt;&lt;/small&gt;&lt;/p&gt;
</textarea>
<script>
var editor = CKEDITOR.replace( 'editor1', {
height: 400,
imageUploadUrl: '%BASE_PATH%'
} );

if ( CKEDITOR.env.ie && CKEDITOR.env.version < 10 ) {
document.getElementById( 'ignore' ).style.display = 'block';
}
</script>
60 changes: 60 additions & 0 deletions tests/plugins/uploadwidget/manual/_helpers/xhr.js
@@ -0,0 +1,60 @@
/**
* @license Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved.
* For licensing, see LICENSE.md or http://ckeditor.com/license
*/

'use strict';

// Mock the real XMLHttpRequest so the upload test may work locally.

window.XMLHttpRequest = function() {
var basePath = bender.config.tests[ bender.testData.group ].basePath;

return {
open: function() {},

send: function() {
var total = 10259,
loaded = 0,
step = Math.round( total / 10 ),
xhr = this,
onprogress = this.onprogress,
onload = this.onload,
interval;

// Wait 400 ms for every step.
interval = setInterval( function() {
// Add data to 'loaded' counter.
loaded += step;
if ( loaded > total ) {
loaded = total;
}

// If file is not loaded call onprogress.
if ( loaded < total ) {
onprogress( { loaded: loaded } );
}
// If file is loaded call onload.
else {
clearInterval( interval );
xhr.status = 200;
xhr.responseText = JSON.stringify( {
fileName: 'smallmoon (another copy)(20).JPG',
uploaded: 1,
url: '\/' + basePath + '_assets\/lena.jpg',
error: {
number: 201,
message: ''
}
} );
onload();
}
}, 400 );
},

// Abort should call onabort.
abort: function() {
this.onabort();
}
};
};
48 changes: 48 additions & 0 deletions tests/plugins/uploadwidget/manual/_helpers/xhrerror.js
@@ -0,0 +1,48 @@
/**
* @license Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved.
* For licensing, see LICENSE.md or http://ckeditor.com/license
*/

'use strict';

// Mock the real XMLHttpRequest so the upload test may show the effect of an error during upload.

window.XMLHttpRequest = function() {
return {
open: function() {},

send: function() {
// Total file size.
var total = 10259,
loaded = 0,
step = Math.round( total / 10 ),
onprogress = this.onprogress,
onerror = this.onerror,
interval;

// Wait 400 ms for every step.
interval = setInterval( function() {
// Add data to 'loaded' counter.
loaded += step;
if ( loaded > total ) {
loaded = total;
}

// If less then 50% of file is loaded call onprogress.
if ( loaded < total / 2 ) {
onprogress( { loaded: loaded } );
}
// If 50% of file is loaded call onerror and stop loading.
else {
clearInterval( interval );
onerror();
}
}, 400 );
},

// Abort should call onabort.
abort: function() {
this.onabort();
}
};
};
11 changes: 11 additions & 0 deletions tests/plugins/uploadwidget/manual/error.md
@@ -0,0 +1,11 @@
@bender-tags: 4.5.0,tc,clipboard,widget,filetools
@bender-ui: collapsed
@bender-ckeditor-plugins: wysiwygarea, toolbar, undo, uploadwidget, basicstyles, image2, uploadimage, font, stylescombo, basicstyles, format, maximize, blockquote, list, table, resize, elementspath, justify
@bender-include: _helpers/xhrerror.js

This test emulates an error during upload. When upload hits 50% an error occurs.

* Drop an image.
* Check if `upload widget` is displayed.
* Check if image is removed after it reaches 50% of progress and no artifacts left.
* Check if you see a message about the error.
15 changes: 15 additions & 0 deletions tests/plugins/uploadwidget/manual/image.md
@@ -0,0 +1,15 @@
@bender-tags: clipboard, widget, filetools
@bender-ui: collapsed
@bender-ckeditor-plugins: wysiwygarea, toolbar, undo, uploadwidget, basicstyles, image, uploadimage, font, stylescombo, basicstyles, format, maximize, blockquote, list, table, resize, elementspath, justify
@bender-include: _helpers/xhr.js

Test if photo uploading works properly:

* Dropped image should be replaced by a temporary `upload widget` and by the final image (`image` plugin) when upload is done.
* `jpg`, `png` and `gif` files should be supported.
* Undo and redo during and after upload should work fine.
* It should be possible to format text and copy image during upload.
* If image is removed during upload, the process should be aborted.
* Check if you see a message about the progress, success and abort.

**Note:** This test use upload mock which will show you *Lena* instead of the real uploaded image.
15 changes: 15 additions & 0 deletions tests/plugins/uploadwidget/manual/image2.md
@@ -0,0 +1,15 @@
@bender-tags: 4.5.0, tc, clipboard, widget, filetools
@bender-ui: collapsed
@bender-ckeditor-plugins: wysiwygarea, toolbar, undo, uploadwidget, basicstyles, image2, uploadimage, font, stylescombo, basicstyles, format, maximize, blockquote, list, table, resize, elementspath, justify
@bender-include: _helpers/xhr.js

Test if photo uploading works properly:

* Dropped image should be replaced by a temporary `upload widget` and by the final image (`image2` plugin) when upload is dome.
* `jpg`, `png` and `gif` files should be supported.
* Undo and redo during and after upload should work fine.
* It should be possible to format text and copy image during upload.
* If image is removed during upload, the process should be aborted.
* Check if you see a message about the progress, success and abort.

**Note:** This test use upload mock which will show you *Lena* instead of the real uploaded image.

0 comments on commit 3bf82bb

Please sign in to comment.